请求处理方法与请求处理装置制造方法及图纸

技术编号:11975838 阅读:131 留言:0更新日期:2015-08-31 01:56
本发明专利技术提供了一种请求处理方法和一种请求处理装置,其中,所述请求处理方法,包括:通过所述服务器的应用层的应用接口接收来自终端的请求;根据所述请求中包括的服务系统信息,从所述服务器的多个子服务系统中调用目标子服务系统以处理所述请求,其中,所述多个子服务系统互相独立,且所述目标子服务系统为所述多个子服务系统中的至少一个子服务系统。通过本发明专利技术的技术方案,可以打破数据集成模式,不再以数据为中心集成各个子系统,以减少各个子系统的代码,提高子系统的维护效率、安全性和扩展性。

【技术实现步骤摘要】
请求处理方法与请求处理装置
本专利技术涉及请求处理
,具体而言,涉及一种请求处理方法和一种请求处理装置。
技术介绍
目前的系统一般都采用数据集成,而数据集成是一种比较传统的系统集成方式,其中心是数据。比如交易系统会操作订单表和用户表以生成订单。而短信通知系统也会访问订单表和用户表,根据订单的状态来发出不同的短信以通知不同的用户:比如给金额较大的订单对应的用户发一些促销活动短信,给一些未完成订单的用户发短信提醒其完成订单。这就是一种数据集成方式,但交易系统和短信通知系统均依靠订单表和用户表进行集成,这种集成方式的优点在于实现简单,缺点在于:因为多个系统都访问同一个数据库的同几张表,因此,业务数据库负担较大;安全性差:每个系统都以HTTP(HyperTextTransferProtocol,超文本传输协议)方式将接口暴露在外,接口的安全性较差;扩展性问题:交易系统如果以后想把订单表从RDBMS(RelationalDatabaseManagementSystem)迁走可能就没那么容易了,因为还有很多其他系统也依赖该订单表,真可谓牵一发而动全身;或者各个系统可能擅自做主给表增减字段,而带来不好后果;代码重复:如果交易系统和短信通知系统由两个不同部门的团队开发,那么每个系统中都会有针对订单表和用户表的Dao(DataAccessObject,数据访问对象)、Cache(高级缓冲存储器)、Service(服务)代码。总之,现有的数据集成的代码庞杂,理解困难,新人上手也困难;维护困难,需要维护的人多,团队管理成本高,且团队效率越低;系统启动一般较慢;持续部署困难:每一次小改动都需要重新部署整个应用;技术堆栈固化:尝试新技术的代价太高;扩展困难:应用某些部分偏IO密集型、某些部分却偏CPU密集型,但应用却只部署在一台机器上,很难用单一硬件来满足应用各部分对硬件资源的不同要求。因此,如何打破数据集成模式,不再以数据为中心集成各个子系统,以减少各个子系统的代码,提高子系统的维护效率、安全性和扩展性,成为亟待解决的问题。
技术实现思路
本专利技术正是基于上述技术问题,提出了一种新的技术方案,可以打破数据集成模式,不再以数据为中心集成各个子系统,以减少各个子系统的代码,提高子系统的维护效率、安全性和扩展性。有鉴于此,本专利技术的一方面提出了一种请求处理方法,用于服务器,包括:通过所述服务器的应用层的应用接口接收来自终端的请求;根据所述请求中包括的服务系统信息,从所述服务器的多个子服务系统中调用目标子服务系统以处理所述请求,其中,所述多个子服务系统互相独立,且所述目标子服务系统为所述多个子服务系统中的至少一个子服务系统。在该技术方案中,由于服务器中的多个子服务系统互相独立,没有耦合,因此,服务器的应用层的应用接口接收到终端的请求后,会根据请求中包括的服务系统信息,从服务器的多个子服务系统中调用一个或多个相互独立的子服务系统即目标子服务系统,以快速响应该请求,提高用户的使用体验;且由于多个子服务系统互相独立,没有存储相互关联的数据,是一个可独立部署的完整系统,因此,服务器在接收到不同的请求并调用不同的子系统时,不会牵连到其他子系统,这可以打破数据集成模式,使各个子系统不再以数据为中心集成,另外,由于各个子系统是独立编码的,代码量少而简单,因此,通过本专利技术可以提高子系统的维护效率和扩展性。例如:原工作圈服务都放到一个web工程,通过本专利技术则可以将其拆分成圈子系统、关系系统、评论系统、赞系统、通知系统、账户系统、设置系统等,而各个子系统则可以独立地对外提供服务,通过应用层组装即可对外提供服务。在上述技术方案中,优选地,所述服务器包括配置中心,用于将所述服务系统信息与所述多个子服务系统中的每个子服务系统的配置信息对应存储,所述配置信息包括:每个所述子服务系统的网络协议地址、每个所述子服务系统的远程过程调用协议接口、每个所述子服务系统的路径、每个所述子服务系统的路径下的服务列表中的至少一种信息,所述服务系统信息包括所述目标子服务系统的路径和/或所述目标子服务系统的服务列表,以及,所述多个子服务系统中的每个子服务系统均包括远程过程调用协议接口。在该技术方案中,配置中心通过将每个子服务系统的配置信息和终端的服务系统信息封装后进行对应存储,便于根据终端的请求为终端快速地、准确地调用不同的子服务系统,同时,也便于在服务器的子服务系统的配置信息发生变化(如配置中心中的某些子服务系统的配置信息被删除或配置中心中被新增了其他子服务系统的配置信息)时,及时地向终端推送通知信息,以使终端及时地删除缓存中存储的这些子服务系统的服务系统信息或向缓存中添加新增的子服务系统的服务系统信息。在上述技术方案中,优选地,所述从所述服务器的多个子服务系统中调用目标子服务系统以处理所述请求,具体包括:所述应用层接收到所述请求后,将所述请求发送至所述配置中心,所述配置中心根据所述请求中的服务系统信息和每个所述子服务系统的配置信息确定所述目标子服务系统;所述配置中心在确定所述目标子服务系统后,通知所述应用层所述目标子服务系统,以使所述应用层通过所述目标子服务系统的远程过程调用协议接口调用所述目标子服务系统,以使所述目标子服务服务系统处理所述请求。在该技术方案中,应用层在接收到终端的请求且获取到该请求对应的目标子服务系统后,会通过目标子服务系统中的每个子服务系统的RPC(RemoteProcedureCallProtocol,远程过程调用协议)接口调用这些目标子服务系统,以响应终端的请求,其中,RPC接口为Avro(数据序列化的接口);Thrift(数据类型和服务接口);Spring_rmi(远程方法调用接口)等。在上述技术方案中,优选地,还包括:所述配置中心按照预定周期向所述多个子服务系统中的每个子服务系统发送“心跳”请求,并判断在第一预设时间内是否接收到来自每个所述子服务系统的“心跳”响应,若判断在第一所述预设时间内未接收到来自任一所述子服务系统的“心跳”响应,则统计在第二预设时间内连续未接收到任一所述子服务系统的“心跳”响应的次数,并在所述次数大于预设次数时,所述配置中心删除任一所述子服务系统的配置信息;以及所述配置中心在删除任一所述子服务系统的配置信息后,通知所述终端,以使所述终端删除与所述配置信息相对应的所述服务系统信息。在该技术方案中,配置中心会按照预定周期向多个子服务系统中的每个子服务系统发送“心跳”请求,以判断每个子服务系统的状态是否异常,如果任一子服务系统在第一预设时间内没有响应配置中心的“心跳”请求,并在第二预设时间内连续多次没有响应配置中心的“心跳”请求,则配置中心将判断该子服务系统的状态异常,会自动删除该子服务系统的配置信息,并通知终端该子服务系统已被移除,以使终端也从本地缓存中删除与该配置信息相对应的服务系统信息,避免再次向服务器发送使该子服务系统处理请求的请求信息。另外,由于每个子服务系统互相独立,没有存储相互关联的数据,是一个可独立部署的完整系统,因此,配置中心在删除该配置信息相对应的服务系统信息,也不会影响到其它子服务系统,避免出现牵一发而动全身的情况。在上述技术方案中,优选地,还包括:所述配置中心在接收到配置信息添加命令时,添加新的配置信本文档来自技高网
...
请求处理方法与请求处理装置

【技术保护点】
一种请求处理方法,用于服务器,其特征在于,包括:通过所述服务器的应用层的应用接口接收来自终端的请求;根据所述请求中包括的服务系统信息,从所述服务器的多个子服务系统中调用目标子服务系统以处理所述请求,其中,所述多个子服务系统互相独立,且所述目标子服务系统为所述多个子服务系统中的至少一个子服务系统。

【技术特征摘要】
1.一种请求处理方法,用于服务器,其特征在于,包括:通过所述服务器的应用层的应用接口接收来自终端的请求;根据所述请求中包括的服务系统信息,从所述服务器的多个子服务系统中调用目标子服务系统以处理所述请求,其中,所述多个子服务系统互相独立,且所述目标子服务系统为所述多个子服务系统中的至少一个子服务系统;所述服务器包括配置中心,用于将所述服务系统信息与所述多个子服务系统中的每个子服务系统的配置信息对应存储,所述配置信息包括:每个所述子服务系统的网络协议地址、每个所述子服务系统的远程过程调用协议接口、每个所述子服务系统的路径、每个所述子服务系统的路径下的服务列表中的至少一种信息,所述服务系统信息包括所述目标子服务系统的路径和/或所述目标子服务系统的服务列表,以及,所述多个子服务系统中的每个子服务系统均包括远程过程调用协议接口。2.根据权利要求1所述的请求处理方法,其特征在于,所述从所述服务器的多个子服务系统中调用目标子服务系统以处理所述请求,具体包括:所述应用层接收到所述请求后,将所述请求发送至所述配置中心,所述配置中心根据所述请求中的服务系统信息和每个所述子服务系统的配置信息确定所述目标子服务系统;所述配置中心在确定所述目标子服务系统后,通知所述应用层所述目标子服务系统,以使所述应用层通过所述目标子服务系统的远程过程调用协议接口调用所述目标子服务系统,以使所述目标子服务服务系统处理所述请求。3.根据权利要求1或2所述的请求处理方法,其特征在于,还包括:所述配置中心按照预定周期向所述多个子服务系统中的每个子服务系统发送“心跳”请求,并判断在第一预设时间内是否接收到来自每个所述子服务系统的“心跳”响应,若判断在第一所述预设时间内未接收到来自任一所述子服务系统的“心跳”响应,则统计在第二预设时间内连续未接收到任一所述子服务系统的“心跳”响应的次数,并在所述次数大于预设次数时,所述配置中心删除任一所述子服务系统的配置信息;以及所述配置中心在删除任一所述子服务系统的配置信息后,通知所述终端,以使所述终端删除与所述配置信息相对应的所述服务系统信息。4.根据权利要求3所述的请求处理方法,其特征在于,还包括:所述配置中心在接收到配置信息添加命令时,添加新的配置信息,并通知所述终端,以使所述终端添加与所述新的配置信息相对应的新的服务系统信息。5.一种请求处理装置,用于服...

【专利技术属性】
技术研发人员:郝学武
申请(专利权)人:畅捷通信息技术股份有限公司
类型:发明
国别省市:北京;11

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

1