高并发之Memcached实战第10课-“Memcached Get获取数据”部分代码分享

简介: 高并发之Memcached实战第10课-“Memcached Get获取数据”部分代码分享先写个要存的数据的相关类:public class Student implements java.

高并发之Memcached实战第10课-“Memcached Get获取数据”部分代码分享


先写个要存的数据的相关类:


public class Student  implements java.io.Serializable {

	public String Name;
	
	public int Age;
	
}

然后用java写Memcached客户端写和读操作:


import java.io.IOException;
import java.net.InetSocketAddress;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutionException;

import net.spy.memcached.MemcachedClient;
import net.spy.memcached.internal.OperationFuture;

public class MemcachedJava {
        public static void main(String[] args) throws IOException, InterruptedException, ExecutionException { 
	//Connecting to Memcached server on localhost
    List<InetSocketAddress> list=new ArrayList<InetSocketAddress>();
    list.add(new InetSocketAddress("127.0.0.1", 11211));
	MemcachedClient mcc = new MemcachedClient(list); 
	System.out.println("Connection to server sucessfully"); 
	Student s=new Student();
	s.Name="Jumping";
	s.Age=29;
	OperationFuture<Boolean> of=mcc.set("s1", 900, s);
	// of.get() 确保之前(mcc.set())操作已经结束,并且获取结果
	System.out.println("set status:" +of.get());
	Student sout=(Student)mcc.get("s1");
	System.out.println("Get from Cache:" + sout.Name);  
	
	Student s2=new Student();
	s2.Name="Jumping2";
	s2.Age=29;
	Student s3=new Student();
	s3.Name="Jumping3";
	s3.Age=29;
	List<Student> ss=new ArrayList<Student>();
	ss.add(s2);
	ss.add(s3);
	
	OperationFuture<Boolean> of2=mcc.set("ss", 900, ss);
	System.out.println("set ss status:" +of2.get());
	ArrayList<Student> s2out=(ArrayList<Student>)mcc.get("ss");
	System.out.println("Get from ss:" + ((Student)s2out.toArray()[0]).Name); 
	System.out.println("Get from ss:" + ((Student)s2out.toArray()[1]).Name); 
	System.exit(0);
        }
 }

碰到任何问题,请回复,共同讨论,谢谢!

目录
相关文章
|
10月前
|
人工智能 JSON 前端开发
【Spring boot实战】Springboot+对话ai模型整体框架+高并发线程机制处理优化+提示词工程效果展示(按照框架自己修改可对接市面上百分之99的模型)
【Spring boot实战】Springboot+对话ai模型整体框架+高并发线程机制处理优化+提示词工程效果展示(按照框架自己修改可对接市面上百分之99的模型)
|
2月前
|
NoSQL 关系型数据库 MySQL
招行面试:高并发写,为什么不推荐关系数据?
资深架构师尼恩针对高并发场景下为何不推荐使用关系数据库进行数据写入进行了深入剖析。文章详细解释了关系数据库(如MySQL)在高并发写入时的性能瓶颈,包括存储机制和事务特性带来的开销,并对比了NoSQL数据库的优势。通过具体案例和理论分析,尼恩为读者提供了系统化的解答,帮助面试者更好地应对类似问题,提升技术实力。此外,尼恩还分享了多个高并发系统的解决方案及优化技巧,助力开发者在面试中脱颖而出。 文章链接:[原文链接](https://mp.weixin.qq.com/s/PKsa-7eZqXDg3tpgJKCAAw) 更多技术资料和面试宝典可关注【技术自由圈】获取。
|
2月前
|
存储 缓存 Java
Java中的分布式缓存与Memcached集成实战
通过在Java项目中集成Memcached,可以显著提升系统的性能和响应速度。合理的缓存策略、分布式架构设计和异常处理机制是实现高效缓存的关键。希望本文提供的实战示例和优化建议能够帮助开发者更好地应用Memcached,实现高性能的分布式缓存解决方案。
52 9
|
3月前
|
缓存 NoSQL Java
高并发场景秒杀抢购超卖Bug实战重现
在电商平台的秒杀活动中,高并发场景下的抢购超卖Bug是一个常见且棘手的问题。一旦处理不当,不仅会引发用户投诉,还会对商家的信誉和利益造成严重损害。本文将详细介绍秒杀抢购超卖Bug的背景历史、业务场景、底层原理以及Java代码实现,旨在帮助开发者更好地理解和解决这一问题。
139 12
|
5月前
|
缓存 负载均衡 API
抖音抖店API请求获取宝贝详情数据、原价、销量、主图等参数可支持高并发调用接入演示
这是一个使用Python编写的示例代码,用于从抖音抖店API获取商品详情,包括原价、销量和主图等信息。示例展示了如何构建请求、处理响应及提取所需数据。针对高并发场景,建议采用缓存、限流、负载均衡、异步处理及代码优化等策略,以提升性能和稳定性。
|
9月前
|
缓存 NoSQL Java
Java高并发实战:利用线程池和Redis实现高效数据入库
Java高并发实战:利用线程池和Redis实现高效数据入库
610 0
|
7月前
|
存储 缓存 监控
Memcached玩转Web性能:一致性哈希、数据持久化,一文全掌握!
【8月更文挑战第24天】Memcached是一款高性能的分布式内存对象缓存系统,它通过在网络中存储数据并使用简单的键值对机制来提高动态Web应用的性能。它可以显著减少数据库查询次数,进而减轻数据库负载并加快响应时间。为了最大化利用Memcached的优势,建议合理配置内存使用、采用一致性哈希策略、实施数据持久化措施,并持续监控系统健康状况。提供的示例代码展示了如何使用Java创建客户端、添加和获取数据。
88 1
|
7月前
|
存储 监控 Java
近亿级用户体量高并发实战:大促前压测干崩近百个服务引起的深度反思!
几年前,数百个服务,将堆内存从28GB升配到36GB,引发系统全面OOM的事件。
176 12
|
7月前
|
存储 缓存 运维
优化高并发环境下的数据库查询性能:实战经验与技巧
在高并发环境下,数据库性能往往成为系统瓶颈。本文将深入探讨在高并发场景下优化数据库查询性能的策略与实践,包括索引优化、查询优化、数据库架构设计以及缓存机制的应用。通过对具体案例的分析,读者将能够掌握提升数据库性能的关键技术,从而在面对大规模用户请求时提高系统的响应速度和稳定性。
|
7月前
|
物联网 C# 智能硬件
智能家居新篇章:WPF与物联网的智慧碰撞——通过MQTT协议连接与控制智能设备,打造现代科技生活的完美体验
【8月更文挑战第31天】物联网(IoT)技术的发展使智能家居设备成为现代家庭的一部分。通过物联网,家用电器和传感器可以互联互通,实现远程控制和状态监测等功能。本文将探讨如何在Windows Presentation Foundation(WPF)应用中集成物联网技术,通过具体示例代码展示其实现过程。文章首先介绍了MQTT协议及其在智能家居中的应用,并详细描述了使用Wi-Fi连接方式的原因。随后,通过安装Paho MQTT客户端库并创建MQTT客户端实例,演示了如何编写一个简单的WPF应用程序来控制智能灯泡。
248 0

热门文章

最新文章