CN110493030B - 网络优化方法、装置、计算机设备及存储介质 - Google Patents
网络优化方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110493030B CN110493030B CN201910602033.6A CN201910602033A CN110493030B CN 110493030 B CN110493030 B CN 110493030B CN 201910602033 A CN201910602033 A CN 201910602033A CN 110493030 B CN110493030 B CN 110493030B
- Authority
- CN
- China
- Prior art keywords
- request message
- request
- response data
- piece
- client application
- 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
Images
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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Abstract
本申请实施例属于云技术领域,涉及一种网络优化方法、装置、计算机设备及存储介质,方法包括:获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。通过同一个后端接口来解析请求信息,可以减少打开的后端接口数量;然后将对应的响应数据通过同一个TCP长连接返回给客户端,可以减少响应数据中重复的下行信息,使得传输数据量减小,从而提高通信效率。
Description
技术领域
本申请涉及云技术领域,尤其涉及网络优化方法、装置、计算机设备及存储介质。
背景技术
近年来,基于HTTP(超文本传输协议)/HTTPS(超文本安全传输协议)协议的Web应用在所有网络应用中所占的比例越来越高,各个公司、组织和个人都会开发自己的网站,包括服务端(云端)和客户端;其中,客户端主要有浏览器和APP(应用程序),特别是比较重视安全和速度的客户端,大多采用APP。
但是,现有基于HTTP/HTTPS协议的APP,每次通信的多个请求需要重复的、多余的上行和下行信息,使得一次通信数据包的传输数据量过大;而且,打开一个网址或一个APP的某个模块可能需要多次调用多个后端HTTP接口进行响应,影响响应速度;特别是在弱网络环境下,这些不足会严重通信效率,降低用户体验。
发明内容
本申请实施例的目的在于提出一种网络优化方法、装置、计算机设备及存储介质,以提高通信效率。
为了解决上述技术问题,本申请实施例提供一种网络优化方法,包括下述步骤:
获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;
将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;
将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。
进一步的,所述获取客户端应用程序的至少一个请求信息的步骤具体包括:
通过后端系统获取客户端应用程序的至少一个请求信息。
进一步的,所述将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据的步骤具体包括:
将所述获取到的至少一个请求信息放入到所述后端系统创建的消息队列中;
打开同一个后端系统接口来解析所述至少一个请求信息,得到解析结果;
根据所述解析结果获取与所述至少一个请求信息对应的至少一个响应数据。
进一步的,所述将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序的步骤具体还包括:
将所述至少一个响应数据传到服务窗的后台进行处理;
将所述处理后的至少一个响应数据通过同一个TCP长连接返回给所述客户端应用程序。
进一步的,所述将所述处理后的至少一个响应数据通过同一个TCP长连接返回给所述客户端应用程序的步骤具体还包括:
将所述处理后的至少一个响应数据以同一个TCP长连接的方式发送给所述服务窗的前端;
将所述服务窗前端的响应数据广播到客户端应用程序并缓存到本地。
进一步的,在所述将所述处理后的至少一个响应数据以同一个TCP长连接的方式发送给所述服务窗的前端的步骤之前还包括步骤:
创建一个端口和一个TCP套接字,并将所述端口和套接字绑定。
为了解决上述技术问题,本申请实施例还提供一种网络优化装置,采用了如下所述的技术方案:
所述网络优化装置,包括:
获取模块,用于获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;
解析模块,用于将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;
返回模块,用于将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。
进一步的,所述解析模块包括:
缓存子模块,用于将所述获取到的至少一个请求信息放入到所述后端系统创建的消息队列中;
解析子模块,用于打开同一个后端系统接口来解析所述至少一个请求信息,得到解析结果;
获取子模块,用于根据所述解析结果获取与所述至少一个请求信息对应的至少一个响应数据。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
所述计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现本申请实施例中提出的任一项所述的网络优化方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例中提出的任一项所述的网络优化方法的步骤。
与现有技术相比,本申请实施例主要有以下有益效果:获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。通过同一个后端接口来解析至少一个请求信息,可以减少打开的后端接口数量,提高响应速度;然后将对应的至少一个响应数据通过同一个TCP长连接返回给客户端,可以减少响应数据中多余的、重复的下行信息,使得传输数据量减小,从而提高通信效率。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2根据本申请的网络优化方法的一个实施例的流程图;
图3是图2中步骤201的一种具体实施方式的流程图;
图4是图2中步骤202的一种具体实施方式的流程图;
图5是图2中步骤203的一种具体实施方式的流程图;
图6是图5中步骤2032的一种具体实施方式的流程图;
图7是图6中步骤20321之前的步骤20320的一种具体实施方式的流程图;
图8是根据本申请的网络优化装置的一个实施例的结构示意图;
图9是图8所示解析模块802一种具体实施方式的结构示意图;
图10是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的网络优化方法一般由服务器/终端设备执行,相应地,网络优化装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的网络优化方法的一个实施例的流程图。所述的网络优化方法,包括以下步骤:
步骤201,获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据。
在本实施例中,网络优化方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式接收来自上述客户端应用程序的请求信息。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
其中,上述客户端可以包括安装有浏览器或者APP内部使用HTTP/HTTPS协议来与服务器通信的电子设备,如PC电脑、手机、或其他嵌入式设备等。客户端通过在程序内部调用HTTP/HTTPS协议接口创建实例,由该实例发送HTTP/HTTPS请求到web静态服务器,如apache、nginx等,然后再转发到后端系统;后端系统需要调用对应的接口来处理并返回上述请求需要的数据。
步骤202,将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据。
在本实施例中,如果通过上述转发到后端系统中的请求信息的流量过大,比如打开客户端APP的个人中心模块,需要获取用户名、用户号、头像等信息,就需要发送多个请求信息来分别获取对应的数据,因此可能会造成堵塞、延迟严重等情况;可以先将上述获取到的至少一个请求信息以消息队列或共享内存的方式缓存到数据缓冲区,还可以保存到数据库,以提高处理速度;然后调用对应模块的同一个后端接口逐个分析每个请求信息中的请求头、请求体等,进一步的根据请求的资源准备响应数据,最后再将响应数据通过上述web静态服务器返回给客户端。
步骤203,将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。
在本实施例中,响应数据可以是上述后端系统从文件系统或数据库中读取的图片、文档、指纹等一个或多个数据;可以对上述响应数据作进一步的处理,如渲染、加密等,然后创建一个TCP长连接,将上述一个或多个响应数据通过上述创建好的同一个TCP连续不断地发送给客户端。
需要说明的是,本申请实施例提供的网络优化方法可以应用于网络优化设备,例如:计算机、服务器、工作站等可以进行网络优化的设备。
在本实施例中,获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。通过同一个后端接口来解析至少一个请求信息,可以减少打开的后端接口数量,提高响应速度;然后将对应的至少一个响应数据通过同一个TCP长连接返回给客户端,可以减少响应数据中多余的、重复的下行信息,使得传输数据量减小,从而提高通信效率。
进一步的,如图3所示,上述步骤201可以包括:
步骤2011,通过后端系统获取客户端应用程序的至少一个请求信息。
在本实施例中,客户端应用程序(APP)通过在程序内部调用HTTP协议相关的接口创建HTTP客户端实例,然后由该实例发送HTTP请求到服务器,不需要用户在客户端输入服务器的域名或地址。
可选的,上述HTTP协议可替换为HTTPS(Secure Hypertext Transfer Protocol,安全超文本传输协议),它是一个安全通信通道,基于HTTP开发,使用安全套接字层(SSL)进行信息交换,它是HTTP的安全版,是使用TLS/SSL加密的HTTP协议。HTTP协议采用明文传输信息,存在信息窃听、信息篡改和信息劫持的风险,而HTTPS使用的TLS/SSL具有身份验证、信息加密和完整性校验的功能,可以避免此类问题。
一般情况下,上述客户端APP请求信息首先会发送到web静态服务器,如apache、nginx等,然后再转发到后端系统;进一步的,打开客户端APP的某个模块(如包含用户信息的个人中心)可能需要发送多个请求信息,来获取多个数据,如图片、指纹、语音等数据,同时后端系统需要调用对应多个请求的多个接口来处理并返回上述请求的数据。
进一步的,如图4所示,上述步骤202可以包括:
步骤2021,将所述获取到的至少一个请求信息放入到所述后端系统创建的消息队列中。
在本实施例中,如果请求后端系统数据的流量过大,如打开客户端APP的个人中心(用户名、头像等)需要发送多个请求信息来分别获取对应的数据,可能会造成堵塞、延迟严重等情况,这样可以先将获取到的请求信息以消息队列的方式缓存到数据缓冲区,以提高处理速度,可选的还可以保存到数据库。
步骤2022,打开同一个后端系统接口来解析所述至少一个请求信息,得到解析结果。
在本实施例中,可以开启一个或多个进程或线程,然后调用对应的后端接口去逐个解析上述存放到消息队列中的一个或多个请求信息。
进一步的,后端系统可以只使用一个后端接口来处理上述消息队列中的多个请求信息,如可单独通过个人中心接口来获取所有请求用户信息有关的数据,从而避免一次通信的多个请求对应打开多个对应的后端接口。
可选的,可以根据http请求报文的格式来解析上述请求信息,例如,可通过正则表达式或预先定义的模板来提取相关的参数字段及其对应的值,包括请求方式method字段(GET、POST等)、请求头和请求体,如host、url、cookie、User-Agent、content-type等。收到的如果是https请求数据时,可以先替换证书,再明文解析这个请求;被明文解析后的https请求,处理流程同上述http一致。
步骤2023,根据所述解析结果获取与所述至少一个请求信息对应的至少一个响应数据。
在本实施例中,通过上述步骤2022的解析可以获得请求信息中包括的请求方式method字段(GET、POST等)、请求头和请求体等,如host、url、cookie等;根据其中url解析得到的数据,即请求路径和资源,到对应的路径下读取相应的数据如图片、文档、语音等作为响应数据。
打开一个客户端APP模块的多个请求通过调用同一个后端接口,可以避免一次通信的多个请求对应打开多个后端接口,从而提高响应速度。
进一步的,如图5所示,上述步骤203可以包括:
步骤2031,将所述至少一个响应数据传到服务窗的后台进行处理。
在本实施例中,后端系统获取响应数据后,返回给服务窗后台,对响应数据作进一步的渲染、编码、加密等处理。进一步的,如果响应数据较多,如同时包含很多张图片和多个CSS文档等,可以在服务窗后台使用消息队列来处理这些响应数据。
步骤2032,将所述处理后的至少一个响应数据通过同一个TCP长连接返回给所述客户端应用程序。
在本实施例中,一般情况下,web网站的http服务使用的是TCP短连接,以满足大量的临时的网站访问,但对于本实施例中客户端是APP应用程序的情况,频繁的临时的访问不如浏览器多,例如用户不会短时间内反复登陆、退出APP的个人中心;在这种情况下,可以使用同一个TCP长连接的方式来实现点对点的而不是需要反复连接的通信,如读写数据等,进而不需要重复进行TCP三次握手的耗时的过程就可以将上述一个或多个响应数据通过同一个TCP长连接返回给所述客户端应用程序。
长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包(心跳包)以维持此连接,过程如下:
连接→数据传输→保持连接(心跳包)→数据传输→保持连接(心跳包)→……→关闭连接(一个TCP连接通道多个读写通信);
短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,过程如下:
连接→数据传输→关闭连接。
进一步的,如图6所示,上述步骤2032可以包括:
步骤20321,将所述处理后的至少一个响应数据以同一个TCP长连接的方式发送给所述服务窗的前端。
在本实施例中,将上述客户端APP一次通信的一个或多个请求的响应数据通过TCP长连接的同一个连接,也就是同一个端口和同一个TCP套接字,连续地发送到服务窗的前端,从而减少响应数据中多余的、重复的下行信息,如回应头部等,使得数据包的传输数据量减小。
步骤20322,将所述服务窗前端的响应数据广播到客户端应用程序并缓存到本地。
在本实施例中,服务窗前端得到响应数据后,可根据客户端APP模块的标识id等将数据广播到APP内对应的模块,然后由APP前端进行加载后显示出来。可选的,上述服务窗前端包含的一个或多个请求的响应数据可以缓存在上述APP前端模块的本地内存中,以便下一次访问该模块时直接从该内存中获取完整的数据,而不用再次重新请求后端系统,从而提高响应速度。
在本实施例的一些可选的实现方式中,如图7所示,在步骤20321之前,上述电子设备还可以执行以下步骤:
步骤20320,创建一个端口和一个TCP套接字,并将所述端口和套接字绑定。
在本实施例中,在上述响应数据通过同一个TCP长连接返回给客户端之前,需要调用系统提供的网络模块接口创建上述TCP套接字和端口,并将上述TCP套接字和端口绑定起来,以识别不同的应用程序的不同连接。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图8,作为对上述图2所示方法的实现,本申请提供了一种网络优化装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图8所示,本实施例所述的网络优化装置800包括:获取模块801、解析模块802以及返回模块803。其中:
获取模块801用于获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;
解析模块802用于将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;
返回模块803用于将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序。
参阅图9,为解析模块802的一种具体实施方式的结构示意图,解析模块802进一步包括:缓存子模块8021、解析子模块8022、获取子模块8023,其中:
缓存子模块8021,用于将所述获取到的至少一个请求信息放入到所述后端系统创建的消息队列中;
解析子模块8022,用于打开同一个后端系统接口来解析所述至少一个请求信息,得到解析结果;
获取子模块8023,用于根据所述解析结果获取与所述至少一个请求信息对应的至少一个响应数据。
本申请实施例提供的网络优化装置能够实现图2至图7的方法实施例中的各个实施方式,以及相应有益效果,为避免重复,这里不再赘述。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图10,图10为本实施例计算机设备基本结构框图。
所述计算机设备10包括通过系统总线相互通信连接存储器101、处理器102、网络接口103。需要指出的是,图中仅示出了具有组件101-103的计算机设备10,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器101至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器101可以是所述计算机设备10的内部存储单元,例如该计算机设备10的硬盘或内存。在另一些实施例中,所述存储器101也可以是所述计算机设备10的外部存储设备,例如该计算机设备10上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器101还可以既包括所述计算机设备10的内部存储单元也包括其外部存储设备。本实施例中,所述存储器101通常用于存储安装于所述计算机设备10的操作系统和各类应用软件,例如网络优化方法的程序代码等。此外,所述存储器101还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器102在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器102通常用于控制所述计算机设备10的总体操作。本实施例中,所述处理器102用于运行所述存储器101中存储的程序代码或者处理数据,例如运行所述网络优化方法的程序代码。
所述网络接口103可包括无线网络接口或有线网络接口,该网络接口103通常用于在所述计算机设备10与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有网络优化程序,所述网络优化程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的网络优化方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (10)
1.一种网络优化方法,其特征在于,包括下述步骤:
获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;
将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;
将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序;
其中,所述将上述获取到的至少一个请求信息进行缓存的步骤包括:
将上述获取到的至少一个请求信息以共享内存的方式缓存到数据缓冲区。
2.如权利要求1所述方法,其特征在于,所述获取客户端应用程序的至少一个请求信息的步骤具体包括:
通过后端系统获取客户端应用程序的至少一个请求信息。
3.如权利要求1所述方法,其特征在于,所述将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据的步骤具体包括:
将所述获取到的至少一个请求信息放入到后端系统创建的消息队列中;
打开同一个后端接口来解析所述至少一个请求信息,得到解析结果;
根据所述解析结果获取与所述至少一个请求信息对应的至少一个响应数据。
4.如权利要求1所述方法,其特征在于,所述将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序的步骤具体包括:
将所述至少一个响应数据传到服务窗的后台进行处理;
将所述处理后的至少一个响应数据通过同一个TCP长连接返回给所述客户端应用程序。
5.如权利要求4所述方法,其特征在于,所述将所述处理后的至少一个响应数据通过同一个TCP长连接返回给所述客户端应用程序的步骤具体包括:
将所述处理后的至少一个响应数据以同一个TCP长连接的方式发送给所述服务窗的前端;
将所述服务窗前端的响应数据广播到客户端应用程序并缓存到本地。
6.如权利要求5所述方法,其特征在于,在所述将所述处理后的至少一个响应数据以同一个TCP长连接的方式发送给所述服务窗的前端的步骤之前包括步骤:
创建一个端口和一个TCP套接字,并将所述端口和套接字绑定。
7.一种网络优化装置,其特征在于,包括:
获取模块,用于获取客户端应用程序的至少一个请求信息,所述至少一个请求信息包括HTTP请求数据或HTTPS请求数据;
解析模块,用于将上述获取到的至少一个请求信息进行缓存,将所述至少一个请求信息通过同一个后端接口进行解析,并获取与所述至少一个请求信息对应的至少一个响应数据;
返回模块,用于将所述与所述至少一个请求信息对应的至少一个响应数据通过同一个TCP长连接返回到所述客户端应用程序;
其中,所述将上述获取到的至少一个请求信息进行缓存包括:将上述获取到的至少一个请求信息以共享内存的方式缓存到数据缓冲区。
8.如权利要求7所述装置,其特征在于,所述解析模块包括:
缓存子模块,用于将所述获取到的至少一个请求信息放入到后端系统创建的消息队列中;
解析子模块,用于打开同一个后端接口来解析所述至少一个请求信息,得到解析结果;
获取子模块,用于根据所述解析结果获取与所述至少一个请求信息对应的至少一个响应数据。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的网络优化方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的网络优化方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910602033.6A CN110493030B (zh) | 2019-07-05 | 2019-07-05 | 网络优化方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910602033.6A CN110493030B (zh) | 2019-07-05 | 2019-07-05 | 网络优化方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110493030A CN110493030A (zh) | 2019-11-22 |
CN110493030B true CN110493030B (zh) | 2022-11-08 |
Family
ID=68546609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910602033.6A Active CN110493030B (zh) | 2019-07-05 | 2019-07-05 | 网络优化方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110493030B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291299B (zh) * | 2020-01-22 | 2023-08-15 | 北京飞漫软件技术有限公司 | 一种直接获取本地命令执行结果的方法及本地服务器 |
CN113126920A (zh) * | 2021-04-02 | 2021-07-16 | 深圳市杉岩数据技术有限公司 | 对象存储批量读取及写入方法、客户端、存储网关及介质 |
CN113422760B (zh) * | 2021-06-10 | 2023-04-07 | 杭州安恒信息技术股份有限公司 | 数据传输方法、装置、电子装置和存储介质 |
CN113806069B (zh) * | 2021-08-05 | 2024-04-05 | 广东核电合营有限公司 | 一种核电站系统交互方法、装置、外围系统及存储介质 |
CN114040005A (zh) * | 2021-10-18 | 2022-02-11 | 中国联合网络通信集团有限公司 | 一种数据传输方法、装置及存储介质 |
CN114520836B (zh) * | 2022-01-12 | 2024-04-19 | 深圳市微创云启科技有限公司 | 一种可多路复用并防数据篡改的网络通讯协议方法和系统 |
CN114785878A (zh) * | 2022-04-24 | 2022-07-22 | 北京印象笔记科技有限公司 | 信息提取方法及装置、电子设备、计算机可读存储介质 |
CN115190334A (zh) * | 2022-06-01 | 2022-10-14 | 阿里巴巴(中国)有限公司 | 一种状态沟通方法、装置、控制设备及可读存储介质 |
CN115103040A (zh) * | 2022-07-01 | 2022-09-23 | 厦门汉印电子技术有限公司 | 一种客户端和工控设备及其控制方法、装置和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618738B (zh) * | 2013-12-09 | 2017-05-03 | 惠州华阳通用电子有限公司 | 一种实现tcp长连接通信的负载智能分配系统及方法 |
CN109951560B (zh) * | 2019-03-27 | 2023-11-14 | 努比亚技术有限公司 | 提高应用服务并发量及应用速度的方法、终端及存储介质 |
-
2019
- 2019-07-05 CN CN201910602033.6A patent/CN110493030B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110493030A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110493030B (zh) | 网络优化方法、装置、计算机设备及存储介质 | |
CN109936621B (zh) | 信息安全的多页面消息推送方法、装置、设备及存储介质 | |
EP3745679B1 (en) | Systems and methods for web api communication | |
CN104253741B (zh) | 一种信息发送方法、相关装置及系统 | |
WO2015096800A1 (zh) | 数据处理方法、中间服务器及系统 | |
CN112631910A (zh) | 前端测试方法、装置、计算机设备及存储介质 | |
CN110798445A (zh) | 公共网关接口测试方法、装置、计算机设备及存储介质 | |
CN104484823B (zh) | 电子银行pki服务方法及其系统 | |
CN113259342A (zh) | 登录验证方法、装置、计算机设备及介质 | |
EP2813051B1 (en) | Dynamic sharing of a webservice | |
CN114996675A (zh) | 数据查询方法、装置、计算机设备及存储介质 | |
CN112436943B (zh) | 基于大数据的请求去重方法、装置、设备及存储介质 | |
US20180255173A1 (en) | Information pushing method and apparatus, and terminal and server | |
CN113242301A (zh) | 真实服务器的选定方法、装置、计算机设备及存储介质 | |
EP2813049B1 (en) | Dynamic sharing and updating of an electronic form | |
CN108011936A (zh) | 用于推送信息的方法和装置 | |
CN115330396A (zh) | 支付状态获取方法、装置、计算机设备及存储介质 | |
CN109768921B (zh) | 数据透传方法和相应的即时通讯终端 | |
CN110365633B (zh) | 通信流量控制方法、装置、计算机设备及存储介质 | |
CN112613025A (zh) | 一种计算机上usb设备和浏览器的通信方法 | |
CN113824696B (zh) | portal认证方法及装置 | |
CN113179161B (zh) | 一种秘钥更换的方法、装置、计算机设备及存储介质 | |
CN108243180A (zh) | 银行保单数据对接方法及保单数据服务器 | |
CN116860644A (zh) | 自动化测试方法、装置、计算机设备及存储介质 | |
CN116192514A (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 |