[讨论]分布式存储数据的设计方案,有兴趣的进来看看,给点建议~~
大麦芽糖 2014-04-09 11:01:34 需求描述:
本人负责一个实现在线客服和微信公众平台聊天服务的系统。主要功能就是客服可以使用微信公众号(使用PC或者微信,使用前会关注公众账号)服务访客(仅PC)。现在需要一个公共区域用来存储客服与访客见的关系信息。技术上用到了Socket对象,对于服务器来说,我把客服和访客都作为一个Client,里面存储Socket链接,基础信息(如会话编号,客服ID,访客ID)等。现在不考虑数据库,仅用内存形式操作。本来设计用Memcached,它可以让我一次只操作1个对象,但是当我需要查找空闲客服的时候就不方便了(Role=‘Servant’),因为Key不知道该如何建立;如果使用List<实体>来操作的话性能就会差很多,比如用Application,Session来做的话我就要先把1万的对象拿出来,选择其中1个操作完,然后再把1万个对象放回去;如果分开存放,如Socket服务器上有List,微信服务器上有List那么维护就不方便了。
大家有什么好的建议?