热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

springboot集成memcached方式三(XMemcached)

本文主要实现springboot集成XMemcached这种方式(持续更新,有人维护),推荐使用第一步:windows下安

       本文主要实现spring boot集成XMemcached这种方式(持续更新,有人维护),推荐使用

第一步:windows下安装Memcached

       在网上查了大量的参考资料,发现有很多种实现方式,我们在第一种,首先在https://www.runoob.com/memcached/window-install-memcached.html里面下载相应的版本,我一开始现在的是64位的1.4.5版本,然后按照教程里面的安装手册安装,我发现并没有安装成功,查询了大量的资料,找了各种原因(telnet 127.0.0.1 11211测试等等),都没有找到相应的解决办法,所以我就放弃了1.4.5版本,转而安装1.4.4版本,可以发布成server的版本。

       具体如何安装以及修改参数都在上面的网页教程里面有相应的记录,这里我需要说明的是:当执行c:\memcached\memcached.exe -d start之后,这个memcached进行就会启动,关机重启电脑也会自动启动这个进程。不用再刻意的去配置开机启动。

       首先确保这个服务开启了,才能在后续代码里面使用memcached服务。

第二步:在代码中添加maven依赖

com.googlecode.xmemcachedxmemcached2.4.5
第三步:在application.properties中配置memcache相关配置信息

memcached.server=127.0.0.1:11211 10.86.54122:11211 #memcached服务器集群(格式为host:port,多个服务器之间用空格隔开)
memcached.opTimeout=3000 #接口操作的默认超时时间,可以被接口覆盖
memcached.poolSize=10 #池子大小
memcached.failureMode=false #是否开启失败模式,默认为false
memcached.enabled=true 是否使用memcached缓存

第四步:编写XMemcacheConfig配置类

@Configuration
public class XMemcacheConfig {@Value("${memcached.server}")private String server;@Value("${memcached.opTimeout}")private Integer opTimeout;@Value("${memcached.poolSize}")private Integer poolSize;@Value("${memcached.failureMode}")private boolean failureMode;@Value("${memcached.enabled}")private boolean enabled;@Bean(name = "memcachedClientBuilder")public MemcachedClientBuilder getBuilder() {MemcachedClientBuilder memcachedClientBuilder = new XMemcachedClientBuilder(server);// 内部采用一致性哈希算法memcachedClientBuilder.setSessionLocator(new KetamaMemcachedSessionLocator());// 操作的超时时间memcachedClientBuilder.setOpTimeout(opTimeout);// 采用二进制传输协议(默认为文本协议)memcachedClientBuilder.setCommandFactory(new BinaryCommandFactory());// 设置连接池的大小memcachedClientBuilder.setConnectionPoolSize(poolSize);// 是否开起失败模式memcachedClientBuilder.setFailureMode(failureMode);return memcachedClientBuilder;}/*** 由Builder创建memcachedClient对象,并注入spring容器中* @param memcachedClientBuilder* @return*/@Bean(name = "memcachedClient")public MemcachedClient getClient(@Qualifier("memcachedClientBuilder") MemcachedClientBuilder memcachedClientBuilder) {MemcachedClient client = null;try {client = memcachedClientBuilder.build();} catch(Exception e) {e.printStackTrace();}return client;}
}

第五步:编写测试memcache的controller类

@RestController
public class XMemcacheController {@Autowiredprivate MemcachedClient memcachedClient;@RequestMapping("/XMemcacheIndex")public String XMemcacheIndex() throws InterruptedException {try {//新增操作memcachedClient.set("XMemcacheKeyOne",0,"张三");System.out.println((String)memcachedClient.get("XMemcacheKeyOne"));//删除操作memcachedClient.delete("XMemcacheKeyOne");System.out.println((String)memcachedClient.get("XMemcacheKeyOne"));//设置存活时间memcachedClient.set("XMemcacheKeyTwo",1,"李四");Thread.sleep(2000);System.out.println((String)memcachedClient.get("XMemcacheKeyTwo"));//更新操作memcachedClient.set("XMemcacheKeyThree",0,"王五");System.out.println((String)memcachedClient.get("XMemcacheKeyThree"));memcachedClient.set("XMemcacheKeyThree",0,"王五他儿子");System.out.println((String)memcachedClient.get("XMemcacheKeyThree")); } catch (Exception e) {e.printStackTrace();}return "xMemcacheIndex";}
}

第六步:测试

       启动程序,输入http://localhost:8080/XMemcacheIndex,输出结果如图所示:


推荐阅读
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文介绍了三种方法来实现在Win7系统中显示桌面的快捷方式,包括使用任务栏快速启动栏、运行命令和自己创建快捷方式的方法。具体操作步骤详细说明,并提供了保存图标的路径,方便以后使用。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • 基于dlib的人脸68特征点提取(眨眼张嘴检测)python版本
    文章目录引言开发环境和库流程设计张嘴和闭眼的检测引言(1)利用Dlib官方训练好的模型“shape_predictor_68_face_landmarks.dat”进行68个点标定 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • Windows 7 部署工具DISM学习(二)添加补丁的步骤详解
    本文详细介绍了在Windows 7系统中使用部署工具DISM添加补丁的步骤。首先需要将光驱中的安装文件复制到指定文件夹,并进行挂载。然后将需要的MSU补丁解压并集成到系统中。文章给出了具体的命令和操作步骤,帮助读者完成补丁的添加过程。 ... [详细]
author-avatar
百脑汇惠州店_956
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有