XMemcachedClient实例的add方法和set方法区别

采用超级电容设计的UPS不间断电源,用于掉电数据保存,可续航10-60秒 关键词:树莓派 CM4 UPS 不间断电源 掉电保存 超级电容 SuperCap 充电 升压 续航 10F 法拉电容 Mcuzone 野芯科技 概述:我们经常会遇到系统意外掉电的情况,对于一些可靠性要求很高的工业现场设备或者运行过程中有重要数据需要保存的平台就需要UPS电源了。常规的UPS采用后备锂电池设计,具备无缝切换、续航时间长、稳定可靠等特点,但同时也有价格过高、体积过大的缺点。对于不少仅需在检测到系统掉电后对数据进行保存即可的应用而言,这些标准的UPS电源就不太合适,为此我... 阅读详情

XMemcachedClient实例的add方法和set方法区别

  1561人阅读  评论(0)  收藏  举报
  分类:

在做memcached存取数据的时候,我们得到XMemcachedClient实例后,向memcached中存数据的方法是

1 XMemcachedClient.set(String key,int time,Object value);

2 XMemcachedClient.add(String key,int time,Object value);

首先说,这两种方法一定都能向memcached中存数据,但是二者有什么区别呢?

上网查了很多资料,都没有看到有解释的,于是我决定自己试图测试分析一下:

测试代码:

加载spring的bean.xml文件,里面相关配置,这里不再复述

  1. ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");  
  2. XMemcachedClient xmc=(XMemcachedClient) context.getBean("memcachedClient");  
  1. ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");  
  2. XMemcachedClient xmc=(XMemcachedClient) context.getBean("memcachedClient");  


执行如下代码

  1. System.out.println(xmc.add("hello", 0, "ppms"));  
  1. System.out.println(xmc.add("hello", 0, "ppms"));  

结果为true

很正常

但是这行代码执行两次,第二次就会有错误,原因很简单,XMemcachedClient的add方法不允许key值相等,即内存中有key为hello的值了,再次执行

add方法,就会失败。而经过测试,第二次执行xmc.set("hello",0,"ppms");就不会出错,原因是set方法在缓存服务器上,没有对应的key,便新建key-value,

如果有,就替换该key对应的value值。


综上:set和add方法的不同之处是add方法不允许key值相同,如果第二次add的key相同,则存储失败,而set方法允许key相同,如果相同,则替换该key对应的value。

注:每次做测试的时候,第一次add或set后,第二次测试的时候,应该先将memcached中该key所对应的值删除掉,否则该值一直存在缓存服务器中,影响测试结果。

删除方法很简单:xmc.delete("hello");

【DevOps】rancher集成ldap,实现统一账号登录 登录到rancher控制台,选择【安全】-【认证】 选择【OpenLDAP】 其中【搜索起点】需要去ldap界面查配置完成 阅读详情

相关推荐

glibc手动升级高版本导致系统(RedHat/Centos)异常(无法开机等)的解决方法(回退低版本glibc)

