系统业务隔离的方法、装置、电子设备和可读存储介质制造方法及图纸

技术编号:19121630 阅读:33 留言:0更新日期:2018-10-10 04:59
本发明专利技术提供一种系统业务隔离的方法、装置、电子设备和可读存储介质,能够实现核心业务和非核心业务在同一个系统内的隔离,从而确保了系统的稳定性,并且减小了服务器、网络等资源消耗,极大地节约了成本。本发明专利技术的系统业务隔离的方法包括:接收业务请求,并获取所述请求的请求类型;根据所述请求类型将所述请求分发给对应的线程池,以便所述对应的线程池分配线程来处理所述请求。

【技术实现步骤摘要】
系统业务隔离的方法、装置、电子设备和可读存储介质
本专利技术涉及计算机和计算机软件
,特别地涉及一种系统业务隔离的方法、装置、电子设备和可读存储介质。
技术介绍
在追求极致用户体验的互联网时代,系统运行的稳定性变得极其重要。然而系统故障也是不可避免的,当系统出现故障时,如何限制故障的影响范围,不出现滚雪球效应,将影响降至最低,是系统开发者首要面对的问题,需要可行有效的解决方案。目前,比较有效的解决办法是进行服务隔离,以保证只有出问题的服务不可用,其他服务还是可用的。常见的服务隔离的方式有系统拆分(进程隔离)、集群隔离、机房隔离等。目前,最常用的服务隔离的解决方案是进行系统拆分,并根据业务类型将系统拆分成核心业务系统集群和非核心业务系统集群,从而通过集群隔离或机房隔离的方式实现业务隔离。如图1所示,是现有的服务隔离的实现原理示意图,其详细步骤如下:1、分析业务类型和关联性,将业务归类为核心业务、非核心业务;2、编写核心业务相关的程序代码,实现核心业务流程;3、部署核心业务代码到核心业务系统集群,提供核心业务服务,处理核心业务请求;4、编写非核心业务相关的程序代码,实现非核心业务流程;5、部署非核心业务代码到非核心业务系统集群,提供非核心业务服务,处理非核心业务请求。在实现本专利技术的过程中,专利技术人发现现有技术存在如下技术问题:1、集群隔离、机房隔离的方式对硬件资源需求较大,成本较高,不太适用于中小企业;2、集群隔离、机房隔离的方式对大型系统非常实用,但对于中小型业务系统中核心业务、非核心业务在同一个系统时,无法进行业务隔离。
技术实现思路
有鉴于此,本专利技术提供一种系统业务隔离的方法、装置、电子设备和可读存储介质,能够实现核心业务和非核心业务在同一个系统内的隔离,从而确保了系统的稳定性,并且减小了服务器、网络等资源消耗,极大地节约了成本。为实现上述目的,根据本专利技术的一个方面,提供了一种系统业务隔离的方法。一种系统业务隔离的方法,包括:接收业务请求,并获取所述请求的请求类型;根据所述请求类型将所述请求分发给对应的线程池,以便所述对应的线程池分配线程来处理所述请求。可选地,获取所述请求的请求类型包括:根据所述请求的标识,从所述请求的属性信息中获取所述请求的请求类型。可选地,所述请求类型包括:核心业务请求和非核心业务请求。可选地,所述属性信息包括:请求标识、请求名称、请求描述和请求类型。可选地,所述线程通过调用相应的业务模块来处理所述请求。可选地,所述线程在处理完所述请求后,回收到所述线程池中。根据本专利技术的另一方面,提供了一种系统业务隔离的装置。一种系统业务隔离的装置,包括:请求接收模块,用于接收业务请求,并获取所述请求的请求类型;请求处理模块,用于根据所述请求类型将所述请求分发给对应的线程池,以便所述对应的线程池分配线程来处理所述请求。可选地,所述请求接收模块还用于:根据所述请求的标识,从所述请求的属性信息中获取所述请求的请求类型。可选地,所述请求类型包括:核心业务请求和非核心业务请求。可选地,所述属性信息包括:请求标识、请求名称、请求描述和请求类型。可选地,所述线程通过调用相应的业务模块来处理所述请求。可选地,所述线程在处理完所述请求后,回收到所述线程池中。根据本专利技术的又一方面,提供了一种电子设备。一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行本专利技术所提供的系统业务隔离的方法。根据本专利技术的再一方面,提供了一种非暂态计算机可读存储介质。一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行本专利技术所提供的系统业务隔离的方法。上述专利技术中的一个实施例具有如下优点或有益效果:通过不同的线程池来管理核心业务线程和非核心业务线程,使核心业务和非核心业务的处理独立运行,互不干扰,通过线程隔离实现在同一个系统内,核心业务和非核心业务的隔离,从而确保了系统的稳定性;另外,通过使用线程池进行线程资源管理,控制核心业务和非核心业务的资源分配,从而减小了服务器、网络等资源消耗,极大地节约了成本。上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。附图说明附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:图1是现有的服务隔离的实现原理示意图;图2是根据本专利技术实施例的系统业务隔离的原理实现架构图;图3是根据本专利技术实施例的系统业务隔离的方法的主要步骤示意图;图4是根据本专利技术实施例的业务请求处理流程图;图5是根据本专利技术实施例的系统业务隔离的装置的主要模块示意图;图6是本专利技术实施例所提供的系统业务隔离的方法的电子设备的硬件结构示意图。具体实施方式以下结合附图对本专利技术的示范性实施例做出说明,其中包括本专利技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本专利技术的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。为了解决现有技术中存在的问题,本专利技术提出了一种在同一个系统内,对核心业务和非核心业务进行隔离的方法。本专利技术实施例的技术方案的核心思路是以线程的维度对业务进行隔离,把业务分成核心业务和非核心业务,提供核心业务线程进行核心业务处理、非核心业务线程进行非核心业务处理,并使用线程池进行线程资源管理,控制核心业务和非核心业务的资源分配。当非核心业务出现问题时,不会影响到核心业务的执行。下面结合附图介绍本专利技术实施例的具体实施过程。图2是根据本专利技术实施例的系统业务隔离的原理实现架构图。如图2所示,本专利技术实施例在进行系统业务隔离时,主要涉及的模块包括:请求分发模块、属性库、配置文件、业务队列、线程池和业务模块,下面将逐一进行介绍。1、请求分发模块:主要负责业务请求的接收和分发,并根据业务请求标识(比如:统一资源标识符URI,UniformResourceIdentifier)从属性库中加载业务请求的属性信息,根据属性信息中的请求类型来确定将该业务请求放入核心业务队列或非核心业务队列;2、属性库:主要用于从配置文件中加载业务请求的属性信息,并将属性信息存储在内存中,以加快数据读取速度,提高系统性能;同时,属性库还提供根据业务请求标识获取业务请求的属性信息的数据接口,以供请求分发模块调用;3、配置文件:主要用于存储业务请求的属性信息,属性信息的内容例如包括:请求标识、请求名称、请求描述、请求类型(核心业务/非核心业务)等;4、业务队列:主要用于根据业务请求的先后顺序,把业务请求分发给线程池中的线程进行处理,当业务请求过多未能及时处理时,可在业务队列中进行排队,并且,业务队列的大小可根据具体业务的需求情况进行设置。根据业务请求的类型,业务队列可分为核心业务队列和非核心业务队列;5、线程池:主要用于分配和管理业务线程,根据业务请求的类型,分为核心业务线程池和非核心业务线程池。核心业务线程池负责核心业务线程的管理和调度,核心业务线程通过调用核心业务模块来处理核心业务;非核心业务线程池负责非核心业务线程的管理和本文档来自技高网...
系统业务隔离的方法、装置、电子设备和可读存储介质

【技术保护点】
1.一种系统业务隔离的方法,其特征在于,包括:接收业务请求,并获取所述请求的请求类型;根据所述请求类型将所述请求分发给对应的线程池,以便所述对应的线程池分配线程来处理所述请求。

【技术特征摘要】
1.一种系统业务隔离的方法,其特征在于,包括:接收业务请求,并获取所述请求的请求类型;根据所述请求类型将所述请求分发给对应的线程池,以便所述对应的线程池分配线程来处理所述请求。2.根据权利要求1所述的方法,其特征在于,获取所述请求的请求类型包括:根据所述请求的标识,从所述请求的属性信息中获取所述请求的请求类型。3.根据权利要求1或2所述的方法,其特征在于,所述请求类型包括:核心业务请求和非核心业务请求。4.根据权利要求2所述的方法,其特征在于,所述属性信息包括:请求标识、请求名称、请求描述和请求类型。5.根据权利要求1所述的方法,其特征在于,所述线程通过调用相应的业务模块来处理所述请求。6.根据权利要求1所述的方法,其特征在于,所述线程在处理完所述请求后,回收到所述线程池中。7.一种系统业务隔离的装置,其特征在于,包括:请求接收模块,用于接收业务请求,并获取所述请求的请求类型;请求处理模块,用于根据所述请求类型将所述请求分发给对应的线程池,以便所述对应的线程池分配线程来处理所述请求。8.根据...

【专利技术属性】
技术研发人员:贺长荣
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

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

1