CN106301947B - 业务信息处理***和方法 - Google Patents

业务信息处理***和方法 Download PDF

Info

Publication number
CN106301947B
CN106301947B CN201610795730.4A CN201610795730A CN106301947B CN 106301947 B CN106301947 B CN 106301947B CN 201610795730 A CN201610795730 A CN 201610795730A CN 106301947 B CN106301947 B CN 106301947B
Authority
CN
China
Prior art keywords
proxy server
server
service
service request
instance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610795730.4A
Other languages
English (en)
Other versions
CN106301947A (zh
Inventor
王志雄
宋威
邱戈川
肖桦
梁耀曾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Pinwei Software Co Ltd
Original Assignee
Guangzhou Pinwei Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Pinwei Software Co Ltd filed Critical Guangzhou Pinwei Software Co Ltd
Priority to CN201610795730.4A priority Critical patent/CN106301947B/zh
Publication of CN106301947A publication Critical patent/CN106301947A/zh
Application granted granted Critical
Publication of CN106301947B publication Critical patent/CN106301947B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种业务信息处理***,所述业务信息处理***包括:代理服务器,以及与所述代理服务器连接的客户端,所述客户端用于发送的业务请求至代理服务器;所述代理服务器用于根据所述业务请求从注册中心获取服务器的实例;所述代理服务器还用于根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。本发明还公开了一种业务信息处理方法。本发明将传统客户端中服务治理策略抽离,设置在代理服务器中,能够减少升级过程中的工作量和风险。

Description

业务信息处理***和方法
技术领域
本发明涉及通信技术领域,尤其涉及一种业务信息处理***和方法。
背景技术
传统C/S架构的RPC(Remote Procedure Call Protocol,远程过程调用协议)框架,客户端非常臃肿,它需要处理协议的序列化和反序列化,需要处理路由算法、隔离、熔断等服务治理的功能,但服务治理功能会不断的更新,使得客户端的版本也需要不断升级。
由于客户端部署非常庞大,每次客户端升级都会需要业务重新编译打包,然后升级非常多台机器,即使业务代码没有改变,这也需要对升级客户端版本进行升级,导致工作量和风险非常大。
发明内容
本发明的主要目的在于提出一种业务信息处理***和方法,旨在解决客户端版本升级时,工作量和风险非常大的技术问题。
为实现上述目的,本发明提供的一种业务信息处理***,所述业务信息处理***包括:代理服务器,以及与所述代理服务器连接的客户端,
所述客户端用于发送用户触发的业务请求至代理服务器;
所述代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
所述代理服务器还用于根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。
可选地,所述***还包括:所述目的服务器,
所述目的服务器用于从配置中心获取配置信息,并从所述安全中心获取安全策略;
所述目的服务器还用于根据所述配置信息和安全策略将自己的地址和端口注册至所述注册中心,并向所述注册中心发送目的服务器的实例。
可选地,所述代理服务器包括本地代理服务器和备份代理服务器,
在所述本地代理服务器正常运行时,所述客户端用于发送用户触发的业务请求至所述本地代理服务器,所述本地代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
或在本地代理服务器发生故障时,所述客户端用于发送用户触发的业务请求至所述备份代理服务器,所述备份代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例。
可选地,所述代理服务器还用于对所述业务请求进行解析,获得目的服务器的标识;
所述代理服务器还用于根据目的服务器的标识从注册中心获取目的服务器的实例。
可选地,所述注册中心为基于分布式应用程序协调服务的注册中心。
此外,为实现上述目的,本发明还提供一种业务信息处理方法,所述业务信息处理方法包括:
客户端发送用户触发的业务请求至代理服务器;
所述代理服务器根据所述业务请求从注册中心获取目的服务器的实例;
所述代理服务器根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。
可选地,所述根据所述业务请求从注册中心获取目的服务器的实例的步骤之前包括:
目的服务器从配置中心获取配置信息,并从所述安全中心获取安全策略;
目的服务器根据所述配置信息和安全策略将自己的地址和端口注册至所述注册中心,并向所述注册中心发送目的服务器的实例。
可选地,所述代理服务器包括本地代理服务器和备份代理服务器,
在所述本地代理服务器正常运行时,所述客户端用于发送用户触发的业务请求至所述本地代理服务器,所述本地代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
或在本地代理服务器发生故障时,所述客户端用于发送用户触发的业务请求至所述备份代理服务器,所述备份代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例。
可选地,所述代理服务器根据所述业务请求从注册中心获取目的服务器的实例的步骤包括:
所述代理服务器对所述业务请求进行解析,获得目的服务器的标识;
所述代理服务器根据目的服务器的标识从注册中心获取目的服务器的实例。
可选地,所述注册中心为基于分布式应用程序协调服务的注册中心。
本发明业务信息处理***包括:代理服务器,以及与所述代理服务器连接的客户端,所述客户端用于发送的业务请求至代理服务器;所述代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;所述代理服务器还用于根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。通过上述方式,本发明中在业务信息处理***中添加代理服务器,将传统客户端中服务治理策略抽离,设置在代理服务器中,客户端只产生对应的业务请求,并发送至代理服务器,代理服务器根据业务请求获取目的服务器的实例,并根据预设的服务治理策略对业务请求进行对应的处理,采用本发明代理服务器能够在软件版本升级时,可以只需要对代理服务器进行升级,因此能够减少升级过程中的工作量和风险。
附图说明
图1为本发明业务信息处理***第一实施例的***架构示意图;
图2为本发明实施例中业务信息处理方法的***处理流程时序示意图;
图3为本发明业务信息处理***第二实施例的***架构示意图;
图4为本发明实施例中业务信息处理***的逻辑架构示意图;
图5为本发明实施例中业务信息处理***的物理部署示意图;
图6为本发明业务信息处理方法第一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种业务信息处理***。
参照图1,图1为本发明业务信息处理***第一实施例的***架构示意图。
在本实施例中,该业务信息处理***包括:代理服务器200,以及与所述代理服务器200连接的客户端100,
所述客户端100用于发送业务请求至代理服务器200;
所述代理服务器200用于根据所述业务请求从所述代理服务器200中注册中心获取目的服务器的实例;
所述代理服务器200还用于根据所述代理服务器200中预设服务治理策略和所述实例对所述业务请求进行对应的处理。
传统C/S结构中,即客户端和目的服务器结构中,客户端非常臃肿,客户端需要处理协议的序列化和反序列化,需要处理路由算法、隔离、熔断等服务治理功能,即服务治理策略,本发明中将传统客户端中的服务治理策略抽离出来,设置至代理服务器中,客户端则变成瘦客户端。
本实施例中代理服务器200,即Proxy,完全跟业务代码无关,是单独的Java进程,单独升级,升级时无需客户端100进行任何处理。
在用户需要进行业务处理时,通过客户端100触发对应的功能,客户端100根据用户操作产生对应的业务请求,并将用户触发的业务请求发送至代理服务器200。代理服务器200接收到业务请求,则根据业务请求从代理服务器200中注册中心获取目的服务器的实例,目的服务器即对应的服务提供方,然后代理服务器200根据代理服务器200中预设服务治理策略和所述实例对所述业务请求进行对应的处理,本实施例中获取目的服务器的所有实例,以保证业务的进行。其中对所述业务请求进行对应的处理包括对所述业务请求进行转发、降级或拒绝。如将业务请求发送至目的服务器,则目的服务器根据接收到的业务请求反馈对应的内容至是代理服务器,由代理服务器发送至客户端。
处理流程时序图可以如图2所示:
客户端OSP Client进行序列化、监控埋点、安全签名、代理选择和异步发送。其中序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。监控埋点就是监控用户操作的每一步。安全签名是对发送的信息进行加密。代理选择是选择代理服务器。异步发送是一种通讯方式,异步双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,所以在发送的信息中就要有提示接收方开始接收的信息,如开始位,同时在结束时有停止位。
代理服务器OSP Proxy进行反序列头信息、降级熔断、降级处理、服务路由、监控埋点和异步发送。其中反序列头信息就是将客户端发送的信息中的序列头进行解析。降级熔断是由于某些原因使得服务出现了过载现象,为防止造成整个***故障,从而采用的一种保护措施,所以熔断亦称为过载保护。降级处理整体资源快不够了,先将某些服务先关掉,待整体资源足够时,再开启回来关掉的服务。服务路由就是可以自定义路由,通过定义路由将业务信息发送至指定的目的服务器。代理服务器向获取服务实例列表及服务配置,然后根据接收到的业务信息、服务实例和服务配置进行对应的处理。
目的服务器OSP应用则先进行反序列头信息、限流隔离、监控埋点、安全校验对接收到的业务信息进行验证,然后调用服务对通过验证的业务信息进行处理,然后进行返回数据、序列化返回数据和监控埋点。
其中,所述注册中心为基于分布式应用程序协调服务的注册中心。
基于Zookeeper的服务注册中心,可以实现服务的地址感知,错误感知,平滑升级,高可伸缩性,多版本支持。
进一步地,代理服务器200还用于对所述业务请求进行解析,获得目的服务器的标识;
代理服务器200还用于根据目的服务器的标识从注册中心获取目的服务器的实例。
具体地,代理服务器200在接收到业务请求时,对接收到的业务请求进行解析,获得客户端100所要访问的目的服务器的标识,目的服务器的标识至少包括目的服务器的地址或者名称。然后代理服务器200根据目的服务器的标识从注册中心获取目的服务器的实例,进一步地,保持实时更新目的服务器的实例。
需要特别说明的是,对比于传统的负载平衡器Load Balancer提供基本的负载均衡与HA(High Available,高可用性集群)能力,本发明Proxy提供了丰富的服务治理功能包括:
丰富的路由自定义功能:支持条件化的路由定义,负载均衡,权重调整,支持灰度发布,AB测试,黑白名单,跨机房路由等;
高可用与自我保护的机制:超时控制、重试、限流、熔断、降级、隔离;
服务监控,性能监控,故障快速定位支持;
服务配置:支持服务配置集中管理,动态下发;
服务安全:支持服务认证、授权、签名、加密传输的需求。
本发明业务信息处理***包括:代理服务器,以及与所述代理服务器连接的客户端,所述客户端用于发送的业务请求至代理服务器;所述代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;所述代理服务器还用于根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。通过上述方式,本发明中在业务信息处理***中添加代理服务器,将传统客户端中服务治理策略抽离,设置在代理服务器中,客户端只产生对应的业务请求,并发送至代理服务器,代理服务器根据业务请求获取目的服务器的实例,并根据预设的服务治理策略对业务请求进行对应的处理,采用本发明代理服务器能够在软件版本升级时,可以只需要对代理服务器进行升级,因此能够减少升级过程中的工作量和风险。
进一步地,参照图3,图3为本发明业务信息处理***第二实施例的***架构示意图。
基于本发明业务信息处理***第一实施例,该***还包括:目的服务器300,
所述目的服务器300用于从配置中心获取配置信息,并从所述安全中心获取安全策略;
所述目的服务器300还用于根据所述配置信息和安全策略将自身的地址和端口注册至所述注册中心,并向所述注册中心发送目的服务器的实例。
为使得业务信息处理***能够执行,在***运行时,目的服务器300需要从配置中心获取配置信息,并从所述安全中心获取安全策略,然后根据获取到的配置信息和安全策略将自己的地址和端口注册至所述注册中心,然后将目的服务器自身的实例发送至注册中心。其中,配置中心也可以设置在代理服务器中,当然也可以设置在其他终端/网络中。
具体地,该业务信息处理***的逻辑架构可以如图4所示。
OSP服务端,即目的服务器,服务端包含服务容器和服务本身。服务容器提供服务本身基本以业务逻辑为主,由业务团队实现。
在服务启动时,每个服务首先从配置中心获取配置,从安全中心获取安全策略,然后将自己的地址和端口注册到服务注册中心。
OSP Proxy,即代理服务器,服务客户端将请求发送至代理服务器中OSP代理进程,服务代理层从注册中心获取当前服务提供方的实例(并保持实时更新),根据服务治理逻辑对请求进行处理(转发、降级或拒绝),服务治理的实现保持对客户端和服务端完全透明。
OSP Client,即客户端,由于客户端是业务应用的一部分,为避免框架代码改动对业务方的影响,服务客户端遵循的首要设计原则是单纯简单。除了必须的功能如通信协议、序列化、代理层容错以及监控埋点外,其他高级功能全部在代理层实现。从服务开发者的角度,客户端SDK由osp-idlc自动生成,无额外工作;从服务使用者的角度,只需将服务客户端SDK作为依赖引入,即可对服务进行调用,极少额外的工作。
进一步地,代理服务器200包括本地代理服务器210和备份代理服务器220,在所述本地代理服务器210正常运行时,所述客户端100用于发送用户触发的业务请求至所述本地代理服务器210,所述本地代理服务器210用于根据所述业务请求从注册中心获取目的服务器300的实例;
在本地代理服务器210发生故障时,所述客户端100用于发送用户触发的业务请求至所述备份代理服务器220,所述备份代理服务器220用于根据所述业务请求从注册中心获取目的服务器300的实例。
本实施例中,代理服务器200包括两种类型的代理服务器:本地代理服务器210和备份代理服务器220,服务器300从配置中心获取配置信息,并从所述安全中心获取安全策略,在所述本地代理服务器210正常运行时,所述客户端100发送用户触发的业务请求至所述本地代理服务器210,在本地代理服务器210发生故障时,客户端100则发送用户触发的业务请求至所述备份代理服务器220,所述备份代理服务器220则根据所述业务请求从注册中心获取目的服务器300的实例。
具体地,该***物理部署图可以如图5所示。
OSP服务端,即目的服务器,基于无状态服务的理念,可以无限扩展,也可以通过代理层的错误感知和负载均衡等功能自动摘出有问题的目的服务器;开发团队无需做特殊处理,也不必部署负载均衡器。
OSP Proxy,即代理服务器,代理层由本地Local Proxy和集中式备份集群RemoteProxy组成,本地代理以独立进程方式部署在每一台调用者服务器上,只为本机调用者服务;集中式备份集群每个机房部署一个,由集群技术LVS提供负载均衡,为本地代理提供容错能力。在本地代理发生故障时,调用方切换到使用集中式备份集群完成服务调用。代理层从注册中心获取各机房的服务实例信息,并优先选择使用本机房服务实例,在本机房无可用实例时选择使用其他机房实例。
OSP Client,即客户端,客户端内嵌在业务应用里,通过SDK向使用者提供调用接口和对象模型;从使用者的角度,只需进行调用。客户端不与配置中心产生联系,但会与Salus连接,并将监控信息上报到监控报警***Mercury。配置中心集中部署在一个机房内,在远程机房可用选择部署ZK观察集群,以提高性能和降低网络影响。Mercury集中部署在一个机房内。
本发明进一步提供一种业务信息处理方法。
参照图6,图6为本发明业务信息处理方法第一实施例的流程示意图。
在本实施例中,该业务信息处理方法包括:
步骤S10,客户端发送用户触发的业务请求至代理服务器;
步骤S20,所述代理服务器根据所述业务请求注册中心获取目的服务器的实例;
步骤S30,所述代理服务器根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。
传统C/S结构中,即客户端和目的服务器结构中,客户端非常臃肿,客户端需要处理协议的序列化和反序列化,需要处理路由算法、隔离、熔断等服务治理功能,即服务治理策略,本发明中将传统客户端中的服务治理策略抽离出来,设置至代理服务器中,客户端则变成瘦客户端。
本实施例中代理服务器,即Proxy,完全跟业务代码无关,是单独的Java进程,单独升级,升级时无需客户端进行任何处理。
在用户需要进行业务处理时,通过客户端触发对应的功能,客户端根据用户操作产生对应的业务请求,并将用户触发的业务请求发送至代理服务器。代理服务器接收到业务请求,则根据业务请求从注册中心获取目的服务器的实例,目的服务器即对应的服务提供方,然后代理服务器根据代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理,本实施例中获取目的服务器的所有实例,以保证业务的进行。其中对所述业务请求进行对应的处理包括对所述业务请求进行转发、降级或拒绝。如将业务请求发送至目的服务器,则目的服务器根据接收到的业务请求反馈对应的内容至是代理服务器,由代理服务器发送至客户端。
处理流程时序图可以如图2所示:
客户端OSP Client进行序列化、监控埋点、安全签名、代理选择和异步发送。其中序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。监控埋点就是监控用户操作的每一步。安全签名是对发送的信息进行加密。代理选择是选择代理服务器。异步发送是一种通讯方式,异步双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,所以在发送的信息中就要有提示接收方开始接收的信息,如开始位,同时在结束时有停止位。
代理服务器OSP Proxy进行反序列头信息、降级熔断、降级处理、服务路由、监控埋点和异步发送。其中反序列头信息就是将客户端发送的信息中的序列头进行解析。降级熔断是由于某些原因使得服务出现了过载现象,为防止造成整个***故障,从而采用的一种保护措施,所以熔断亦称为过载保护。降级处理整体资源快不够了,先将某些服务先关掉,待整体资源足够时,再开启回来关掉的服务。服务路由就是可以自定义路由,通过定义路由将业务信息发送至指定的目的服务器。代理服务器向获取服务实例列表及服务配置,然后根据接收到的业务信息、服务实例和服务配置进行对应的处理。
目的服务器OSP应用则先进行反序列头信息、限流隔离、监控埋点、安全校验对接收到的业务信息进行验证,然后调用服务对通过验证的业务信息进行处理,然后进行返回数据、序列化返回数据和监控埋点。
其中,所述注册中心为基于分布式应用程序协调服务的注册中心。
基于Zookeeper的服务注册中心,可以实现服务的地址感知,错误感知,平滑升级,高可伸缩性,多版本支持。
进一步地,代理服务器根据所述业务请求从注册中心获取目的服务器的实例的步骤包括:
代理服务器对所述业务请求进行解析,获得目的服务器的标识;
代理服务器根据目的服务器的标识从注册中心获取目的服务器的实例。
具体地,代理服务器在接收到业务请求时,对接收到的业务请求进行解析,获得客户端所要访问的目的服务器的标识,目的服务器的标识至少包括目的服务器的地址或者名称。然后代理服务器根据目的服务器的标识从注册中心获取目的服务器的实例,进一步地,保持实时更新目的服务器的实例。
需要特别说明的是,对比于传统的负载平衡器LoadBalancer提供基本的负载均衡与HA(High Available,高可用性集群)能力,本发明Proxy提供了丰富的服务治理功能包括:
丰富的路由自定义功能:支持条件化的路由定义,负载均衡,权重调整,支持灰度发布,AB测试,黑白名单,跨机房路由等;
高可用与自我保护的机制:超时控制、重试、限流、熔断、降级、隔离;
服务监控,性能监控,故障快速定位支持;
服务配置:支持服务配置集中管理,动态下发;
服务安全:支持服务认证、授权、签名、加密传输的需求。
本发明业务信息处理***包括:代理服务器,以及与所述代理服务器连接的客户端,所述客户端用于发送的业务请求至代理服务器;所述代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;所述代理服务器还用于根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理。通过上述方式,本发明中在业务信息处理***中添加代理服务器,将传统客户端中服务治理策略抽离,设置在代理服务器中,客户端只产生对应的业务请求,并发送至代理服务器,代理服务器根据业务请求获取目的服务器的实例,并根据预设的服务治理策略对业务请求进行对应的处理,采用本发明代理服务器能够在软件版本升级时,可以只需要对代理服务器进行升级,因此能够减少升级过程中的工作量和风险。
进一步地,基于本发明业务信息处理方法第一实施例,该方法还包括:
所述目的服务器从配置中心获取配置信息,并从所述安全中心获取安全策略;
所述目的服务器根据所述配置信息和安全策略将自己的地址和端口注册至所述注册中心,并向所述注册中心发送目的服务器的实例。
为使得业务信息处理***能够执行,在***运行时,目的服务器需要从配置中心获取配置信息,并从所述安全中心获取安全策略,然后根据获取到的配置信息和安全策略将自己的地址和端口注册至所述注册中心,然后将目的服务器自身的实例发送至注册中心。其中,配置中心也可以设置在代理服务器中,当然也可以设置在其他终端/网络中。
具体地,该业务信息处理***的逻辑架构可以如图4所示。
OSP服务端,即目的服务器,服务端包含服务容器和服务本身。服务容器提供服务本身基本以业务逻辑为主,由业务团队实现。
在服务启动时,每个服务首先从配置中心获取配置,从安全中心获取安全策略,然后将自己的地址和端口注册到服务注册中心。
OSP Proxy,即代理服务器,服务客户端将请求发送至代理服务器中OSP代理进程,服务代理层从注册中心获取当前服务提供方的实例(并保持实时更新),根据服务治理逻辑对请求进行处理(转发、降级或拒绝),服务治理的实现保持对客户端和服务端完全透明。
OSP Client,即客户端,由于客户端是业务应用的一部分,为避免框架代码改动对业务方的影响,服务客户端遵循的首要设计原则是单纯简单。除了必须的功能如通信协议、序列化、代理层容错以及监控埋点外,其他高级功能全部在代理层实现。从服务开发者的角度,客户端SDK由osp-idlc自动生成,无额外工作;从服务使用者的角度,只需将服务客户端SDK作为依赖引入,即可对服务进行调用,极少额外的工作。
进一步地,代理服务器包括本地代理服务器和备份代理服务器,在所述本地代理服务器正常运行时,所述客户端用于发送用户触发的业务请求至所述本地代理服务器,所述本地代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
在本地代理服务器发生故障时,所述客户端用于发送用户触发的业务请求至所述备份代理服务器,所述备份代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例。
本实施例中,代理服务器包括两种类型的代理服务器:本地代理服务器和备份代理服务器,服务器从配置中心获取配置信息,并从所述安全中心获取安全策略,在所述本地代理服务器正常运行时,所述客户端发送用户触发的业务请求至所述本地代理服务器,在本地代理服务器发生故障时,客户端则发送用户触发的业务请求至所述备份代理服务器,所述备份代理服务器则根据所述业务请求从注册中心获取目的服务器的实例。
具体地,该***物理部署图可以如图5所示。
OSP服务端,即目的服务器,基于无状态服务的理念,可以无限扩展,也可以通过代理层的错误感知和负载均衡等功能自动摘出有问题的目的服务器;开发团队无需做特殊处理,也不必部署负载均衡器。
OSP Proxy,即代理服务器,代理层由本地Local Proxy和集中式备份集群RemoteProxy组成,本地代理以独立进程方式部署在每一台调用者服务器上,只为本机调用者服务;集中式备份集群每个机房部署一个,由集群技术LVS提供负载均衡,为本地代理提供容错能力。在本地代理发生故障时,调用方切换到使用集中式备份集群完成服务调用。代理层从注册中心获取各机房的服务实例信息,并优先选择使用本机房服务实例,在本机房无可用实例时选择使用其他机房实例。
OSP Client,即客户端,客户端内嵌在业务应用里,通过SDK向使用者提供调用接口和对象模型;从使用者的角度,只需进行调用。客户端不与配置中心产生联系,但会与Salus连接,并将监控信息上报到监控报警***Mercury。配置中心集中部署在一个机房内,在远程机房可用选择部署ZK观察集群,以提高性能和降低网络影响。Mercury集中部署在一个机房内。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (6)

1.一种业务信息处理***,其特征在于,所述业务信息处理***包括:代理服务器、目的服务器以及与所述代理服务器连接的客户端,
所述客户端用于发送用户触发的业务请求至代理服务器,其中,所述客户端将所述业务请求发送至代理服务器的流程包括序列化、监控埋点、安全签名、代理选择和异步发送;
所述代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
所述代理服务器还用于根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理;
所述代理服务器还用于对所述业务请求进行解析,获得目的服务器的标识;
所述代理服务器还用于根据目的服务器的标识从注册中心获取目的服务器的实例,并实时更新所述实例;
所述目的服务器用于从配置中心获取配置信息,并从安全中心获取安全策略;
所述目的服务器还用于根据所述配置信息和安全策略将自身的地址和端口注册至所述注册中心,并向所述注册中心发送服务器的实例。
2.如权利要求1所述的业务信息处理***,其特征在于,所述代理服务器包括本地代理服务器和备份代理服务器,
在所述本地代理服务器正常运行时,所述客户端用于发送用户触发的业务请求至所述本地代理服务器,所述本地代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
在本地代理服务器发生故障时,所述客户端用于发送用户触发的业务请求至所述备份代理服务器,所述备份代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例。
3.如权利要求1-2中任一项所述的业务信息处理***,其特征在于,所述注册中心为基于分布式应用程序协调服务的注册中心。
4.一种业务信息处理方法,其特征在于,所述业务信息处理方法包括:
客户端发送用户触发的业务请求至代理服务器,其中,所述客户端将所述业务请求发送至代理服务器的流程包括序列化、监控埋点、安全签名、代理选择和异步发送;
所述代理服务器根据所述业务请求从注册中心获取目的服务器的实例,并实时更新所述实例;
所述代理服务器根据所述代理服务器中预设服务治理策略和所述实例对所述业务请求进行对应的处理;
所述代理服务器对所述业务请求进行解析,获得目的服务器的标识;
所述代理服务器根据目的服务器的标识从注册中心获取目的服务器的实例;
其中,所述根据所述业务请求从注册中心获取目的服务器的实例的步骤之前包括:
目的服务器从配置中心获取配置信息,并从安全中心获取安全策略;
目的服务器根据所述配置信息和安全策略将自己的地址和端口注册至所述注册中心,并向所述注册中心发送目的服务器的实例。
5.如权利要求4所述的业务信息处理方法,其特征在于,所述代理服务器包括本地代理服务器和备份代理服务器,
在所述本地代理服务器正常运行时,所述客户端用于发送用户触发的业务请求至所述本地代理服务器,所述本地代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例;
在本地代理服务器发生故障时,所述客户端用于发送用户触发的业务请求至所述备份代理服务器,所述备份代理服务器用于根据所述业务请求从注册中心获取目的服务器的实例。
6.如权利要求4-5中任一项所述的业务信息处理方法,其特征在于,所述注册中心为基于分布式应用程序协调服务的注册中心。
CN201610795730.4A 2016-08-31 2016-08-31 业务信息处理***和方法 Active CN106301947B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610795730.4A CN106301947B (zh) 2016-08-31 2016-08-31 业务信息处理***和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610795730.4A CN106301947B (zh) 2016-08-31 2016-08-31 业务信息处理***和方法

Publications (2)

Publication Number Publication Date
CN106301947A CN106301947A (zh) 2017-01-04
CN106301947B true CN106301947B (zh) 2023-08-25

Family

ID=57672487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610795730.4A Active CN106301947B (zh) 2016-08-31 2016-08-31 业务信息处理***和方法

Country Status (1)

Country Link
CN (1) CN106301947B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109600407A (zh) * 2017-09-30 2019-04-09 北京国双科技有限公司 基于虚拟服务器的请求分发方法和装置
CN109995713B (zh) * 2017-12-30 2020-11-27 华为技术有限公司 一种微服务框架中的服务处理方法及相关设备
CN109240765B (zh) * 2018-08-28 2021-08-10 中国联合网络通信集团有限公司 服务资源的熔断方法、装置、设备及计算机可读存储介质
CN109660617A (zh) * 2018-12-18 2019-04-19 中电科华云信息技术有限公司 一种基于服务器集群的消息推送方法
CN109618005B (zh) * 2019-01-18 2020-12-08 华为终端有限公司 调用服务器的方法和代理服务器
CN110324397B (zh) * 2019-03-21 2021-09-21 国网山东省电力公司 基于动态连接的智能变电站站控层应用服务接口访问方法
CN112491940B (zh) * 2019-09-12 2024-05-24 北京京东振世信息技术有限公司 代理服务器的请求转发方法及装置、存储介质及电子设备
CN112272228A (zh) * 2020-10-22 2021-01-26 北京神州数字科技有限公司 分布式注册中心架构
CN112202929B (zh) * 2020-12-01 2021-03-26 湖南新云网科技有限公司 一种微服务架构中的服务访问方法、装置、设备
CN112506709B (zh) * 2020-12-16 2021-11-23 北京航天智造科技发展有限公司 微服务治理方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571277B1 (en) * 1999-10-19 2003-05-27 International Business Machines Corporation Method and apparatus for scaling universal plug and play networks using atomic proxy replication
CN105099988A (zh) * 2014-04-24 2015-11-25 阿里巴巴集团控股有限公司 用于支持灰度发布的方法、访问方法以及装置和***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0610302D0 (en) * 2006-05-24 2006-07-05 Ibm A method, apparatus and computer program for validating that a clients request has been routed to an appropriate server
CN101483860B (zh) * 2009-01-23 2010-09-01 清华大学 Ims网络中基于sip安全策略等级的协商控制方法
CN102185900B (zh) * 2011-04-18 2013-07-17 北京新媒传信科技有限公司 一种应用服务平台***和一种开发应用服务的方法
CN103944890B (zh) * 2014-04-08 2017-03-08 山东乾云启创信息科技股份有限公司 基于客户端/服务器模式的虚拟交互***及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571277B1 (en) * 1999-10-19 2003-05-27 International Business Machines Corporation Method and apparatus for scaling universal plug and play networks using atomic proxy replication
CN105099988A (zh) * 2014-04-24 2015-11-25 阿里巴巴集团控股有限公司 用于支持灰度发布的方法、访问方法以及装置和***

Also Published As

Publication number Publication date
CN106301947A (zh) 2017-01-04

Similar Documents

Publication Publication Date Title
CN106301947B (zh) 业务信息处理***和方法
Ray et al. SDN/NFV architectures for edge-cloud oriented IoT: A systematic review
US11223541B2 (en) Virtual network function network element management method, apparatus, and system
US20230104568A1 (en) Cloud native software-defined network architecture for multiple clusters
US10503545B2 (en) Universal security agent
EP3804282A1 (en) Native blockchain platform for improving workload mobility in telecommunication networks
US20190171435A1 (en) Distributed upgrade in virtualized computing environments
US8612549B2 (en) Mashup service device and system, and method for establishing and using mashup service
US20130166703A1 (en) System And Method For Management Of Network-Based Services
US20070011322A1 (en) Method and system for providing access to web services
CN113039763B (zh) 使用nf之间的直接信令的nf服务消费者重启检测
US20050193137A1 (en) Protocol stack with modification facility
WO2007001941A9 (en) Identity brokering in a network element
US11637761B2 (en) Systems and methods to deploy cloud-native microservices for communication services on scale
US20220109620A1 (en) Sdwan overlay routing service
JP6826207B2 (ja) ルーティング方法および装置
CN113556359B (zh) 一种通讯协议转换方法、设备、***及网关设备
EP4160409A1 (en) Cloud native software-defined network architecture for multiple clusters
CN116633775B (zh) 一种多容器网络接口的容器通信方法及***
Alliance Service-based architecture in 5G
CN111107611A (zh) 一种选择用户面功能的方法和装置
CN110995829A (zh) 实例调用方法、装置及计算机存储介质
US11689943B2 (en) Network function redundancy using binding header enhancements
Anisetti et al. Orchestration of data-intensive pipeline in 5G-enabled edge continuum
WO2024103943A1 (zh) 一种业务处理方法、装置、存储介质及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20171206

Address after: 510000 Guangzhou City, Guangzhou, Guangdong, Fangcun Avenue, one of the 314 self compiled

Applicant after: GUANGZHOU PINWEI SOFTWARE Co.,Ltd.

Address before: Liwan District Fangcun Huahai street Guangzhou city Guangdong province 510000 No. 20 self 1-5 building (only for office use)

Applicant before: GUANGZHOU VIPSHOP INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant