一种通过云端缓存实现的高性能服务架构制造技术

技术编号:14152290 阅读:69 留言:0更新日期:2016-12-11 15:35
本发明专利技术公开了一种通过云端缓存实现的高性能服务架构 ,属于数据处理技术WEB应用开发技术架构领域,服务器接收到来自客户端的查询请求时,检查被查询的数据是否属于应用服务器缓存中的数据,若属于则直接服务器发送查询请求,并将响应信息返回给客户端;若不属于则检查查询数据相应的响应信息;云端缓存实现的高性能服务架构包含添加缓存数据、缓存实现和获取缓存数据三部分。本发明专利技术能够缓解大量对高频次查询、低频次更新的数据,能够缓解客户端查询请求对服务器缓存的冲击,提高服务器缓存的存取效率和命中率,能够提升服务器的解析性能。

【技术实现步骤摘要】

本专利技术涉及WEB应用开发技术架构领域,具体地说是一种通过云端缓存实现的高性能服务架构
技术介绍
对于烟草行业现在大部分应用系统采用WEB应用开发,现在信息化系统越来越多的要求良好的客户体验、快速响应。现在WEB应用架构缓存的架构还比较少,大量对高频次查询、低频次更新的数据不能很好地缓存利用,客户端查询请求对服务器缓存冲击比较大,服务器缓存的存取效率和命中率低,增加了后端数据库压力、影响前端响应速度,增加响应时间。
技术实现思路
本专利技术的技术任务是针对以上不足之处,提供一种通过云端缓存实现的高性能服务架构,通过服务器缓存、HashTable存储和高速服务集群分发保持缓存数据一致,从而减少客户端响应时间,减轻服务器数据库压力。本专利技术解决其技术问题所采用的技术方案是:一种通过云端缓存实现的高性能服务架构 ,服务器接收到来自客户端的查询请求时,检查被查询的数据是否属于应用服务器缓存中的数据,若属于则直接服务器发送查询请求,并将响应信息返回给客户端;若不属于则检查查询数据相应的响应信息;云端缓存实现的高性能服务架构包含添加缓存数据、缓存实现和获取缓存数据三部分。进一步的,所述缓存数据属于高频次查询、低频次更新的数据。进一步的,缓存数据为消息通知数据,添加缓存,缓存消息通知数据,应用系统从业务系统中心获取消息通知数据,定时访问被集成的业务系统,每一个业务系统起一个线程获取数据,获取数据后阻塞线程统一整理数据添加到服务器缓存中;缓存实现,消息通知数据申请添加缓存后,服务器缓存首先将数据转化为Hashtable,进行缓存处理。然后调用高速服务配置信息,循环调用集群中的高速服务,实现将数据同步至其他服务器缓存,保证缓存数据一致;获取缓存,客户端发起查询消息通知请求,服务器端接受请求并请求获取消息通知缓存数据,返回给客户端。本专利技术的一种通过云端缓存实现的高性能服务架构和现有技术相比,具有以下有益效果:本专利技术能够缓解大量对高频次查询、低频次更新的数据,能够缓解客户端查询请求对服务器缓存的冲击,提高服务器缓存的存取效率和命中率,能够提升服务器的解析性能,从而减少后端数据库压力、前端快速响应;云端缓存实现的高性能服务架构是WEB应用开发的一种实现缓存架构,缓存中通过HashTable存储数据,通过使用高速服务集群分发,保证各服务器缓存一致,缓存操作容易、使用方便和应用系统用户体验好。具体实施方式下面结合具体实施例对本专利技术作进一步说明。一种通过云端缓存实现的高性能服务架构 ,服务器接收到来自客户端的查询请求时,检查被查询的数据是否属于应用服务器缓存中的数据,若属于则直接服务器发送查询请求,并将响应信息返回给客户端;若不属于则检查查询数据相应的响应信息;云端缓存实现的高性能服务架构包含添加缓存数据、缓存实现和获取缓存数据三部分。所述缓存数据属于高频次查询、低频次更新的数据,如消息通知数据,添加缓存,缓存消息通知数据,应用系统从业务系统中心获取消息通知数据,定时访问被集成的业务系统,每一个业务系统起一个线程获取数据,获取数据后阻塞线程统一整理数据添加到服务器缓存中;多线程获取数据,阻塞线程合并数据代码:public Map<String, List<Map>> executeDaiBanCount() { List<FutureTask<ExecuteResult>> futureTasks=new ArrayList<FutureTask<ExecuteResult>>(); List<ServicesData> banInfos=ServicesRef.init().getDaiBanCountServices(); for (ServicesData servicesData : banInfos) { LinkedHashMap<String, Object> param=new LinkedHashMap<String, Object>(); JSONObject jsonObject=new JSONObject(); try { JSONArray array=new JSONArray();以下是添加缓存代码://获取消息 Map map = new HashMap(); map.put(\BUSINESS\, UrgentMessageUtil.URGENTMESSAGE_BUSINESS); map.put(\BUSINESS_TYPE\, UrgentMessageUtil.URGENTMESSAGE_BUSINESS_TYPE); map.put(\UPLOAD_TYPE\, \01\); List noticeUrgenMessList = handler.executeUrgentMessage(map); log.debug(\紧急通知运行结果\+noticeUrgenMessList); //放入缓存 GlobalCache.getGlobal().addCache(GlobalCache.NOTICE_URGENT_MESSAGE, noticeUrgenMessList);缓存实现,消息通知数据申请添加缓存后,服务器缓存首先将数据转化为Hashtable,进行缓存处理。然后调用高速服务配置信息,循环调用集群中的高速服务,实现将数据同步至其他服务器缓存,保证缓存数据一致;public void syncServerCache(String key,Object value) { //刷新 addCache(key, value); //调用高速服务刷新其他的服务器 try{ ServiceConfig address = new ServiceConfig();获取缓存,客户端发起查询消息通知请求,服务器端接受请求并请求获取消息通知缓存数据,返回给客户端。/** * 从缓存中获取通知公告的明细 * @author LINMU * @since */ Public static Map<String, List<Map>> getNoticeDetailFromCache(List<String> columes,int count) {Object object=GlobalCache.getGlobal().getCache().get(GlobalCache.NOTICE_MULTI_DETAIL); Map<String, List<Map>> noticeMap=(Map<String, List<Map>>)object; return noticeMap;本文档来自技高网...

【技术保护点】
一种通过云端缓存实现的高性能服务架构 ,其特征在于:服务器接收到来自客户端的查询请求时,检查被查询的数据是否属于应用服务器缓存中的数据,若属于则直接服务器发送查询请求,并将响应信息返回给客户端;若不属于则检查查询数据相应的响应信息;云端缓存实现的高性能服务架构包含添加缓存数据、缓存实现和获取缓存数据三部分。

【技术特征摘要】
1.一种通过云端缓存实现的高性能服务架构 ,其特征在于:服务器接收到来自客户端的查询请求时,检查被查询的数据是否属于应用服务器缓存中的数据,若属于则直接服务器发送查询请求,并将响应信息返回给客户端;若不属于则检查查询数据相应的响应信息;云端缓存实现的高性能服务架构包含添加缓存数据、缓存实现和获取缓存数据三部分。2.根据权利要求1所述的一种通过云端缓存实现的高性能服务架构 ,其特征在于所述缓存数据属于高频次查询、低频次更新的数据。3.根据权利要求1或2所述的一种通过云端缓存实现的高性能服务架构 ,其特...

【专利技术属性】
技术研发人员:孔繁博林木
申请(专利权)人:浪潮软件股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1