我的系统是Redhat7.6, 理论上Redhat7/Centos7都可以使用该方法解决问题。 首先慎重提醒各位:glibc升级会产生无法预料的后果!由于Android NDK需要高版本的glibc才可以使用,所以作死手动去更新了glibc2.18,使得重启系统后图形界面消失。(Redhat/Centos升级此类安装包最好用yum升级,因为系统内的程序对他们的依赖很大,升级会导致大部分程序无法使用...

weixin_42881528的博客 9697

MemCached缓存操作

  Web项目在运行时,通常需要从数据库中进行读写。随着操作数据量的增大,以及访问量的集中,数据库的负载增加,数据库响应变慢,网站访问速度变慢的情况。Memcached就是用来解决这些问题的。   Memcached是一个开源的高性能的分布式缓存系统。主要用于减轻数据库负载,加速Web应用访问。它是基于内存的Key-Value存储系统,主要存储Value较小的数据,Value大小不能超过1M。总...

李章勇的博客 2629

Uni-App推送踩坑实录:从云函数URL化到后台推送失效,我都经历了什么

本文详细记录了Uni-App开发者在接入uni-push 2.0时遇到的推送失效问题,从云函数URL化到后台推送失效的完整排查过程。通过系统化分析和与官方沟通,最终找到解决方案,并分享了预防措施与最佳实践,帮助开发者避免类似问题。

weixin_42552716的博客 487

Java之XMemcached使用及源码详解

前言       本文主要讲述如何使用XMemcached客户端与Memcached服务端进行交互。通过XMemcached的API调用与Memcached的set/get命令对比及跟踪XMemcached源码,使大家对XMemcached的API有更深层次的理解,能够从底层上去了解其工作原理,从而能在项目中进行一些针对性的接口封闭及优化工作。  是叫Memcache还是Memcach

q243021856的专栏 625

在Jetson orin板卡上部署ocr模型遇到错误

摘要:安装ONNX Runtime GPU版本时遇到问题,直接pip install onnxruntime-gpu会报错。解决方案是从test.pypi.org下载对应的.whl文件(如ort_nightly-1.14.0...aarch64.whl),本地安装后还需降级NumPy版本(如pip install numpy==1.26),以解决NumPy版本兼容性问题。整个过程涉及三个关键步骤:下载正确架构的wheel文件、本地安装、调整NumPy版本。

xdxd3c的博客 1526

实战:RK3568 Android14 调试 MIPI DSI 液晶屏

LCD1_RST -> 对应原理图网络连接到 GPIO。LCD1_PWR_EN ->用于给屏幕 VCC 供电。LCD0_BL_EN / LCD0_BL_PWM -> MP3302 升压芯片驱动 LED 灯条。![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/100f2be7f763494da1032464e272e63b.png&pinctrl {/* 配置 LCD_RST 和 LCD_EN */

qq_33427070的博客 1549

MemCache超详细解读

MemCache是什么 MemCache是一个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度。MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串、对象等)所使用的key-value存储,数据可以来自数据库调用、API调用,或者页面渲染的结果。...

weixin_34194087的博客 512

2024年软考信息安全工程师备考历年真题汇总

信息安全工程师分属“信息系统”专业,位处中级资格,2016年下半年,第一次开考信息安全工程师(中级)考试。目前每年考试一次。已开考六次,2016年11月12日,2017年5月20日,2018年5月26日,2019年5月25日,2020年11月7日,2021年11月6日为第六次考试。 第五次和第六次考试,采用第二版教材。 2024年软考信息安全工程师备考历年真题汇总

月梦工作室 5104

XMemcachedClient 操作 Memcached

:给容器指定名称 。如果不加 docker 会自己取。 :容器内端口–> 主机端口。 :后台运行。 :这个就是要启动的镜像名 :查看容器是运行 :查看服务端口 是否在监听中。 key:键。存取都靠它。 flags:一个标识符,存什么返什么。但是客户端可能对其做封装。 exptime:在缓存中保存键值对的时间长度(单位秒,0 永不过期) bytes:在缓存中存储的字节数 (和 大小要一至,否则报错) noreply(可选): 该参数告知服务器不需要返回数据 value:值。在第二行输入。 多余的 被

灵台方寸山斜月三星洞 991

2025高教社数学建模国赛A题 - 烟幕干扰弹的投放策略(完整参考论文)

摘要:本研究基于模拟遗传退火算法优化无人机投放烟幕弹策略,建立三维运动学模型分析遮蔽效果。针对不同战术场景(单机单弹至多机多弹),构建以遮蔽时间最大化为目标的非线性优化模型。通过改进遗传算法求解最优参数组合,结果显示在给定条件下单枚烟幕弹对M1导弹的有效遮蔽时长可达1.4秒。研究为无人机协同干扰提供了高效解决方案,验证了智能算法在复杂战术决策中的适用性。关键词:烟幕干扰;无人机投弹;运动学建模;时序优化;遗传算法。

ProminentWu的博客 544

YOLOv12改进前必看 - YAML模型配置文件详细解读(再也不用担心通道数不匹配) 附网络结构图

YOLOv12的模型配置文件在中,里面包含yolov12的以及的不同大小的模型,本文将详细介绍一下YOLOv12模型文件中各参数的含义。

Limiiiing的博客 3276

XMemcached&Spring集成

今天研究Memcached的Java的Client,使用XMemcached 1.3.5,做个简单的测试,并介绍如何与Spring集成。 一、Memcached Client简要介绍 Memcached Client目前有3种: Memcached Client for Java SpyMemcached XMemcached 这三种Client一直存在各种争议: Memcached Client...

mowengaoboa的博客 352

[nlp] 自然语言理解基准 ATIS Snips

ATIS 4k 21 Intents(not include UNK) 120 SlotsSNIPS 13k 7 Intents(not include UNK) 72 SlotsATIS Benchmark (Intent Detection) | Papers With CodeSNIPS Benchmark (Intent Detection) | Papers With Code

心宝的博客 748

Memcached开发(七):使用Java进行操作

Memcached是一种高性能的分布式内存缓存系统,广泛应用于提升Web应用程序的响应速度和减轻数据库负载。通过将频繁访问的数据存储在内存中,Memcached能够极大地提高数据读取速度,适用于缓存数据库查询结果、会话数据、API响应等。本文将详细介绍如何使用Java与Memcached进行交互,涵盖基本操作、进阶用法以及性能优化策略。

1613

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

MemcachedClient 过期时间设置 expire

MemcachedClient 过期时间设置 expire,尽量采用 new Date(缓存时间毫秒数)

羽殇醉月-专栏 8278

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

memcached 的容易命令和Java 使用 memcached 的简单例子

简单的基本命令 Set:set 命令用于向缓存添加新的键值对。如果键已经存在,则之前的值将被替换。 Add:仅当缓存中不存在键时,add 命令才会向缓存中添加一个键值对。如果缓存中已经存在键,则之前的值将仍然保持相同,并且您将获得响应 NOT_STORED。 Replace:仅当键已经存在时,replace 命令才会替换缓存中的键。如果缓存中不存在键,那么您将从 memcached 服务器接

冷月宫主的专栏 754

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Memcached客户端MemcachedClient使用

一、安装我是在window下安装的memcached,选择的是1.4.4版本,安装起来简单点,安装教程链接。二、MemcachedClient客户端API使用使用MemcachedClient连接memcached,默认端口为11211....

不忘初心的专栏 9072

Java使用memcached

1.加载commons-pool-1.5.6.jar、java_memcached-release_2.6.6.jar、slf4j-api-1.6.1.jar、slf4j-simple-1.6.1.jar 2.创建memcached工具类: 01 public class MemcachedUtil { 0

Sachiel 1240

MemcachedClient 使用说明

下面介绍java如何操作memcached。使用的是java_memcached-release_2.6.6。

a373439350的博客 1684

memcached的java客户端_Memcached的几种Java客户端(待实践)

其实现在来尝试Memcached的客户端估计会有点过气,因为现在大势基本都在Redis那边。Memcached Client目前有3种:Memcached Client for Java(已经停止更新)SpyMemcached(已经停止更新)XMemcached(一直更新,且支持客户端分片实现集群,基本现在是它的天下)高性能支持完整的Memcached文本协议,二进制协议。支持JMX,可以通过MB...

weixin_29410959的博客 403

memcached基本配置与使用

一、概念 Memcached是danga.com开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。 二、原理 Memcached有两个核心组件组成:服务端(ms)和客户端(mc)。首先mc拿到ms列表,并对key做hash转化,根据hash值确定kv对所存的ms位置。然后在一个memcached的查询中,mc先通过计算key的hash值来确定kv对所处在的ms位置。当ms确定...

lgxzzz的博客 2186

java memcached add_Java memcached client怎样建立长连接

package com.ghj.packageofclient;import java.util.Date;import junit.framework.TestCase;import com.ghj.packageoftool.MemcachedUtils;public class Client extends TestCase{/*** 测试MemcachedUtils类的set方法。** @...

weixin_42116650的博客 150

memcache的客户端

Memcached的java客户端已经存在三个了:官方提供的基于传统阻塞io的客户端 、Dustin Sallings实现的基于java nio的spymemcached 和XMemcached。 memcache常用Java客户端有三个:1、memcached client for Java   2、spymemcached  3、xmemcachedxmemcached 上述三者中最优秀...

hqmln的博客 216

【无标题】

本文详细介绍了 Memcached 的数据操作,包括如何通过setadd和replace操作存储数据,如何通过get和gets操作获取数据,如何使用delete操作删除数据,以及如何进行批量操作和数据更新。通过这些操作,开发者可以灵活高效地管理 Memcached 中的数据,提升应用程序的性能和可扩展性。

weixin_52938153的博客 299

Memcached之客户端-xmemcached(5)

高性能Java memcached客户端——Xmemcached发布2.0.0版本,主要改进如下: 性能优化,在测试中文本协议实现有接近10%的性能提升。 批量获取key如果包含相同的key,会缓存反序列化后的对象,减少重复反序列化的CPU开销。 修复getStats没办法获取cache dump的Bug,感谢machao9email。 修复ONE_AT_A_TIME没有正确处理无符号...

iteye_14970的博客 541
上一篇: Memcached expire 设置错误引起的set(key,exp,value)为true而get(key)为null的问题
下一篇: 浅谈HTTP中Get与Post的区别
javaPie
博客等级 码龄16年 1171粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值