一种业务处理方法、装置、系统、设备及存储介质与流程

文档序号:33101649发布日期:2023-02-01 00:47阅读:19来源:国知局
一种业务处理方法、装置、系统、设备及存储介质与流程

1.本发明涉及web应用技术领域,尤其涉及一种业务处理方法、装置、系统、设备及存储介质。


背景技术:

2.近年来随着互联网技术不断创新发展,用户需求不断多样化,在互联网竞争的大环境中,丰富的系统功能才能得到用户的青睐。随着系统业务的增多,代码量不断增加,应用程序渐渐变得臃肿,各功能耦合度高,系统的性能和维护成本收到限制,限制了系统新增新业务的能力,微服务架构作为一种分布式架构方案应运而生。
3.现有技术中,在微服务架构下采用主分站点模式,主站点将登录生成的会话信息存储到redis服务器中,对会话信息进行管理。主分站点间会话共享,允许所有分站点微服务访问服务器,获取会话信息。采用redis管理会议信息,需要允许其他分站点微服务访问主站点的redis,各微服务间耦合性大,增加运维成本,没有真正实现主分站点部署。另外,对于权限控制,分站点后端需要频繁调用主站点提供的菜单权限查询接口查询客户是否具有分站点的菜单权限,主分站点间频繁的数据交互加重服务器负担,较大影响了主分站点的性能,且增加了分站点对主站点依赖,业务模块间耦合性大。


技术实现要素:

4.本发明提供了一种业务处理方法、装置、系统、设备及存储介质,实现了在实现数据一致性的前提下,减少主分站点耦合度,并保证通信安全。
5.第一方面,本实施例提供了一种业务处理方法,应用于微服务架构下的分站点,所述方法包括:
6.当接收到待处理业务的页面进入操作时,根据所述待处理业务的业务标识,确定用户对所述待处理业务的处理权限;
7.若所述用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,所述会话标识为当用户在主站点登录时由主站点所生成;
8.根据所述用户信息,对所述待处理业务进行处理。
9.第二方面,本实施例提供了一种业务处理装置,配置于微服务架构下的分站点中,所述装置包括:
10.权限确定模块,用于当接收到待处理业务的页面进入操作时,根据所述待处理业务的业务标识,确定用户对所述待处理业务的处理权限;
11.信息确定模块,用于若所述用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,所述会话标识为当用户在主站点登录时由主站点所生成;
12.处理模块,用于根据所述用户信息,对所述待处理业务进行处理。
13.第三方面,本发明实施例还提供一种微服务系统,所述系统包括主站点及至少一
个分站点;
14.所述主站点用于接收用户的登录操作,在用户登录后生成会话标识并存储所述用户关联的权限存储表;
15.所述分站点包括:权限确定模块、信息确定模块以及处理模块;其中,
16.权限确定模块,用于当接收到待处理业务的页面进入操作时,根据所述待处理业务的业务标识,确定用户对所述待处理业务的处理权限;
17.信息确定模块,用于若所述用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,所述会话标识为当用户在主站点登录时由主站点所生成;
18.处理模块,用于根据所述用户信息,对所述待处理业务进行处理。
19.第四方面,本发明实施例还提供一种电子设备,作为微服务架构下的分站点,包括:
20.一个或多个处理器;
21.存储装置,用于存储一个或多个程序;
22.所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器用于执行如第一方面实施例所述的业务处理方法。
23.第五方面,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所述的业务处理方法。
24.本发明实施例公开了一种业务处理方法、装置、系统、设备及存储介质,该方法包括:当接收到待处理业务的页面进入操作时,根据所述待处理业务的业务标识,确定用户对所述待处理业务的处理权限;若所述用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,所述会话标识为当用户在主站点登录时由主站点所生成;根据所述用户信息,对所述待处理业务进行处理。上述技术方案,在使用微服务架构开发部署系统时,分站点通过业务标识在前端调用主站点的接口获取用户权限,不经过后端,有效减少请求数量,优化服务器性能,并在有权限时通过会话标识获取客户信息,在实现数据一致性的前提下,减少主分站点耦合度,减少主分站点后端间的数据交互,减轻服务器的负担,并保证通信安全,便于系统扩展业务功能。
25.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
26.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.图1为本发明实施例一提供的一种业务处理方法的流程示意图;
28.图2为本发明实施例二提供的一种业务处理方法的流程示意图;
29.图3为本发明实施例二提供的某场景业务处理步骤的示例图;
30.图4为本发明实施例三提供的一种业务处理装置的结构示意图;
31.图5为本发明实施例四提供的一种微服务系统的结构示意图;
32.图6为本发明实施例五提供的一种电子设备的结构示意图。
具体实施方式
33.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
34.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“目标”、“原始”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
35.微服务架构根据业务功能分类,包装成高内聚低耦合的模块单元,使不同功能模块部署在不同的服务器,业务数据存储在各自的数据库,各微服务分归不同的业务团队负责,实现了团队独立、技术独立、数据独立和部署独立。各微服务间的数据通信问题也随之而来,如何更加安全高效地实现各微服务之间的数据通信,保证业务和用户数据一致为系统研发人员所研究。
36.微服务架构下,不同团队负责同一系统的不同功能模块,为了方便开发运维,将系统分为主站点和分站点进行开发,主分站点分开独立部署,主站点承担用户登录、菜单控制、权限校验等基础功能的开发,分站点承担具体的业务功能。在主分站点模式下,主站点和分站点为两个独立的站点系统,主站点为分站点提供菜单入口,客户只能通过主站点访问分站点,不能独立为客户提供服务。
37.现有技术中,主分站点之间用户权限和用户信息的获取方式是:1、主站点将登录生成的会话信息session存储到redis服务器中,对session进行管理。2、主分站点间会话共享,允许所有分站点微服务访问redis服务器,获取session。3、分站点根据session,判断用户登录状态,在已登录的状态下,执行后续请求逻辑。4、分站点后端将客户信息作为请求参数,调用主站点菜单权限查询接口,若主站点返回有该菜单的权限,继续执行后续分站点的业务逻辑请求。5、若主站点的菜单权限查询接口返回没有权限,返回错误信息给前端,分站点前端提示客户没有该功能权限。
38.考虑到采用redis管理session,需要允许其他分站点微服务访问主站点的redis,各微服务间耦合性大,增加运维成本,没有真正实现主分站点部署。另外,对于权限控制,分站点后端需要频繁调用主站点提供的菜单权限查询接口查询客户是否具有分站点的菜单权限,主分站点间频繁的数据交互加重服务器负担,较大影响了主分站点的性能,且增加了分站点对主站点依赖,业务模块间耦合性大。
39.实施例一
40.图1为本发明实施例一提供的一种业务处理方法的流程示意图,本实施例适用于对微服务架构下主分站点之间实现数据一致性且减少主分站点耦合度的情况,该方法可以由业务处理装置来执行,该装置可以由硬件和/或软件实现,并一般集成在分站点中。
41.如图1所示,本实施例一提供的一种业务处理方法,具体可以包括以下步骤:
42.s110、当接收到待处理业务的页面进入操作时,根据待处理业务的业务标识,确定用户对待处理业务的处理权限。
43.为了更清楚的表述本发明实施例,先对本实施例中提到的相关术语做出解释。微服务:微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中各个微服务可被独立部署,各个微服务之间松耦合,每个微服务仅关注于完成一件任务。主分站点模式:微服务架构下,不同团队负责同一系统的不同功能模块,为了方便开发运维,将系统分为主站点和分站点进行开发,主分站点分开独立部署,主站点承担用户登录、菜单控制、权限校验等基础功能的开发,分站点承担具体的业务功能。在主分站点模式下,主站点和分站点为两个独立的站点系统,主站点为分站点提供菜单入口,客户只能通过主站点访问分站点,不能独立为客户提供服务。session:在计算机中,尤其是在网络应用中,称为“会话控制”。session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的全球广域网页(world wide web,web)之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的web页时,如果该用户还没有会话,则web服务器将自动创建一个session对象。当会话过期或被抛弃后,服务器将终止该会话。axios:一个基于promise的网络请求库,对原生xhr请求(一种浏览器请求)进行封装,可用在浏览器和运行环境node.js中。jsapi:一些预定义的js(javascript)函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组程序的能力,而无需访问源码或理解内部工作机制。本方案中提及的jsapi由主站点封装在客户端app,分站点运行于主站点app中时,能够访问这些jsapi。
44.需要知道的是,本实施例中所述的微服务架构可以以手机、电脑等设备终端为载体。在本实施例中,主站点为应用程序(application,app)客户端,主站点为所有分站点微服务的入口,负责用户登录、菜单控制和权限校验等基础功能。分站点为业务应用,例如可以是h5(html5是构建web内容的一种语言描述方式)应用,分站点运行于主站点客户端,承担具体的业务功能。本实施例的应用场景可以理解为,当用户有业务处理需求时,用户需要先通过主站点进行客户端登录;若用户想进行具体的业务处理时,则需要点击相应的业务菜单以跳转至分站点页面进行具体的业务操作。例如,用户可以通过账号密码方式进行登录或者手机号验证码方式登录,此处不做具体限制。
45.其中,页面进入操作可以理解为用户通过触控物点击以进入分站点中具体业务的操作。本实施例提供的业务处理方法的执行主体为分站点,当接收到待处理业务的页面进入操作时,分站点需要根据待处理业务的业务标识,确定用户对待处理业务的处理权限,以确定是否有权限进入分站点页面进行业务处理。业务标识是各类功能业务的唯一标识,分站点与主站点约定好每个功能业务唯一的业务标识,也可以理解为各类功能业务的业务标识在业务构建时就已确定,是已知的。
46.考虑到现有技术中,分站点后端需要频繁调用主站点提供的菜单权限查询接口查询客户是否具有分站点的菜单权限,主分站点间频繁的数据交互加重服务器负担,较大影
响了主分站点的性能,且增加了分站点对主站点依赖,业务模块间耦合性大。
47.本实施例中,采用分站点前端调用主站点的接口以获取用户对应的业务权限。需要清楚的是,当用户在主站点登录时,主站点会将用户在整个系统所有功能菜单的权限按照键值对key-value的格式进行存储在主站点客户端缓存中。示例性的,假设业务标识为buscode,有权限可以记录为buscode-true,没有权限可以记录为buscode-false。
48.具体的,当接收到用户点击分站点菜单时,即接收到页面进入操作时,分站点前端调用主站点提供的第一接口,即jsapi1函数,获取用户对待处理业务的权限。示例性的,判断用户对待处理业务是否有处理权限的方法可以是:通过分站点前端调用主站点的第一接口获取主站点存储的权限存储表;查询权限存储表,确定业务标识对应的键值;根据键值,确定用户对待处理业务的处理权限,例如,若待处理业务标识为buscode,查到键值对为buscode-true,则确定用户对待处理业务有处理权限。例如,若待处理业务标识为buscode,查到键值对为buscode-false,则确定用户对待处理业务没有处理权限。
49.s120、若用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息。
50.其中,会话标识为当用户在主站点登录时由主站点所生成。主站点生成会话标识,会话标识是主站点随机生成的一串用于标识客户的字符串,设定时间间隔(每2分钟)会发生一次变化。
51.在本实施例中,若确定用户有处理权限,则允许进入分站点对应的页面。为了进行业务处理,需要获取用户信息。本实施例中通过会话标识获取用户信息,在分站点后端使用过滤器,统一过滤未登录的请求,对于已登录的请求调用主站点信息查询接口后获取客户信息,将客户信息存储至会话信息中,使请求参数不涉及用户敏感信息,降低数据被篡改的风险,保证请求在传输中更加安全可靠。对于用户已登录且再次进行业务请求的,可以直接从分站点的会话信息中获取用户信息。
52.在本实施例中,当客户登录后首次进入分站点页面,触发初始化请求时,在分站点前端调用主站点获取会话标识接口,在获取到会话标识后,将会话标识与请求参数通过业务请求传输到分站点后端。分站点后端定义了过滤器,使用过滤器filter,过滤未登录用户。使用会话标识调用主站点暴露给分站点的登录客户信息查询接口,获取当前客户信息,存至分站点,供分站点后续交易使用。在本实施例中,当客户登录后再次进入分站点页面,可以直接从会话信息中获取用户信息。
53.其中,过滤器:是一个实现了特殊接口filter的java类,实现对请求资源(jsp、servlet、html)的过滤功能,做一些处理后再交给小服务程序或服务连接器servlet处理,常用于登录权限校验、过滤敏感字符等。通过过滤器,统一对到达服务端的业务请求做处理,过滤未登录的请求。
54.filter中定义了3个方法:init():该方法在容器启动初始化过滤时被调用。dofilter():容器中每次请求都会调用该方法。destory():当容器销毁过滤器实例时调用该方法。本实施例中主要使用dofilter()方法。需要知道的是,本实施例中过滤器filter换成java拦截器interceptor,在执行控件controller之前拦截请求,判断登录状态及获取客户信息。
55.具体的,当客户登录后首次进入分站点页面,触发初始化请求时,前端通过获取用
户会话接口,获取会话标识,通过业务请求,发送至分站点后端;分站点后端使用过滤器接口,重写dofilter()方法,通过会话标识过滤客户未登录的请求,对于客户已登录的请求,调用主站点提供的查询客户信息接口,将客户信息存储至分站点会话信息,供分站点后续业务处理使用。
56.s130、根据用户信息,对待处理业务进行处理。
57.具体的,根据用户信息,对待处理业务进行处理,例如,进行近一个月数据查询。
58.本发明实施例公开了一种业务处理方法、装置、系统、设备及存储介质,该方法包括:当接收到待处理业务的页面进入操作时,根据待处理业务的业务标识,确定用户对待处理业务的处理权限;若用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,会话标识为当用户在主站点登录时由主站点所生成;根据用户信息,对待处理业务进行处理。利用该方法,在使用微服务架构开发部署系统时,分站点通过业务标识在前端调用主站点的接口获取用户权限,不经过后端,有效减少请求数量,优化服务器性能,并在有权限时通过会话标识获取客户信息,使请求参数不涉及用户敏感信息,降低数据被篡改的风险,保证请求在传输中更加安全可靠。在实现数据一致性的前提下,减少主分站点耦合度,减少主分站点后端间的数据交互,减轻服务器的负担,并保证通信安全,便于系统扩展业务功能。
59.作为本发明实施例的可选实施例,在上述实施例的基础上,进一步限定该方法还包括:若用户无处理权限,则不进行页面跳转并生成无权限提示信息。
60.具体的,若确定用户对待处理业务无处理权限,则无法跳转至分站点对应的页面,此时,则生成无权限提示信息以提示该登录用户对待处理业务无处理权限。示例性的,获取用户权限的逻辑实现可以表示为:
61.let auth=await getauthmenu(buscode);//调用主站点jsapi获取菜单权限
62.if(auth){
63.this.$router.push({path:’/path1’});
64.}else{
65.this.$toast(“没有权限”);
66.}。
67.本可选实施例,分站点前端通过业务标识调用主站点封装好的获取客户权限接口,获取用户分站点菜单的权限,不允许无权限的用户进入分站点业务页面进行业务处理并生成无权限提示信息。分站点客户权限通过权限标识在前端调用接口获取,不经过后端,有效减少请求数量,优化服务器性能,降低主分站点的耦合性。
68.实施例二
69.图2为本发明实施例二提供的一种业务处理方法的流程示意图,本实施例为上述实施例的进一步优化,在本实施例中,进一步将当接收到待处理业务的页面进入操作时,根据所述待处理业务的业务标识,确定用户对所述待处理业务的处理权限具体化为:当接收到待处理业务的页面进入操作时,通过分站点前端调用所述主站点的第一接口获取权限存储表,其中,所述权限存储表包含用户与各类业务处理权限的绑定关系,所述权限存储表为当用户在主站点登录时由主站点所存储;查询所述权限存储表,确定所述业务标识对应的键值;根据所述键值,确定用户对所述待处理业务的处理权限。
70.同时,进一步将根据从主站点获取的会话标识,获取用户信息具体化为:通过分站点前端调用所述主站点的第二接口获取会话标识;根据所述会话标识以及请求参数,生成业务请求并发送至分站点后端;通过所述分站点后端的过滤器对所述业务请求进行解析,获得会话标识;若所述会话标识为空,则根据所述分站点的会话信息中登录标识,确定用户信息;若所述会话标识为非空,则通过所述分站点后端调用主站点的第三接口获取用户信息。
71.如图2所示,本实施例二提供一种业务处理方法,具体包括如下步骤:
72.s210、当接收到待处理业务的页面进入操作时,通过分站点前端调用主站点的第一接口获取权限存储表。
73.其中,权限存储表包含用户与各类业务处理权限的绑定关系,权限存储表为当用户在主站点登录时由主站点所存储。本实施例中,采用分站点前端调用主站点的接口以获取用户对应的业务权限。需要清楚的是,当用户在主站点登录时,主站点会将用户在整个系统所有功能菜单的权限按照键值对key-value的格式进行存储在主站点客户端缓存中。示例性的,假设业务标识为buscode,有权限可以记录为buscode-true,没有权限可以记录为buscode-false。
74.具体的,当接收到用户点击分站点菜单时,即接收到页面进入操作时,分站点前端调用主站点提供的第一接口,即jsapi1函数,获取权限存储表。
75.s220、查询权限存储表,确定业务标识对应的键值。
76.具体的,查询权限存储表,确定业务标识对应的键值。
77.s230、根据键值,确定用户对待处理业务的处理权限。
78.示例性的,若待处理业务标识为buscode,查到键值对为buscode-true,则确定用户对待处理业务有处理权限。若待处理业务标识为buscode,查到键值对为buscode-false,则确定用户对待处理业务没有处理权限。
79.s240、若用户有处理权限,则跳转至待处理业务的页面并通过分站点前端调用主站点的第二接口获取会话标识。
80.其中,当用户登录时,主站点生成会话标识,会话标识是主站点随机生成的一串用于标识客户的字符串,设定时间间隔,如每2分钟会发生一次变化。若用户有处理权限,则可以跳转至分站点对应的页面,即待处理业务的页面,分站点前端通过调用主站点客户端提供的第二接口获取已登录用户的会话标识,第二接口可以表示为jsapi2。
81.s250、根据会话标识以及请求参数,生成业务请求并发送至分站点后端。
82.具体的,分站点可以设置业务请求相关的信息,如请求超时时间、后端地址、报文类型等信息。业务请求的参数中不仅包括分站点业务请求的参数,还包括会话标识。并将生成的业务请求发送至分站点后端。分站点前端通过axios(axios是一种web数据交互方式)向后端发起请求,并接收后端传回的数据。
83.示例性的,业务请求参数设置的逻辑可以表示为:
84.const service=axios.create({
85.timeout:30000,//请求超时时间
86.withcredentials:true,//前端请求报文携带cookie
87.baseurl:’10.10.10.10/itsmb’,//请求路径
88.headers:{
89."content-type":"application/json",
90.}
91.})。
92.示例性的,发送业务请求到分站点后端,其中请求参数中包括分站点业务请求的参数和会话标识,其逻辑可以表述为:
[0093][0094]
s260、通过分站点后端的过滤器对业务请求进行解析,获得会话标识。
[0095]
具体的,在分站点后端定义一个过滤器filter,所有前端发起的请求,都会经过filter。可重写实例构造器init方法,在init方法中获取配置参数。重写dofilter方法,解析轻量级的数据交换格式(javascript object notation,json)数据,获取会话标识,以判断登录状态。示例性的,通过分站点后端的过滤器对业务请求进行解析的逻辑可以表示为:
[0096][0097]
s270、若会话标识为空,则根据分站点的会话信息中登录标识,确定用户信息。
[0098]
具体的,若会话标识为空,表示用户登录后不是首次请求分站点数据。示例性的,用户登录后先进行了业务处理,又进行了数据查询,则业务处理可以理解为是首次请求分站点数据,数据查询可以理解为再次请求了分站点数据。若会话标识为空,则需要进一步根据分站点的会话信息中的登录标识,确定用户信息。
[0099]
进一步地,根据分站点的会话信息中登录标识,确定用户信息的步骤可以表述为:
[0100]
a1、从分站点的会话信息中获取登录标识。
[0101]
具体的,若会话标识为空,则从会话信息中存储有用户的登录标识,从会话信息中获取登录标识。示例性的,假设会话标识记为ssi,登录标识记为islogin。
[0102]
b1、判断登录标识是否为真。
[0103]
具体的,判断登录标识是否为真。继续接上述示例进行描述,islogin等于true或者islogin等于null。
[0104]
c1、若为真,则从会话信息中获取用户信息。
[0105]
具体的,若登录标识为真,表示用户已完成登录,则从分站点的会话信息中获取用户信息。示例性的,接上述示例进行描述,若ssi为空,且islogin等于true,表示用户已完成登录,从session获取用户信息。
[0106]
d1、否则,确定用户未登录并返回未登录提示。
[0107]
具体的,若登录标识为非真,表示用户未登录,也可以理解为登录信息失效,则分站点后端的过滤器过滤该部分请求,直接返回错误信息。
[0108]
进一步地,通过分站点后端调用主站点的第三接口获取用户信息之后,还包括:将用户信息存储至分站点的会话信息中,并将会话信息中的登录标识设置为真。
[0109]
具体的,对于用户首次访问分站点数据时,在通过分站点后端调用主站点的第三接口获取用户信息之后,将用户信息存储至分站点的会话信息中,以便用户后续进行其他业务操作时可以直接从分站点的会话信息中获取用户信息,而避免频繁请求主站点的数据,提高服务器性能。另外,将会话信息中的登录标识设置为真,表示用户已完成登录。
[0110]
示例性的,根据会话标识获取用户信息的逻辑可以表示为:
[0111][0112]
s280、若会话标识为非空,则通过分站点后端调用主站点的第三接口获取用户信息。
[0113]
具体的,若会话标识为有值为非空,表示用户登录后首次请求分站点数据,则分站点调用主站点提供的接口获取登录用户的用户信息。本实施例中,为了便于区分,将获取用户信息的接口称为第三接口。
[0114]
s290、根据用户信息,对待处理业务进行处理。
[0115]
本实施例具体化了根据待处理业务的业务标识,确定用户对待处理业务的处理权限的步骤以及根据从主站点获取的会话标识,获取用户信息的步骤。在一个系统使用微服务架构开发部署时,分站点用户权限通过业务标识在前端调用接口函数获取,不经过后端,有效减少请求数量,优化服务器性能,降低主分站点的耦合性。用户登录信息通过会话标识,在分站点后端使用过滤器,统一过滤未登录的请求,对于已登录的请求调用主站点信息查询接口后将用户信息存储至会话信息中,使请求参数不涉及用户敏感信息,降低数据被篡改的风险,保证请求在传输中更加安全可靠性。通过业务标识和会话标识,在实现微服务架构中主分站点之间数据信息一致的前提下,减少主分站点后端间的数据交互,减轻服务器的负担,降低耦合度,便于系统扩展业务功能。
[0116]
为了更清楚的表述本发明实施例提供的业务处理方法,示例性的,图3为本发明实施例二提供的某场景业务处理步骤的示例图。
[0117]
s1、当接收到待处理业务的页面进入操作时,通过分站点前端调用主站点的第一接口获取权限存储表,其中,权限存储表包含用户与各类业务处理权限的绑定关系,权限存储表为当用户在主站点登录时由主站点所存储。
[0118]
s2、查询权限存储表,确定业务标识对应的键值。
[0119]
s3、根据键值,确定用户对待处理业务的处理权限,若用户无处理权限则执行步骤s4,若用户有处理权限则执行步骤s5。
[0120]
s4、若用户无处理权限,则不进行页面跳转并生成无权限提示信息。
[0121]
s5、若用户有处理权限,则跳转至待处理业务的页面并通过分站点前端调用主站点的第二接口获取会话标识。
[0122]
s6、根据会话标识以及请求参数,生成业务请求并发送至分站点后端。
[0123]
s7、通过分站点后端的过滤器对业务请求进行解析,获得会话标识,若会话标识为空,则执行步骤s8,若会话标识为非空,则执行步骤s12。
[0124]
s8、若会话标识为空,则从分站点的会话信息中获取登录标识。
[0125]
s9、判断登录标识是否为真,若为真,则执行步骤s10,否则执行步骤s11。
[0126]
s10、若为真,则从会话信息中获取用户信息。
[0127]
s11、否则,确定用户未登录并返回未登录提示。
[0128]
s12、若会话标识为非空,则通过分站点后端调用主站点的第三接口获取用户信息。
[0129]
s13、将用户信息存储至分站点的会话信息中,并将会话信息中的登录标识设置为真。
[0130]
s14、根据用户信息,对待处理业务进行处理。
[0131]
实施例三
[0132]
图4为本发明实施例三提供的一种业务处理装置的结构示意图,可适用于对对微服务架构下主分站点之间实现数据一致性且减少主分站点耦合度的情况,该装置可以采用硬件和/或软件的形式实现。如图4所示,该装置包括:权限确定模块31、信息确定模块32和处理模块33,其中,
[0133]
权限确定模块31,用于当接收到待处理业务的页面进入操作时,根据待处理业务的业务标识,确定用户对待处理业务的处理权限;
[0134]
信息确定模块32,用于若用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,会话标识为当用户在主站点登录时由主站点所生成;
[0135]
处理模块33,用于根据用户信息,对待处理业务进行处理。
[0136]
可选地,该装置还包括提示模块,用于:
[0137]
若用户无处理权限,则不进行页面跳转并生成无权限提示信息。
[0138]
可选地,权限确定模块31,用于:
[0139]
当接收到待处理业务的页面进入操作时,通过分站点前端调用主站点的第一接口获取权限存储表,其中,权限存储表包含用户与各类业务处理权限的绑定关系,权限存储表
为当用户在主站点登录时由主站点所存储;
[0140]
查询权限存储表,确定业务标识对应的键值;
[0141]
根据键值,确定用户对待处理业务的处理权限。
[0142]
可选地,信息确定模块32包括:
[0143]
标识获取单元,用于通过分站点前端调用主站点的第二接口获取会话标识;
[0144]
请求发送单元,用于根据会话标识以及请求参数,生成业务请求并发送至分站点后端;
[0145]
解析单元,用于通过分站点后端的过滤器对业务请求进行解析,获得会话标识;
[0146]
第一确定单元,用于若会话标识为空,则根据分站点的会话信息中登录标识,确定用户信息;
[0147]
第二确定单元,用于若会话标识为非空,则通过分站点后端调用主站点的第三接口获取用户信息。
[0148]
可选地,第一确定单元,具体用于:
[0149]
从分站点的会话信息中获取登录标识;
[0150]
判断登录标识是否为真;
[0151]
若为真,则从会话信息中获取用户信息;
[0152]
否则,确定用户未登录并返回未登录提示。
[0153]
可选地,该装置,还包括存储模块,用于:
[0154]
将用户信息存储至分站点的会话信息中,并将会话信息中的登录标识设置为真。
[0155]
本发明实施例所提供的业务处理装置可执行本发明任意实施例所提供的业务处理方法,具备执行方法相应的功能模块和有益效果。
[0156]
实施例四
[0157]
图5为本发明实施例四提供的一种微服务系统的结构示意图,如图5所示,该系统包括主站点1及至少一个分站点2;
[0158]
主站点1用于接收用户的登录操作,在用户登录后生成会话标识并存储所述用户关联的权限存储表;
[0159]
分站点2包括:权限确定模块31、信息确定模块32以及处理模块33;其中,
[0160]
权限确定模块31,用于当接收到待处理业务的页面进入操作时,根据待处理业务的业务标识,确定用户对所处理业务的处理权限;
[0161]
信息确定模块32,用于若用户有处理权限,则跳转至待处理业务的页面并根据从主站点获取的会话标识,确定用户信息,会话标识为当用户在主站点登录时由主站点所生成;
[0162]
处理模块33,用于根据用户信息,对待处理业务进行处理。
[0163]
本发明实施例所提供的微服务系统可执行本发明任意实施例所提供的业务处理方法,具备执行方法相应的功能模块和有益效果。
[0164]
实施例五
[0165]
图6为本发明实施例五提供的一种电子设备的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装
置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
[0166]
如图6所示,电子设备40包括至少一个处理器41,以及与至少一个处理器41通信连接的存储器,如只读存储器(rom)42、随机访问存储器(ram)43等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器41可以根据存储在只读存储器(rom)42中的计算机程序或者从存储单元48加载到随机访问存储器(ram)43中的计算机程序,来执行各种适当的动作和处理。在ram 43中,还可存储电子设备40操作所需的各种程序和数据。处理器41、rom 42以及ram 43通过总线44彼此相连。输入/输出(i/o)接口45也连接至总线44。
[0167]
电子设备40中的多个部件连接至i/o接口45,包括:输入单元746,例如键盘、鼠标等;输出单元47,例如各种类型的显示器、扬声器等;存储单元48,例如磁盘、光盘等;以及通信单元49,例如网卡、调制解调器、无线通信收发机等。通信单元49允许电子设备40通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0168]
处理器41可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器41的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器41执行上文所描述的各个方法和处理,例如业务处理方法。
[0169]
在一些实施例中,业务处理方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元48。在一些实施例中,计算机程序的部分或者全部可以经由rom 42和/或通信单元49而被载入和/或安装到电子设备40上。当计算机程序加载到ram 43并由处理器41执行时,可以执行上文描述的业务处理方法的一个或多个步骤。备选地,在其他实施例中,处理器41可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行业务处理方法。
[0170]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0171]
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0172]
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算
机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0173]
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0174]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
[0175]
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
[0176]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
[0177]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1