CN116662016B - 端口切换方法、装置、计算机设备、存储介质和程序产品 - Google Patents
端口切换方法、装置、计算机设备、存储介质和程序产品 Download PDFInfo
- Publication number
- CN116662016B CN116662016B CN202310912687.5A CN202310912687A CN116662016B CN 116662016 B CN116662016 B CN 116662016B CN 202310912687 A CN202310912687 A CN 202310912687A CN 116662016 B CN116662016 B CN 116662016B
- Authority
- CN
- China
- Prior art keywords
- port
- request message
- destination
- switching
- source
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000012544 monitoring process Methods 0.000 claims abstract description 18
- 238000012508 change request Methods 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 37
- 230000008569 process Effects 0.000 claims description 36
- 238000007726 management method Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 210000001503 joint Anatomy 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种端口切换方法、装置、计算机设备、存储介质和程序产品。方法包括:接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。本申请直接根据端口切换请求消息中包含的输入的源端口标识和目的端口标识,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,从而实现不同端口的切换,提高了端口切换的效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种端口切换方法、装置、计算机设备、存储介质和程序产品。
背景技术
随着计算机系统的发展,系统之间的对接操作越来越多。在进行不同系统之间的对接或者同一系统之间服务的切换时,可以通过切换不同的端口来实现,从而提高对接不同系统或者切换不同服务的效率。
然而,传统切换不同端口的方法,是在停止运行系统的情况下,手动改写代码以重新配置端口,从而实现不同端口的切换。因此,传统的端口切换方法,存在效率较低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高端口切换效率的端口切换方法、装置、计算机设备、存储介质和程序产品。
第一方面,本申请提供了一种端口切换方法。所述方法包括:
接收前端发送的端口切换请求消息,并将所述端口切换请求消息存储至服务器节点的消息队列中;所述端口切换请求消息包括输入的源端口标识和目的端口标识;
对所述消息队列进行监听,若监听到所述前端发送的所述端口切换请求消息,则根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口。
在其中一个实施例中,所述端口切换请求消息包括服务状态变更请求消息,所述服务状态请求消息包括所述源端口的由启动变更为停止的第一状态以及所述目的端口的由停止到启动的第二状态;
所述根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
若所述端口切换请求消息为所述服务状态变更请求消息,则将所述源端口由启动变更为停止,并将所述目的端口由停止变更为启动,以从所述源端口切换至所述目的端口。
在其中一个实施例中,所述端口切换请求消息包括系统环境变更请求消息,所述系统环境变更请求消息包括原系统标识以及目的系统标识;
所述根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
若所述端口切换请求消息为所述系统环境变更请求消息,则将所述原系统标识对应的源系统的所述源端口由启动变更为停止,并将所述目的系统标识对应的目的系统的所述目的端口由停止变更为启动,以从所述源端口切换至所述目的端口。
在其中一个实施例中,所述根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
获取各所述服务器节点的所述源端口分别对应的服务的服务状态信息;
根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的优先级;
按照各所述服务器节点的优先级,根据所述端口切换请求消息,将各所述服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口。
在其中一个实施例中,所述根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的优先级,包括:
根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的当前服务请求数量;
根据各所述服务器节点的当前服务请求数量,确定各所述服务器节点的优先级。
在其中一个实施例中,所述按照各所述服务器节点的优先级,根据所述端口切换请求消息,将各所述服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
从当前最小的服务请求数量对应的服务器节点开始,根据所述端口切换请求消息,依次将所述最小的当前服务请求数量对应的服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口。
在其中一个实施例中,所述从当前最小的服务请求数量对应的服务器节点开始,根据所述端口切换请求消息,依次将所述最小的当前服务请求数量对应的服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;所述第一操作过程包括:从各所述服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据所述端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从所述源端口切换至所述目的端口;
在当前最小的服务请求数量对应的服务器节点从所述源端口切换至所述目的端口后,返回执行所述第一操作过程,直至各所述服务器节点从所述源端口切换至所述目的端口。
第二方面,本申请还提供了一种端口切换装置。所述装置包括:
端口切换请求消息获取模块,用于接收前端发送的端口切换请求消息,并将所述端口切换请求消息存储至服务器节点的消息队列中;所述端口切换请求消息包括输入的源端口标识和目的端口标识;
端口切换模块,用于对所述消息队列进行监听,若监听到所述前端发送的所述端口切换请求消息,则根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项实施例中的方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项实施例中的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面中任一项实施例中的方法的步骤。
上述端口切换方法、装置、计算机设备、存储介质和程序产品,接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。本申请通过接收包含输入的源端口标识和目的端口标识的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中。之后,监听消息队列,若监听到消息队列中包括前端发送的端口切换请求消息,就能够在系统运行的过程中,直接根据端口切换请求消息中包含的输入的源端口标识和目的端口标识,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,从而实现不同端口的切换,提高了端口切换的效率。
附图说明
图1为一个实施例中端口切换方法的应用环境图;
图2为一个实施例中端口切换方法的流程示意图;
图3为一个实施例中设置服务管理系统的流程示意图;
图4为一个实施例中监听消息队列并切换端口的流程示意图;
图5为一个实施例中按照优先级进行端口切换步骤的流程示意图;
图6为一个实施例中优先级确定步骤的流程示意图;
图7为一个实施例中依次端口切换步骤的流程示意图;
图8为一个具体的实施例中端口切换方法的流程示意图;
图9为一个实施例中端口切换装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
随着计算机系统的发展,系统之间的对接操作越来越多。在进行不同系统之间的对接或者同一系统之间服务的切换时,可以通过切换不同的端口来实现,从而提高对接不同系统或者切换不同服务的效率。
然而,传统切换不同端口的方法,是在停止运行系统的情况下,手动改写代码以重新配置端口,从而实现不同端口的切换。因此,传统的端口切换方法,存在效率较低的问题。
本申请实施例提供的端口切换方法,可以应用于如图1所示的应用环境中。其中,前端120通过网络与后端140进行通信。数据存储系统可以存储后端140需要处理的数据。数据存储系统可以集成在后端140上,也可以放在云上或其他网络服务器上。数据存储系统包括Mysql数据库以及Redis数据库。后端140接收前端120发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点142的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;后端140对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。其中,前端120可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。后端140可以用独立的服务器节点142或者是多个服务器节点142来实现。
在一个实施例中,如图2所示,提供了一种端口切换方法,以该方法应用于图1中的后端140为例进行说明,包括以下步骤:
步骤S220,接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识。
具体的,在用户通过设置好的服务管理系统进行服务管理界面的编辑操作之后,前端120可以接收到用户在服务管理界面的编辑操作,并根据用户的编辑操作生成端口切换请求消息。之后,前端120可以通过https接口将该端口切换请求消息发送至后端140。其中,服务管理界面包括服务列表、服务添加、服务删除、端口修改、服务启停等功能。端口切换请求消息包括输入的源端口标识和目的端口标识。后端140可以接收前端120发送的端口切换请求消息,之后,后端140将端口切换请求消息存储至Mysql数据库中,并将端口切换请求消息缓存到Redis数据库中,且将端口切换请求消息实时发送至服务器节点142的消息队列中。示例的,将端口切换请求消息缓存到Redis数据库的方式可以是通过@Cacheable注解的方式,@Cacheable注解是针对方法进行配置,从而根据方法的请求参数对方法对应的结果进行缓存。示例的,消息队列可以是RabbitMQ消息队列。
在用户进行服务管理界面的编辑操作之前,前端120设置与用户角色匹配的服务管理系统。服务管理系统与用户及服务管理系统的接口相对应,在用户登录时,服务管理系统可以自动识别用户所属专业公司、机构、身份(内勤/代理人/管理员),并根据用户对应的角色加载权限数据。在设置服务管理系统时,可以将获取的权限数据整理至权限框架SpringSecurity中,从而在用户登录服务管理系统时,无需单独进行权限分配与配置,就可以实现用户的权限管理与系统的安全防护。
如图3所示,图3为一个实施例中设置服务管理系统的流程示意图。设置与用户角色匹配的服务管理系统的具体步骤如下,首先,前端120基于RBAC模型(基于角色的访问控制,Role-Based Access Control)进行权限配置,其中,权限配置包括功能菜单管理、角色配置、用户管理、用户权限配置等子功能。前端120进行权限配置的具体步骤为:第一,配置服务管理系统的功能菜单,并通过https接口将配置好的功能菜单传输到后端,再将功能菜单的相关数据存储到数据库的菜单表中,菜单表包括菜单名称、所属父菜单(可为空)及菜单路径等字段。第二,创建服务管理系统中的角色,如配置管理员角色、普通使用者角色等角色,并将角色与功能菜单进行关联。第三,获取服务管理系统的用户数据,并对各用户分配对应的角色。第四,针对不同的用户对应的角色,向各用户角色分配对应的权限。
在权限配置完成之后,针对不同角色的用户进行权限拦截。此时,用户可以通过服务管理界面进行服务管理系统的登录,前端120将与该用户对应的用户名及密码传输到后端140,后端140通过权限框架SpringSecurity中的验证身份服务接口UserDetailsService,设置用户名及密码的校验方式,并将数据库中的用户角色以及功能菜单的相关数据存储到用户对应的登录系统中。用户将用户名及密码输入完成之后,前端120可以对应的接收到后端140动态返回的功能菜单、按钮等权限信息,从而前端120通过异步的方式动态加载路由器数据(router数据),并通过导航菜单组件(NavMenu组件)将功能菜单的数据进行动态渲染,以使用户只能看到和点击与该用户角色对应权限的功能菜单。此外,后端通过适配器WebSecurityConfigurerAdapter,对服务管理系统的接口进行拦截规则的匹配以及拦截校验,确保服务管理系统的接口权限不会被非法绕过。
步骤S240,对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
具体的,如图4所示,图4为一个实施例中监听消息队列并切换端口的流程示意图。后端140对消息队列进行监听,并对监听的消息队列进行检测。当后端140监听到前端120发送的端口切换请求消息时,后端140可以根据端口切换请求消息中包含的输入的源端口标识和目的端口标识,将源端口标识对应的源端口切换为目的端口标识对应的目的端口。之后,后端140将切换后的端口信息发送至消息队列中,并对新的消息队列进行监听并广播。后端140可以判断监听到的端口信息是否发生变化,若后端140监听到端口信息发生变化,则说明端口切换成功,此时,后端140通过驱动下载指令RedisTempate更新端口的缓存状态。
此外,前端120可以通过Websocket协议实时获取后端140的服务、端口以及环境数据,并通过Table等组件将获取到的数据进行动态渲染,通过Tag等标签组件对服务、端口以及环境等字段进行着重显示,从而完成信息查看界面的设置,以使用户在登录服务管理系统时,可以查看当前的服务、端口以及环境信息。
上述端口切换方法中,接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。本申请通过接收包含输入的源端口标识和目的端口标识的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中。之后,监听消息队列,若监听到消息队列中包括前端发送的端口切换请求消息,就能够在系统运行的过程中,直接根据端口切换请求消息中包含的输入的源端口标识和目的端口标识,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,从而实现不同端口的切换,提高了端口切换的效率。
在一个实施例中,端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,包括:
若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口。
具体的,由于端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态。因此,当后端140监听到前端120发送的端口切换请求消息为服务状态变更请求消息时,后端140可以通过Java程序从Redis数据库中动态获取服务源端口对应的第一Netty端口进程,并根据服务状态变更请求消息中包含的源端口的由启动变更为停止的第一状态(输入的源端口标识),将源端口对应的第一Netty端口进程由启动变更为停止;且,后端140可以通过Java程序从Redis数据库中动态获取服务目的端口对应的第二Netty端口进程,并根据服务状态变更请求消息中包含的目的端口的由停止到启动的第二状态(目的端口标识),将目的端口对应的第二Netty端口进程由停止变更为启动,以从源端口切换至目的端口。
本实施例中,若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口,能够通过服务状态对应的源端口与目的端口的切换,实现服务状态的变更。
在一个实施例中,端口切换请求消息包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,包括:
若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口。
具体的,由于端口切换请求消息还包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识。其中,系统环境包括SIT环境(三方测试环境)、UAT环境(用户测试环境)、PRE环境(预上线环境)以及PRD环境(生产环境)。因此,当后端140监听到前端120发送的端口切换请求消息为系统环境变更请求消息时,后端140可以通过Java程序从Redis数据库中动态获取环境源端口对应的第三Netty端口进程,并根据系统环境变更请求消息中包含的原系统标识(输入的源端口标识),将原系统标识对应的源系统的源端口对应的第三Netty端口进程由启动变更为停止;且,后端140可以通过Java程序从Redis数据库中动态获取环境目的端口对应的第四Netty端口进程,并根据系统环境变更请求消息中包含的目的系统标识(目的端口标识),将目的系统标识对应的目的系统的目的端口对应的第四Netty端口进程由停止变更为启动,以从源端口切换至目的端口。
本实施例中,若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口,能够通过系统环境对应的源端口与目的端口的切换,实现系统环境的变更。
在一个实施例中,如图5所示,根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,包括:
步骤S520,获取各服务器节点的源端口分别对应的服务的服务状态信息。
具体的,服务器节点是系统在生产时部署的用于提供服务的装置,由于后端140包括多个服务器节点,每个服务器节点可以运行多个服务,每个服务在多个服务器节点上运行,因此,后端140可以实时监控并统计各服务器节点的源端口分别对应的待变更服务的服务状态信息。其中,服务状态信息包括当前服务请求数量、平均响应耗时等信息。
步骤S540,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级。
具体的,后端140可以根据各服务器节点的源端口分别对应的待变更服务的服务状态信息,确定各服务器节点的优先级。可选的,后端140可以根据各服务器节点的当前服务请求数量,选取目标当前服务请求数量对应的服务器节点优先进行处理,从而生成各服务器节点的优先级排序;后端140也可以根据各服务器节点的平均响应耗时,选取目标平均响应耗时对应的服务器节点优先进行处理,从而生成各服务器节点的优先级排序。
步骤S560,按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
具体的,后端140可以按照各服务器节点的优先级排序确定切换各服务器节点的先后顺序,并根据端口切换请求消息,先将优先级最高的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,按照切换各服务器节点的先后顺序,依次将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
本实施例中,获取各服务器节点的源端口分别对应的服务的服务状态信息;根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级;按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,从而能够按照各服务器节点的优先级,对各服务器节点的端口进行依次切换。
在一个实施例中,如图6所示,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级,包括:
步骤S620,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量。
具体的,由于服务状态信息包括当前服务请求数量,因此,后端140可以从各服务器节点的源端口分别对应的服务的服务状态信息中,获取各服务器节点中待处理的当前服务请求数量。
步骤S640,根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级。
具体的,后端140可以根据各服务器节点的当前服务请求数量,确定当前服务请求数量排序,并选取目标当前服务请求数量对应的服务器节点优先进行处理,从而生成各服务器节点的优先级排序。
本实施例中,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量;之后,根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级。通过动态计算各服务器节点的当前压力,根据服务器节点的当前压力情况进行排序,从而能够确定针对各服务器节点上的端口进行切换的顺序。
在一个实施例中,按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,包括:
从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
具体的,后端140可以按照各服务器节点的优先级排序确定切换各服务器节点的先后顺序,本实施例中,从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,先将当前最小的服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,按照切换各服务器节点的先后顺序,依次将最小的当前服务请求数量对应的各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
本实施例中,从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,从而按照服务器节点的当前压力从小到大的排序依次针对各服务器节点上的端口进行切换。
在一个实施例中,如图7所示,从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,包括:
步骤S720,从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口。
步骤S740,在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。
具体的,后端140从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程。其中,第一操作过程包括:首先,从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,以避免新的服务请求进入该服务器节点。其次,处理当前最小的当前服务请求数量对应的服务器节点上的服务请求。并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求处理完成之后,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口。在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,从而依次将最小的当前服务请求数量对应的各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,直至待变更服务对应的各服务器节点全部从源端口切换至目的端口。
本实施例中,从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口;在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。通过按照服务器节点的当前压力从小到大的排序,依次对各服务器节点进行移除、处理服务请求及切换端口的操作,从而能够先将服务请求引流至其他服务器节点,再进行端口切换,此过程中对于用户来说服务不中断,不会影响服务的正常运行。
在一个具体的实施例中,如图8所示,提供了一种端口切换方法,包括:
步骤802,接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;
步骤804,对消息队列进行监听,若监听到前端发送的端口切换请求消息,获取各服务器节点的源端口分别对应的服务的服务状态信息;
步骤806,端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态;若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口;
步骤808,端口切换请求消息包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识;若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口;
步骤810,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量;
步骤812,根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级;
步骤814,从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口;
步骤816,在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。
上述端口切换方法,接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。本申请通过接收包含输入的源端口标识和目的端口标识的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中。之后,监听消息队列,若监听到消息队列中包括前端发送的端口切换请求消息,就能够在系统运行的过程中,直接根据端口切换请求消息中包含的输入的源端口标识和目的端口标识,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,从而实现不同端口的切换,提高了端口切换的效率。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的端口切换方法的端口切换装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个端口切换装置实施例中的具体限定可以参见上文中对于端口切换方法的限定,在此不再赘述。
在一个实施例中,如图9所示,提供了一种端口切换装置900,包括:端口切换请求消息获取模块920和端口切换模块940,其中:
端口切换请求消息获取模块920,用于接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识。
端口切换模块940,用于对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态;端口切换模块940,包括:
服务状态端口切换单元,用于若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,端口切换请求消息包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识;端口切换模块940,包括:
系统环境端口切换单元,用于若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,端口切换模块940,包括:
服务状态信息获取单元,用于获取各服务器节点的源端口分别对应的服务的服务状态信息;
优先级确定单元,用于根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级;
端口切换单元,用于按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,优先级确定单元,包括:
当前服务请求数量确定子单元,用于根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量;
优先级确定子单元,用于根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级。
在一个实施例中,端口切换单元,包括:
端口切换子单元,用于从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,端口切换子单元,包括:
第一操作过程执行子单元,用于从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口;
依次执行子单元,用于在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。
上述端口切换装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是后端服务器,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储端口切换数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种端口切换方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;
对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,处理器执行计算机程序时还实现以下步骤:
若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,端口切换请求消息包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,处理器执行计算机程序时还实现以下步骤:
若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,处理器执行计算机程序时还实现以下步骤:
获取各服务器节点的源端口分别对应的服务的服务状态信息;
根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级;
按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级,处理器执行计算机程序时还实现以下步骤:
根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量;
根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级。
在一个实施例中,按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,处理器执行计算机程序时还实现以下步骤:
从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,处理器执行计算机程序时还实现以下步骤:
从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口;
在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;
对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,端口切换请求消息包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
获取各服务器节点的源端口分别对应的服务的服务状态信息;
根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级;
按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级,计算机程序被处理器执行时还实现以下步骤:
根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量;
根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级。
在一个实施例中,按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口;
在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收前端发送的端口切换请求消息,并将端口切换请求消息存储至服务器节点的消息队列中;端口切换请求消息包括输入的源端口标识和目的端口标识;
对消息队列进行监听,若监听到前端发送的端口切换请求消息,则根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,端口切换请求消息包括服务状态变更请求消息,服务状态请求消息包括源端口的由启动变更为停止的第一状态以及目的端口的由停止到启动的第二状态;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
若端口切换请求消息为服务状态变更请求消息,则将源端口由启动变更为停止,并将目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,端口切换请求消息包括系统环境变更请求消息,系统环境变更请求消息包括原系统标识以及目的系统标识;
根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
若端口切换请求消息为系统环境变更请求消息,则将原系统标识对应的源系统的源端口由启动变更为停止,并将目的系统标识对应的目的系统的目的端口由停止变更为启动,以从源端口切换至目的端口。
在一个实施例中,根据端口切换请求消息,从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
获取各服务器节点的源端口分别对应的服务的服务状态信息;
根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级;
按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的优先级,计算机程序被处理器执行时还实现以下步骤:
根据各服务器节点的源端口分别对应的服务的服务状态信息,确定各服务器节点的当前服务请求数量;
根据各服务器节点的当前服务请求数量,确定各服务器节点的优先级。
在一个实施例中,按照各服务器节点的优先级,根据端口切换请求消息,将各服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口。
在一个实施例中,从当前最小的服务请求数量对应的服务器节点开始,根据端口切换请求消息,依次将最小的当前服务请求数量对应的服务器节点从源端口标识对应的源端口切换至目的端口标识对应的目的端口,计算机程序被处理器执行时还实现以下步骤:
从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;第一操作过程包括:从各服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口;
在当前最小的服务请求数量对应的服务器节点从源端口切换至目的端口后,返回执行第一操作过程,直至各服务器节点从源端口切换至目的端口。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (6)
1.一种端口切换方法,其特征在于,所述方法包括:
接收前端发送的端口切换请求消息,并将所述端口切换请求消息存储至服务器节点的消息队列中;所述端口切换请求消息包括输入的源端口标识和目的端口标识;
对所述消息队列进行监听,若监听到所述前端发送的所述端口切换请求消息,则根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口;
其中,所述根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
获取各所述服务器节点的所述源端口分别对应的服务的服务状态信息;
根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的优先级;
按照各所述服务器节点的优先级,根据所述端口切换请求消息,将各所述服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口;
其中,所述根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的优先级,包括:
根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的当前服务请求数量;
根据各所述服务器节点的当前服务请求数量,确定各所述服务器节点的优先级;
其中,所述按照各所述服务器节点的优先级,根据所述端口切换请求消息,将各所述服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
从当前最小的服务请求数量对应的服务器节点开始,根据所述端口切换请求消息,依次将所述最小的当前服务请求数量对应的服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口;
其中,所述从当前最小的服务请求数量对应的服务器节点开始,根据所述端口切换请求消息,依次将所述最小的当前服务请求数量对应的服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;所述第一操作过程包括:从各所述服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据所述端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从所述源端口切换至所述目的端口;
在当前最小的服务请求数量对应的服务器节点从所述源端口切换至所述目的端口后,返回执行所述第一操作过程,直至各所述服务器节点从所述源端口切换至所述目的端口。
2.根据权利要求1所述的方法,其特征在于,所述端口切换请求消息包括服务状态变更请求消息,所述服务状态变更请求消息包括所述源端口的由启动变更为停止的第一状态以及所述目的端口的由停止到启动的第二状态;
所述根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
若所述端口切换请求消息为所述服务状态变更请求消息,则将所述源端口由启动变更为停止,并将所述目的端口由停止变更为启动,以从所述源端口切换至所述目的端口。
3.根据权利要求1所述的方法,其特征在于,所述端口切换请求消息包括系统环境变更请求消息,所述系统环境变更请求消息包括原系统标识以及目的系统标识;
所述根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口,包括:
若所述端口切换请求消息为所述系统环境变更请求消息,则将所述原系统标识对应的源系统的所述源端口由启动变更为停止,并将所述目的系统标识对应的目的系统的所述目的端口由停止变更为启动,以从所述源端口切换至所述目的端口。
4.一种端口切换装置,其特征在于,所述装置包括:
端口切换请求消息获取模块,用于接收前端发送的端口切换请求消息,并将所述端口切换请求消息存储至服务器节点的消息队列中;所述端口切换请求消息包括输入的源端口标识和目的端口标识;
端口切换模块,用于对所述消息队列进行监听,若监听到所述前端发送的所述端口切换请求消息,则根据所述端口切换请求消息,从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口;
其中,所述端口切换模块,包括:
服务状态信息获取单元,用于获取各所述服务器节点的所述源端口分别对应的服务的服务状态信息;
优先级确定单元,用于根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的优先级;
端口切换单元,用于按照各所述服务器节点的优先级,根据所述端口切换请求消息,将各所述服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口;
其中,优先级确定单元,包括:
当前服务请求数量确定子单元,用于根据各所述服务器节点的所述源端口分别对应的服务的服务状态信息,确定各所述服务器节点的当前服务请求数量;
优先级确定子单元,用于根据各所述服务器节点的当前服务请求数量,确定各所述服务器节点的优先级;
其中,端口切换单元,包括:
端口切换子单元,用于从当前最小的服务请求数量对应的服务器节点开始,根据所述端口切换请求消息,依次将所述最小的当前服务请求数量对应的服务器节点从所述源端口标识对应的源端口切换至所述目的端口标识对应的目的端口;
其中,端口切换子单元,包括:
第一操作过程执行子单元,用于从当前最小的服务请求数量对应的服务器节点开始,执行第一操作过程;所述第一操作过程包括:从各所述服务器节点中移除当前最小的当前服务请求数量对应的服务器节点,并在当前最小的当前服务请求数量对应的服务器节点对应的服务请求完成的情况下,根据所述端口切换请求消息,将当前最小的服务请求数量对应的服务器节点从所述源端口切换至所述目的端口;
依次执行子单元,用于在当前最小的服务请求数量对应的服务器节点从所述源端口切换至所述目的端口后,返回执行所述第一操作过程,直至各所述服务器节点从所述源端口切换至所述目的端口。
5.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3中任一项所述的方法的步骤。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至3中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310912687.5A CN116662016B (zh) | 2023-07-25 | 2023-07-25 | 端口切换方法、装置、计算机设备、存储介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310912687.5A CN116662016B (zh) | 2023-07-25 | 2023-07-25 | 端口切换方法、装置、计算机设备、存储介质和程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116662016A CN116662016A (zh) | 2023-08-29 |
CN116662016B true CN116662016B (zh) | 2023-10-20 |
Family
ID=87722663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310912687.5A Active CN116662016B (zh) | 2023-07-25 | 2023-07-25 | 端口切换方法、装置、计算机设备、存储介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116662016B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0210598A2 (en) * | 1985-08-02 | 1987-02-04 | GTE Laboratories Incorporated | High-speed queue sequencer for a burst-switching communications system |
CN103457967A (zh) * | 2012-05-30 | 2013-12-18 | 腾讯科技(深圳)有限公司 | 服务节点切换方法及系统 |
WO2020008468A1 (en) * | 2018-07-02 | 2020-01-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Software switch and method therein |
WO2020034425A1 (en) * | 2018-11-01 | 2020-02-20 | Zte Corporation | Handover procedure for vehicle based communications |
WO2020236287A1 (en) * | 2019-05-23 | 2020-11-26 | Cray Inc. | System and method for facilitating data-driven intelligent network with per-flow credit-based flow control |
CN112181593A (zh) * | 2020-09-27 | 2021-01-05 | 北京首都在线科技股份有限公司 | 虚拟机调度方法、装置、设备及存储介质 |
CN112929119A (zh) * | 2021-02-04 | 2021-06-08 | 烽火通信科技股份有限公司 | 分布式系统链路切换方法、装置、设备及存储介质 |
CN114040025A (zh) * | 2020-07-21 | 2022-02-11 | 深圳市腾讯网域计算机网络有限公司 | 一种控制切换网络环境的方法、装置及电子设备 |
CN114265753A (zh) * | 2021-12-27 | 2022-04-01 | 中国农业银行股份有限公司 | 消息队列的管理方法、管理系统和电子设备 |
CN114629951A (zh) * | 2022-03-22 | 2022-06-14 | 康键信息技术(深圳)有限公司 | 地址服务切换方法、装置、计算机设备和存储介质 |
CN115017436A (zh) * | 2022-08-05 | 2022-09-06 | 太平金融科技服务(上海)有限公司深圳分公司 | 应用程序的数据交互方法、装置、计算机设备和存储介质 |
CN115118785A (zh) * | 2022-08-29 | 2022-09-27 | 太平金融科技服务(上海)有限公司深圳分公司 | 服务器资源保护方法、装置、设备、介质和程序产品 |
WO2023029519A1 (zh) * | 2021-08-30 | 2023-03-09 | 康键信息技术(深圳)有限公司 | 一种数据同步方法及装置、计算机设备、存储介质 |
CN116009985A (zh) * | 2022-12-22 | 2023-04-25 | 企查查科技有限公司 | 接口调用方法、装置、计算机设备和存储介质 |
CN116192956A (zh) * | 2023-01-04 | 2023-05-30 | 北京皮尔布莱尼软件有限公司 | 一种缓存数据更新方法、系统、计算设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7526549B2 (en) * | 2003-07-24 | 2009-04-28 | International Business Machines Corporation | Cluster data port services for clustered computer system |
US20110154469A1 (en) * | 2009-12-17 | 2011-06-23 | At&T Intellectual Property Llp | Methods, systems, and computer program products for access control services using source port filtering |
WO2013149650A1 (en) * | 2012-04-03 | 2013-10-10 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and apparatus for providing a subscriber identity |
US10122645B2 (en) * | 2012-12-07 | 2018-11-06 | Cisco Technology, Inc. | Output queue latency behavior for input queue based device |
JP6740911B2 (ja) * | 2017-01-16 | 2020-08-19 | 富士通株式会社 | ポート切替プログラム、ポート切替方法、および情報処理装置 |
CN109905431B (zh) * | 2017-12-08 | 2021-01-26 | 京东方科技集团股份有限公司 | 消息处理方法及系统、存储介质、电子设备 |
WO2019157706A1 (en) * | 2018-02-14 | 2019-08-22 | Nokia Shanghai Bell Co., Ltd. | Methods and apparatuses for prioritized random access during handover |
-
2023
- 2023-07-25 CN CN202310912687.5A patent/CN116662016B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0210598A2 (en) * | 1985-08-02 | 1987-02-04 | GTE Laboratories Incorporated | High-speed queue sequencer for a burst-switching communications system |
CN103457967A (zh) * | 2012-05-30 | 2013-12-18 | 腾讯科技(深圳)有限公司 | 服务节点切换方法及系统 |
WO2020008468A1 (en) * | 2018-07-02 | 2020-01-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Software switch and method therein |
WO2020034425A1 (en) * | 2018-11-01 | 2020-02-20 | Zte Corporation | Handover procedure for vehicle based communications |
WO2020236287A1 (en) * | 2019-05-23 | 2020-11-26 | Cray Inc. | System and method for facilitating data-driven intelligent network with per-flow credit-based flow control |
CN114040025A (zh) * | 2020-07-21 | 2022-02-11 | 深圳市腾讯网域计算机网络有限公司 | 一种控制切换网络环境的方法、装置及电子设备 |
CN112181593A (zh) * | 2020-09-27 | 2021-01-05 | 北京首都在线科技股份有限公司 | 虚拟机调度方法、装置、设备及存储介质 |
CN112929119A (zh) * | 2021-02-04 | 2021-06-08 | 烽火通信科技股份有限公司 | 分布式系统链路切换方法、装置、设备及存储介质 |
WO2023029519A1 (zh) * | 2021-08-30 | 2023-03-09 | 康键信息技术(深圳)有限公司 | 一种数据同步方法及装置、计算机设备、存储介质 |
CN114265753A (zh) * | 2021-12-27 | 2022-04-01 | 中国农业银行股份有限公司 | 消息队列的管理方法、管理系统和电子设备 |
CN114629951A (zh) * | 2022-03-22 | 2022-06-14 | 康键信息技术(深圳)有限公司 | 地址服务切换方法、装置、计算机设备和存储介质 |
CN115017436A (zh) * | 2022-08-05 | 2022-09-06 | 太平金融科技服务(上海)有限公司深圳分公司 | 应用程序的数据交互方法、装置、计算机设备和存储介质 |
CN115118785A (zh) * | 2022-08-29 | 2022-09-27 | 太平金融科技服务(上海)有限公司深圳分公司 | 服务器资源保护方法、装置、设备、介质和程序产品 |
CN116009985A (zh) * | 2022-12-22 | 2023-04-25 | 企查查科技有限公司 | 接口调用方法、装置、计算机设备和存储介质 |
CN116192956A (zh) * | 2023-01-04 | 2023-05-30 | 北京皮尔布莱尼软件有限公司 | 一种缓存数据更新方法、系统、计算设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116662016A (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111752799A (zh) | 一种业务链路跟踪方法、装置、设备及储存介质 | |
US20130186956A1 (en) | Acquiring information dynamically regarding a hardware component in the cloud computing system while on the floor of the data center | |
CN111368013B (zh) | 基于多账户的统一标识方法、系统、设备和存储介质 | |
CN112685148B (zh) | 海量终端的异步通信方法、装置、计算机设备和存储介质 | |
CN112073398A (zh) | 消息队列的处理方法、装置和系统、存储介质和电子装置 | |
CN111274561A (zh) | 一种身份管理方法、装置、设备及存储介质 | |
CN114356521A (zh) | 任务调度方法、装置、电子设备及存储介质 | |
US20240291683A1 (en) | Information interaction method and apparatus, and electronic device | |
CN108520401B (zh) | 用户名单管理方法、装置、平台及存储介质 | |
US10165118B1 (en) | Intelligent context aware contact workflow engine manager | |
CN116662016B (zh) | 端口切换方法、装置、计算机设备、存储介质和程序产品 | |
JP6501924B2 (ja) | アラートを解除する方法及びサーバー | |
CN111756836B (zh) | 一种基于事件管理模型的信息发送方法及装置 | |
CN117632395A (zh) | 工作流处理方法、装置、设备、存储介质和程序产品 | |
CN110768855B (zh) | 链路化性能测试的方法和装置 | |
CN114254278A (zh) | 用户账号合并方法、装置、计算机设备以及存储介质 | |
CN113890753A (zh) | 数字身份管理方法、装置、系统、计算机设备和存储介质 | |
CN113452948A (zh) | 会议终端的控制方法、装置、设备及存储介质 | |
CN111343172A (zh) | 网络访问权限动态处理方法及装置 | |
CN104063659A (zh) | 一种提高网络连接安全性的方法及电子设备 | |
CN116132591A (zh) | 账号管理方法、装置、计算机设备和存储介质 | |
CN109067690B (zh) | 离线计算结果数据的推送方法及装置 | |
CN110166505B (zh) | 一种会话记录存储方法、装置、设备及存储介质 | |
WO2024109388A1 (zh) | 特征同步方法、装置、计算机设备、存储介质和程序产品 | |
CN117708117A (zh) | 批量数据处理方法、装置、电子装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |