




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据字典管理组件设计说明书 Cache管理设计说明书拓维信息系统股份有限公司第 11 页 共 12 页文档标识: 当前版本:1.0当前状态:草稿发布日期:2011-7-7发布修改历史日期版本作者修改内容评审号变更控制号2011-7-71.0新建目 录1概述31.1功能说明31.2读者对象31.3参考文档31.4术语与缩写32功能设计32.1数据模型32.2类图42.3功能点说明42.3.1配置文件42.3.1.1属性解析42.3.1.2节点解析52.3.2设置Session52.3.3获取Session52.3.4销毁Session52.3.5重置过期时间52.4接口说明51 概述1.1 功能说明 通过可配参数,实现本地化的Ehcache及分布式的Memcached、redis缓存的统一配置和集中式管理。1.2 读者对象项目经理、设计人员、开发人员。1.3 参考文档WEB2.0基础应用平台二次开发手册模板_基础平台.doc1.4 术语与缩写缩写英文描述中文描述1.5 命名规则对象规则示例2 功能设计2.1 UML类图设计统一接口IMultiCacheManager,屏蔽具体的缓存实现的差异性,CacheManager实现统一接口、实现对cache进行的增加、删除、获取。不同类别的cache是根据cachename来进行区分。如要进行CacheManager的改变,增加新的CacheManager,新的CacheManager必须实现IMultiCacheManager统一接口,在具体使用时指向新的实例即可。Ehcache扩展实现:分布式Cache扩展实现(Memcached、Redis):Icache接口:缓存采用可扩展的设计模式,需要扩展缓存时,比较容易扩展,不必修改原来的代码。Cache的具体操作类,即实现缓存具体的增加、删除和获取的类,要实现Channel接口,Channel接口继承自IChache接口;具体实现的方法如下:IChache接口public interface ICache /对cache中增加数据 public boolean put(String key,Serializable value) throws Exception;/ 对cache中增加数据,并且设置数据超时public boolean put(String key,Serializable value, int waitTimes) throws Exception;/从cache中获取数据public Serializable get(String key) throws Exception;/从cache中获取数据,并且设置数据超时public Serializable get(String key, int waitTimes) throws Exception;/ 从cache中删除数据public boolean remove(String key) throws Exception;/从cache中删除数据,并且设置数据超时public boolean remove(String key, int waitTimes) throws Exception;/ 从cache中清空所有数据public boolean removeAll() throws Exception; / 得到cache名称 public String getName() throws Exception;Channel接口public interface Channel extends ICache public boolean isAlive();public void close() throws Exception;public RemoteSourceItem getRemoteSourceItem();具体缓存的使用要通过一个缓存通道池来管理,缓存池的统一接口为ChannelPool,各不同的缓存统一实现此接口,并各自编写实现方法。ChannelPool接口public interface ChannelPool public Channel getChannel() throws Exception;public void close() throws Exception ;2.2 功能点说明2.2.1 配置文件使用twdpe-core工程中系统配置文件cache.xml,内容节点如下:缓存模块的配置分为:本地缓存配置、分布式缓存配置(Memcached、Redis)。1) 增加本地缓存对象向本地缓存增加对象的前提是该缓存已经存在,如缓存尚未建立需按以下步骤执行:首先在cache.xml(下图)配置本地缓存echcache_wadelib.xml;,如缓存的最大元素数,内存溢出时是否持久化等;2) 增加分布式缓存Memcached对象memcached分布式缓存在上图中的type为memcache,它需要一个分布式主机信息的配置文件在path中指定,此memcache的id即为cachename;Memcached的配置:配置说明:配置项说明host缓存主机地址port端口timeout超时时间(秒)maxActive最大连接数maxIdle初始连接数maxWait连接池等待超时时间expire默认缓存时间mainSleep主线程休眠时间3) 增加分布式缓存Redis对象分布式缓存在上图中的type为redis,它需要一个分布式主机信息的配置文件在path中指定,此redis的id即为cachename;Redis的配置:配置说明:配置项说明host缓存主机地址port端口timeout超时时间(秒)maxActive最大连接数maxIdle初始连接数maxWait连接池等待超时时间expire默认缓存时间2.2.2 设置Cache根据输入的cache关键字,将需要保存的对象以KEY-VALUE对的方式保存于Ehcache或Memcache、Redis中。如:l 放置需要缓存的可序列化对象,根据缓存名称:putObject(String cacheName, String key, Serializable value)l 根据缓存名称,放置需要缓存的可序列化对象,并设轩超时时间:putObject(String cacheName, String key,Serializable value, int waitTimes)l 根据缓存名称,放置需要缓存的可序列化对象及指定缓存时间, putObjectExpire(String cacheName, String key, Serializable value, int expire)2.2.3 获取Cache根据输入的关键字,从Cache缓存服务中获取它所对应的对象,如:l 获取缓存的对象,根据缓存名称及键值:getObject(String cacheName, String key)l 获取缓存的对象,根据缓存名称、键值及等待时间:getObject(String cacheName, String key,int waitTimes)2.2.4 销毁Cache根据输入的关键字,从Cache缓存服务中将它移除,如:l 移除缓存
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年合肥一六八陶冲湖中学教师招聘备考练习试题及答案解析
- 2025山东东营市技师学院招聘(第二批)7人考试参考试题及答案解析
- 2025重庆九龙坡区玉清寺小学招聘教师4人考试参考试题及答案解析
- 班主任基本功大赛精彩试题(附答案)
- 中英文版固定期限劳动合同协议书
- 2025湖北武汉火箭公司总装总调中心招聘考试参考试题及答案解析
- 2025浙江台州市温岭松门水产品批发市场有限公司招聘1人考试参考试题及答案解析
- b安全员继续教育考试试题及答案
- 医院临床医生用血知识及权限授权考试试题(附答案)
- 礼貌的力量说课课件
- 《世界名画蒙娜丽莎》课件
- 黄褐斑的护理查房
- 项目档案质量审核情况报告
- 泰山版(2018版)小学信息技术第5册教学计划
- 环刀法测压实度自动计算表格(2020.4.10)
- 多系统萎缩(改良版)课件
- IATF16949仓库管理制度
- 财务开票员的岗位职责 开票员岗位职责介绍
- 运输管理实务(第四版)PPT完整全套教学课件
- 英语阅读理解专项练习(40篇)
- 铜陵鑫佳粉体新材料科技有限公司年产10000吨高品质有色金属粉体扩建项目环评报告
评论
0/150
提交评论