CN104022857A - 一种基于多种工作模式的服务器引擎框架的设计方法 - Google Patents
一种基于多种工作模式的服务器引擎框架的设计方法 Download PDFInfo
- Publication number
- CN104022857A CN104022857A CN201410282039.7A CN201410282039A CN104022857A CN 104022857 A CN104022857 A CN 104022857A CN 201410282039 A CN201410282039 A CN 201410282039A CN 104022857 A CN104022857 A CN 104022857A
- Authority
- CN
- China
- Prior art keywords
- module
- server engine
- server
- message
- engine framework
- 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.)
- Pending
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供一种基于多种工作模式的服务器引擎框架的设计方法,其具体实现过程为:设计主控模块、通信模块、服务管理模块、业务处理模块、报文解析模块、重发保障模块、自动维护模块、加密模块、批处理模块、日志维护模块十大模块。每个模块完成相对比较独立的功能,这种架构层次分明,以方便以后的升级和维护。该一种基于多种工作模式的服务器引擎框架的设计方法和现有技术相比,用于通信的报文均经过加密处理,可自定义加密关键字,提高了服务器框架的安全可靠性;实用性强,适用范围广泛,其配置的灵活性决定了该服务器引擎框架可以应用于多种开发和应用环境,易于推广。
Description
技术领域
本发明涉及计算机服务器技术领域,具体的说是一种基于多种工作模式的服务器引擎框架的设计方法。
背景技术
近十年来,信息技术尤其是计算机网络技术得到了飞速发展。人们得益于信息革命带来的巨大机遇的同时,各种服务器框架应运而生,为开发人员二次开发提供了方便。
TCP(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、基于IP的传输层协议。面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据包之前必须先建立一个TCP连接。
由于网络服务框架的需求量大,迫切需要发展一种能够实现高并发、跨平台、安全、灵活、稳定的服务器框架的技术。基于此,现提供一种基于多种工作模式的服务器引擎框架的设计方法,该服务器引擎框架的各个模块独立、订制灵活、使用方便、安全可靠,必将成为未来通信基数技术发展的趋势。
发明内容
本发明的技术任务是解决现有技术的不足,提供一种实用性强、基于多种工作模式的服务器引擎框架的设计方法。
本发明的技术方案是按以下方式实现的,该一种基于多种工作模式的服务器引擎框架的设计方法,其具体实现过程为:
设置网络服务器引擎框架,该框架由若干计算机设备组成,该计算机设备按照功能分为主控模块、通信模块、服务管理模块、业务处理模块、报文解析模块、重发保障模块、自动维护模块、加密模块、批处理模块、日志维护模块,其中
主控模块是服务器框架各个模块之间的连接纽带,通过配置XML格式文件来设置服务器引擎框架的路由,在不同的模块之间传递报文信息;
通信模块是服务器引擎框架的核心通信服务,其工作方式为基于TCP的短连接同步应答服务器,服务器引擎框架是根据XML格式的配置的参数,来配置要启动的通信模块的工作模式;
服务管理模块是服务器引擎框架运行的入口程序,根据XML格式配置文件来启动所需的服务;
业务处理模块通过配置.bus文件订制业务逻辑,通过动态调用动态库的形式完成业务处理;
报文解析模块根据XML格式配置文件中定义的报文格式进行组包和解包,报文解析模块将接收到的报文进行解包,放到服务器引擎框架的变量池中,通信模块和业务处理模块之间通过共享内存的方式共享这些变量,业务处理结束后,通信模块将变量池中的内容根据XML格式组包成新的报文发送到客户端;
重发保障模块用来重新发送报文,当通信模块因为接收连接失败或者其它原因造成无法接收客户端请求时,将客户端发送的报文保存下来,通过重发保障模块定时扫描将其重新发送;
自动维护模块负责监控,当其他进程状态处于未启动时,自动维护模块将会自动重新启动进程,确保控制服务器框架的正常运行;
加密模块通过设置XML格式配置文件对加密关键字KEY进行设置,并提供加密算法和连接用的加密接口;
批处理模块配置服务器引擎框架的批量处理业务,将需要进行批量处理的内容写成Shell脚本、动态库、Python、数据库SQL语句形式,来执行特定的批处理任务;
日志维护模块是日志维护和记录的模块,将每次业务处理的相关信息记录到数据库中;当平台处于调试模式时,将报文和变量池中的数据保存到数据库中,方便调试。
所述通信模块可以设置的工作模式有:
短连接同步应答服务器;
长连接异步应答服务器/客户端;
基于SSL的短连接同步应答服务器;
短连接同步应答客户端。
所述服务器引擎框架运行时,服务管理模块程序完成启动节点、查看节点、停止节点、跟踪日志、查看报文、查看帮助的动作。
所述业务处理模块处理的业务包括业务分解、数据的预处理操作。
所述报文是服务器引擎框架各个模块之间信息交换的载体,其是通过XML格式配置文件设置或是定长报文或分隔符格式的报文。
本发明与现有技术相比所产生的有益效果是:
本发明的一种基于多种工作模式的服务器引擎框架的设计方法具有以下优点:
1、提供了长短连接、同步异步、服务器、客户端等多种工作模式,通过XML格式配置文件的设置,支持提供多种基于TCP连接的服务;
2、可以动态生成多个业务处理节点,通过配置.bus文件订制业务逻辑,主要的业务处理通过动态调用动态库的形式,大大减少代码的耦合性;
3、支持8583格式、定长格式、分隔符格式等多种格式的报文的传输,通过XML格式配置文件订制的格式进行组包和解包,提高了服务器框架的安全性和灵活性;
4、提供了重发保障机制,避免了因服务器引擎框架暂时不能服务造成的报文丢失情况,提高了服务器引擎框架可靠性;
5、支持批量处理业务,通过批处理模块将需要进行批量处理的内容写成Shell脚本、动态库、Python、数据库SQL语句等多种形式,来执行特定的批处理任务;
6、支持批量处理业务,通过批处理模块将需要进行批量处理的内容写成Shell脚本、动态库、Python、数据库SQL语句等多种形式,来执行特定的批处理任务;
7、支持报文的加解密,可以通过设置XML格式配置文件对加密关键字KEY进行设置,同时还可以提供多种加密算法和加密接口,保证客户端和服务器引擎框架之间传输的报文的安全性。
8、报文在不同业务处理节点中通过变量池进行传输;可以通过XML格式订制通讯的方式,来满足不同情况下的业务需求;
9、同时还可以订制工作模式、加密方式、文件的接受方式、报文格式等等;用于通信的报文均经过加密处理,可自定义加密关键字,提高了服务器框架的安全可靠性,实用性强,适用范围广泛,其配置的灵活性决定了该服务器引擎框架可以应用于多种开发和应用环境,易于推广。
附图说明
附图1是本发明的服务器引擎框架示意图。
具体实施方式
下面结合附图对本发明的一种基于多种工作模式的服务器引擎框架的设计方法作以下详细说明。
如附图1所示,现提供一种基于多种工作模式的服务器引擎框架的设计方法,其具体实现过程为:
设置网络服务器引擎框架,该框架由若干计算机设备组成,该计算机设备按照功能分为主控模块、通信模块、服务管理模块、业务处理模块、报文解析模块、重发保障模块、自动维护模块、加密模块、批处理模块、日志维护模块,每个模块完成相对比较独立的功能,这种架构层次分明,以方便以后的升级和维护。其中
主控模块即主控服务,是服务器引擎框架的核心模块,是服务器框架各个模块之间的纽带,通过配置XML格式文件来设置服务器引擎框架的路由,在不同的模块之间传递报文信息,从而完成业务的处理。这种工作方式不仅设计灵活和使用方便,而且减少二次开发带来的工作量。
通信模块是服务器引擎框架的核心通信服务。它的默认工作方式是基于TCP(面向连接)的短连接同步应答服务器,服务器引擎框架是根据XML格式的配置的参数,来配置要启动的通信模块的工作模式。
服务管理模块是服务器引擎框架运行的入口程序,根据XML格式配置文件来启动所需的服务。
业务处理模块是服务器引擎框架的基本的业务逻辑处理模块。它的功能是通过配置.bus文件订制业务逻辑,主要的业务处理通过动态调用动态库的形式,大大减少代码的耦合性。
报文解析模块的功能是根据XML格式配置文件中定义的报文格式进行组包和解包,报文解析模块将接受到的报文进行解包,放到服务器引擎框架的变量池中,通信模块和业务处理模块之间通过共享内存的方式共享这些变量,业务处理结束后,通信模块模块将变量池中的内容根据XML格式组包成新的报文发送到客户端。
重发保障模块是用来重新发送报文。它的功能是当核心通信服务模块因为接受连接失败或者其它原因造成无法接受客户端请求时,将客户端发送的报文保存下来,通过重发保障模块能定时扫描将其重新发送,这样就避免了因服务器引擎框架暂时不能服务造成的报文丢失情况,提高了服务器引擎框架可靠性。
自动维护模块是核心功能就是监控,当其他进程状态出于未启动时,自动维护模块将会自动重新启动进程,用来确保控制服务器框架的正常运行。
加密模块是为了保证客户端和服务器引擎框架之间传输的报文的安全性,可以通过设置XML格式配置文件对加密关键字KEY进行设置,同时还可以提供多种加密算法、加密接口等等。
批处理模块主要用来配置服务器引擎框架的批量处理业务。通过批处理模块将需要进行批量处理的内容写成Shell脚本、动态库、Python、数据库SQL语句等多种形式,来执行特定的批处理任务。
日志维护模块是日志维护和记录的模块。它的功能是将每次业务处理的相关信息记录到数据库中;当平台处于调试模式下时,将报文和变量池中的数据保存到数据库中,方便调试。
所述通信模块可以设置的工作模式有:
短连接同步应答服务器;
长连接异步应答服务器/客户端;
基于SSL的短连接同步应答服务器;
短连接同步应答客户端。
所述服务器引擎框架运行时,服务管理模块程序完成启动节点、查看节点、停止节点、跟踪日志、查看报文、查看帮助的动作。
所述业务处理模块处理的业务包括业务分解、数据的预处理操作。
报文是该服务器引擎框架各个模块之间信息交换的载体,可以通过XML格式配置文件设置为特定行业的报文,如8583金融报文;也可以是定长报文格式和分隔符格式的报文等等。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (5)
1.一种基于多种工作模式的服务器引擎框架的设计方法,其特征在于其具体实现过程为:
设置网络服务器引擎框架,该框架由若干计算机设备组成,该计算机设备按照功能分为主控模块、通信模块、服务管理模块、业务处理模块、报文解析模块、重发保障模块、自动维护模块、加密模块、批处理模块、日志维护模块,其中
主控模块是服务器框架各个模块之间的连接纽带,通过配置XML格式文件来设置服务器引擎框架的路由,在不同的模块之间传递报文信息;
通信模块是服务器引擎框架的核心通信服务,其工作方式为基于TCP的短连接同步应答服务器,服务器引擎框架是根据XML格式的配置的参数,来配置要启动的通信模块的工作模式;
服务管理模块是服务器引擎框架运行的入口程序,根据XML格式配置文件来启动所需的服务;
业务处理模块通过配置.bus文件订制业务逻辑,通过动态调用动态库的形式完成业务处理;
报文解析模块根据XML格式配置文件中定义的报文格式进行组包和解包,报文解析模块将接收到的报文进行解包,放到服务器引擎框架的变量池中,通信模块和业务处理模块之间通过共享内存的方式共享这些变量,业务处理结束后,通信模块将变量池中的内容根据XML格式组包成新的报文发送到客户端;
重发保障模块用来重新发送报文,当通信模块因为接收连接失败或者其它原因造成无法接收客户端请求时,将客户端发送的报文保存下来,通过重发保障模块定时扫描将其重新发送;
自动维护模块负责监控,当其他进程状态处于未启动时,自动维护模块将会自动重新启动进程,确保控制服务器框架的正常运行;
加密模块通过设置XML格式配置文件对加密关键字KEY进行设置,并提供加密算法和连接用的加密接口;
批处理模块配置服务器引擎框架的批量处理业务,将需要进行批量处理的内容写成Shell脚本、动态库、Python、数据库SQL语句形式,来执行特定的批处理任务;
日志维护模块是日志维护和记录的模块,将每次业务处理的相关信息记录到数据库中;当平台处于调试模式时,将报文和变量池中的数据保存到数据库中,方便调试。
2. 根据权利要求1所述的一种基于多种工作模式的服务器引擎框架的设计方法,其特征在于:所述通信模块可以设置的工作模式有:
短连接同步应答服务器;
长连接异步应答服务器/客户端;
基于SSL的短连接同步应答服务器;
短连接同步应答客户端。
3.根据权利要求1所述的一种基于多种工作模式的服务器引擎框架的设计方法,其特征在于:所述服务器引擎框架运行时,服务管理模块程序完成启动节点、查看节点、停止节点、跟踪日志、查看报文、查看帮助的动作。
4.根据权利要求1所述的一种基于多种工作模式的服务器引擎框架的设计方法,其特征在于:所述业务处理模块处理的业务包括业务分解、数据的预处理操作。
5.根据权利要求1所述的一种基于多种工作模式的服务器引擎框架的设计方法,其特征在于:所述报文是服务器引擎框架各个模块之间信息交换的载体,其是通过XML格式配置文件设置或是定长报文或分隔符格式的报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410282039.7A CN104022857A (zh) | 2014-06-23 | 2014-06-23 | 一种基于多种工作模式的服务器引擎框架的设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410282039.7A CN104022857A (zh) | 2014-06-23 | 2014-06-23 | 一种基于多种工作模式的服务器引擎框架的设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104022857A true CN104022857A (zh) | 2014-09-03 |
Family
ID=51439444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410282039.7A Pending CN104022857A (zh) | 2014-06-23 | 2014-06-23 | 一种基于多种工作模式的服务器引擎框架的设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104022857A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872101A (zh) * | 2016-06-03 | 2016-08-17 | 浪潮电子信息产业股份有限公司 | 一种服务器通信管理的装置及配置服务器通信形式的方法 |
CN106023050A (zh) * | 2016-06-17 | 2016-10-12 | 海南智城科技发展股份有限公司 | 一种交通数据管理*** |
CN106254359A (zh) * | 2016-08-11 | 2016-12-21 | 浪潮电子信息产业股份有限公司 | 一种可配置的报文解析***及方法 |
CN106775775A (zh) * | 2017-01-24 | 2017-05-31 | 深圳市启仑智能科技有限公司 | 一种基于OpenResty的高性能MVC框架 |
CN107545186A (zh) * | 2017-09-06 | 2018-01-05 | 杭州安恒信息技术有限公司 | 快速解决引擎不工作的方法、装置及*** |
CN110263004A (zh) * | 2019-05-08 | 2019-09-20 | 北京字节跳动网络技术有限公司 | 日志记录方法、装置、电子设备和存储介质 |
CN110324427A (zh) * | 2019-07-09 | 2019-10-11 | 晏保华 | 一种异步数据交互***、方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609526A (zh) * | 2012-02-13 | 2012-07-25 | 工购电子商务(上海)有限公司 | 互联网网站内容管理*** |
CN103513990A (zh) * | 2013-10-11 | 2014-01-15 | 安徽科大讯飞信息科技股份有限公司 | 一种用于分布式处理的高性能通用网络框架的设计方法 |
CN103677788A (zh) * | 2012-09-25 | 2014-03-26 | 深圳市金正方科技股份有限公司 | 基于j2ee分布式架构的重用框架生成方法、装置及应用*** |
CN103685300A (zh) * | 2013-12-23 | 2014-03-26 | 蓝盾信息安全技术股份有限公司 | 一种嵌入式web服务器 |
-
2014
- 2014-06-23 CN CN201410282039.7A patent/CN104022857A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609526A (zh) * | 2012-02-13 | 2012-07-25 | 工购电子商务(上海)有限公司 | 互联网网站内容管理*** |
CN103677788A (zh) * | 2012-09-25 | 2014-03-26 | 深圳市金正方科技股份有限公司 | 基于j2ee分布式架构的重用框架生成方法、装置及应用*** |
CN103513990A (zh) * | 2013-10-11 | 2014-01-15 | 安徽科大讯飞信息科技股份有限公司 | 一种用于分布式处理的高性能通用网络框架的设计方法 |
CN103685300A (zh) * | 2013-12-23 | 2014-03-26 | 蓝盾信息安全技术股份有限公司 | 一种嵌入式web服务器 |
Non-Patent Citations (1)
Title |
---|
伍杰华等: ""基于XML的J2EE框架研究与设计"", 《现代计算机(专业版)》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872101A (zh) * | 2016-06-03 | 2016-08-17 | 浪潮电子信息产业股份有限公司 | 一种服务器通信管理的装置及配置服务器通信形式的方法 |
CN106023050A (zh) * | 2016-06-17 | 2016-10-12 | 海南智城科技发展股份有限公司 | 一种交通数据管理*** |
CN106254359A (zh) * | 2016-08-11 | 2016-12-21 | 浪潮电子信息产业股份有限公司 | 一种可配置的报文解析***及方法 |
CN106775775A (zh) * | 2017-01-24 | 2017-05-31 | 深圳市启仑智能科技有限公司 | 一种基于OpenResty的高性能MVC框架 |
CN107545186A (zh) * | 2017-09-06 | 2018-01-05 | 杭州安恒信息技术有限公司 | 快速解决引擎不工作的方法、装置及*** |
CN107545186B (zh) * | 2017-09-06 | 2020-03-17 | 杭州安恒信息技术股份有限公司 | 快速解决引擎不工作的方法、装置及*** |
CN110263004A (zh) * | 2019-05-08 | 2019-09-20 | 北京字节跳动网络技术有限公司 | 日志记录方法、装置、电子设备和存储介质 |
CN110324427A (zh) * | 2019-07-09 | 2019-10-11 | 晏保华 | 一种异步数据交互***、方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104022857A (zh) | 一种基于多种工作模式的服务器引擎框架的设计方法 | |
CN103220292B (zh) | 跨安全区数据传输方法和*** | |
EP2215759B1 (en) | Method and system for notifying error information in a network | |
CN106685937B (zh) | 基于Netty封装的自定义互联网电视http协议方法 | |
CN106992908A (zh) | 一种智能家居管理***及其管理方法 | |
CN104348578B (zh) | 数据处理的方法及装置 | |
CN112383881A (zh) | 一种信息上报方法、装置、设备及存储介质 | |
CN101227470A (zh) | 一种业务管理***及业务管理方法 | |
CN112422588A (zh) | 一种物联网设备信息处理方法及*** | |
CN102377505A (zh) | 一种基于串口的ipmi数据包传输方法 | |
CN112333009A (zh) | 一种基于配置的网关*** | |
CN106254392B (zh) | 基于动态可自定义的exTLV报文传输协议的通信方法 | |
CN101453479A (zh) | 一种快速的文件传输*** | |
CN105245579B (zh) | 一种配电网***海量数据通讯处理方法及*** | |
CN104980569A (zh) | 一种可与手机通信的电子墨水壳*** | |
CN103701819B (zh) | 超文本传输协议解密的处理方法及装置 | |
CN103095702A (zh) | 一种请求消息的上报和处理方法及其装置 | |
CN101227277A (zh) | 一种基于wap1.2网关实现端到端的安全的***及其方法 | |
CN101478428B (zh) | 软硬件协同的以太网故障安全通信***和数据传输方法 | |
CN107819597B (zh) | 网络数据传输方法和前置机 | |
CN113630466B (zh) | 数据传输方法、***、电子设备及存储介质 | |
CN111221764B (zh) | 一种跨链路数据传输方法及*** | |
CN105407081A (zh) | 一种安全高效卫星数据传输***及其数据同步和传输方法 | |
CN100375464C (zh) | 网络互连时各终端的数据通信方法 | |
CN108696347A (zh) | 蓝牙aes加密启动方法、***和蓝牙主、从设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140903 |