正在开发一个聊天App,我负责服务器端,服务器容器用的是Openfire,用来进行转发消息,遵循的是XMPP协议,在开发过程中,用Openfire的插件来进行聊天记录的实现,前期实现的方式就是拦截消息,然后将每一条消息都存入数据库,这样有个很大的问题就是对DB的操作太频繁了,于是想到了Memcache缓存机制来解决这个问题,定时并且定数的将Memcache里面的数据写入到数据库,可能一天写一次,也可能半天写一次,这个要看后期信息量大不大,于是乎,今天花了一下午的时间研究Memcache服务器端部署和客户端的调用存取,其实整个过程中没什么难度点,只不过被一些没接触过的问题耽误一些时间,特在此记录下,也希望以后遇到这些问题的朋友能快速解决
1、Memcache里面存取实体类报错?
之前用Memcache存了字符串,然后存了Map,List,都存的很爽,当把实体类add到List里面,然后将List存入缓存的时候,存入的时候返回为false,也不知道是什么错,在网上查询了之后,其实只要将实体类进行序列化就OK了
public class OfGroupLogs implements java.io.Serializable{
private String messageId; //时间戳用来做主键,同时也用来做消息发送时间
private String messageContent; //消息内容
private String fromName; //发起人
private String toGroup; //接收群
private String messageType; //消息类型(文字消息,图片,语音消息)