CN107465738A - 一种通信方法、服务器及计算机可读存储介质 - Google Patents
一种通信方法、服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107465738A CN107465738A CN201710648476.XA CN201710648476A CN107465738A CN 107465738 A CN107465738 A CN 107465738A CN 201710648476 A CN201710648476 A CN 201710648476A CN 107465738 A CN107465738 A CN 107465738A
- Authority
- CN
- China
- Prior art keywords
- server
- character strings
- data cached
- json character
- json
- 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.)
- Withdrawn
Links
Classifications
-
- 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
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- 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
- H04L67/141—Setup of application sessions
-
- 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/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种通信方法、服务器及计算机可读存储介质。该方法包括:将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;将所述JSON字符串存储在预设存储器中;当服务器启动时,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据;根据所述待缓存数据中的登录数据与所述客户端建立连接。该方法可以有效减小服务器与客户端重新连接过程中服务器对数据库的访问压力,避免数据库出现崩溃等现象,同时,也可以提高服务器与客户端重新连接的速度。
Description
技术领域
本发明涉及服务器通信技术领域,尤其涉及一种通信方法、服务器及计算机可读存储介质。
背景技术
对于长连接的服务器来说,当服务器需要进行更新、重启等操作时,服务器就会与客户端断开连接。当服务器重新启动后,服务器将接收到大量的客户端发送的重新连接请求,服务器根据重新连接请求高并发地向数据库获取大量的客户端登录所需数据,这就容易造成数据库压力较大,甚至出现崩溃,同时服务器与客户端重新建立连接的速度也大大降低。
发明内容
本发明的实施例提供了一种通信方法、服务器及计算机可读存储介质,可以在服务器完成更新程序、重启等操作之后,减小服务器与客户端重新连接过程中服务器对数据库的访问压力,避免数据库出现崩溃等现象。
第一方面,本发明实施例提供了一种通信方法,其包括:
将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;
将所述JSON字符串存储在预设存储器中;
当所述服务器启动时,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据;
根据所述待缓存数据中的登录数据与所述客户端建立连接。
第二方面,本发明实施例还提供了一种服务器,其包括:
序列化单元,用于将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;
存储单元,用于将所述JSON字符串存储在预设存储器中;
读取单元,用于当所述服务器启动时,从所述预设存储器中读取所述JSON字符串;
反序列化单元,用于将所述JSON字符串反序列化成所述待缓存数据;
连接单元,用于根据所述待缓存数据中的登录数据与所述客户端建立连接。
第三方面,本发明实施例又提供了一种服务器,其包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储程序代码,所述处理器被配置用于调用所述程序代码,执行本发明提供的任一项所述的通信方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行发明提供的任一项所述的通信方法。
本发明实施例,在服务器执行更新程序、重启等操作之前,将客户端的待缓存数据序列化成JSON字符串,并将所述JSON字符串存储在预设存储器中;在服务器启动之后,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据,再根据所述待缓存数据中的登录数据与所述客户端建立连接。该方法可以有效减小服务器与客户端重新连接过程中服务器对数据库的访问压力,避免数据库出现崩溃等现象,同时,也可以提高服务器与客户端重新连接的速度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种通信方法的示意流程图;
图2是图1所示通信方法中步骤S102的具体步骤示意流程图;
图3是本发明实施例提供的一种通信方法的另一示意流程图;
图4是图3所示通信方法中步骤S204的具体步骤示意流程图;
图5是本发明实施例提供的一种服务器的示意性框图;
图6是图5所示服务器中反序列化单元的示意性框图;
图7是本发明实施例提供的一种服务器的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1是本发明实施例提供的一种通信方法的示意流程图。该方法可以运行在需要与客户端建立连接的服务器中,譬如,微信应用服务器等应用服务器。如图1所示,该方法包括步骤S101~S104。
S101、将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据。
当服务器需要执行更新程序、重启等需要与客户端断开连接的操作时,服务器在执行程序更新、重启等操作之前,先获取客户端的待缓存数据。
在此,客户端的待缓存数据可以包括客户端与服务器建立连接时所需的登录数据。譬如,用户的名字、昵称、登录账号、密码等信息。
当然,在其他实施例中,客户端的待缓存数据也可以包括客户端的其他信息。譬如,用户在客户端上正向A好友发送聊天信息,若服务器需要与客户端断开连接,服务器可以获取用户发送的聊天信息,并将该聊天信息以及A好友作为待缓存数据。这样,当服务器与客户端重新建立连接时,服务器可以将该聊天信息发送至A好友。
可以理解的是,客户端的待缓存数据可以根据服务器以及实际需求进行设置,在此不对待缓存数据的具体内容进行限制。
当服务器获取到客户端的待缓存数据之后,将对该待缓存数据进行序列化处理,以形成对应的JSON字符串。
在此,JSON(JavaScript ObjectNotation)是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-2623rd Edition-December 1999)脚本语言的一个子集。JSON建构于两种结构,分别为JSON对象和JSON数组。其中,JSON对象在花括号中书写,对象可以包含多个键值对。JSON数组在方括号中书写,数组可包含多个对象。
譬如,服务器获取“张华”和“李思”两个客户端的待缓存数据,并对两个客户端的待缓存数据进行序列化处理形成对应的JSON字符串,该JSON字符串如下:
{“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}
{“id”:2,“username”:Lisi,“nickname”:Andy,“country”:japan,“city”:shenzhen,“friends”:[{“username”:Zhanghua,“nickname”:Deni},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}
S102、将所述JSON字符串存储在预设存储器中。
在一实施例中,请参阅图2所示,图2为图1所示通信方法中步骤S102的具体步骤示意流程图。该将所述JSON字符串存储在预设存储器中,包括步骤S102a~102b。
S102a、将所述JSON字符串写入本地缓存文件。
服务器可以边生成JSON字符串边将生成的JSON字符串写入本地缓存文件,也可以先生成JSON字符串,在将生成的JSON字符串写入本地缓存文件中。
S102b、将所述本地缓存文件存储在所述服务器的外部存储器中。
在此,外部存储器可以包括服务器的本地硬盘、移动硬盘、软盘、光盘、U盘等外部存储器。
在另一实施例中,所述将所述JSON字符串存储在预设存储器中,包括:将所述JSON字符串写入所述服务器的外部数据库中。譬如,将JSON字符串写入Redis等外部数据库中。
可以理解的是,预设存储器的类型不局限于上述的外部存储器、外部数据库,还可以为其他类型的存储器,在此不做具体限制。
S103、当所述服务器启动时,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据。
在服务器将JSON字符串存储在预设存储器之后,服务器可以进行更新程序、重启等操作。在服务器完成更新程序、重启等操作之后,服务器将执行启动操作。在此,服务器执行启动操作可以包括服务器执行重启操作。
在一实施例中,从所述预设存储器中读取所述JSON字符串,包括:从所述外部存储器中读取所述本地缓存文件;从所述本地缓存文件中读取所述JSON字符串。
在另一实施例中,从所述预设存储器中读取所述JSON字符串,包括:从所述外部数据库中读取所述JSON字符串。
在本实施例中,服务器逐行读取JSON字符串,并将每行JSON字符串进行反序列化处理以形成待缓存数据,并将所述待缓存数据存储在所述服务器的内存储器中,以便于服务器根据内存储器中的待缓存数据执行相应的操作。
S104、根据所述待缓存数据中的登录数据与所述客户端建立连接。
服务器将待缓存数据暂时存储在内存储器中之后,服务器再根据该待缓存数据中的登录数据与客户端建立连接。这样,服务器在与客户端重新建立连接时,服务器就不用向数据库高并发地获取登录所需的数据,减小数据库的压力,避免数据库发生崩溃等现象。
在本实施例中,在服务器执行更新程序、重启等操作之前,将客户端的待缓存数据序列化成JSON字符串,并将所述JSON字符串存储在预设存储器中;在服务器启动之后,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据,再根据所述待缓存数据中的登录数据与所述客户端建立连接。该方法可以有效减小服务器与客户端重新连接过程中服务器对数据库的访问压力,避免数据库出现崩溃等现象,同时,也可以提高服务器与客户端重新连接的速度。
请参阅图3,图3是本发明实施例提供的一种通信方法的另一示意流程图。该方法可以运行在需要与客户端建立连接的服务器中,譬如,微信应用服务器等应用服务器。如图3所示,该方法包括步骤S201~S205。
S201、将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据。
当服务器需要执行更新程序、重启等需要与客户端断开连接的操作时,服务器在执行程序更新、重启等操作之前,先获取客户端的待缓存数据。
在此,客户端的待缓存数据可以包括客户端与服务器建立连接时所需的登录数据。譬如,用户的名字、昵称、登录账号、密码等信息。
当然,在其他实施例中,客户端的待缓存数据也可以包括客户端的其他信息。譬如,用户在客户端上正向A好友发送聊天信息,若服务器需要与客户端断开连接,服务器可以获取用户发送的聊天信息,并将该聊天信息以及A好友作为待缓存数据。这样,当服务器与客户端重新建立连接时,服务器可以将该聊天信息发送至A好友。
可以理解的是,客户端的待缓存数据可以根据服务器以及实际需求进行设置,在此不对该待缓存数据的具体内容进行限制。
当服务器获取到客户端的待缓存数据之后,将对该待缓存数据进行序列化处理,以形成对应的JSON字符串。
譬如,服务器获取“张华”和“李思”两个客户端的待缓存数据,并对两个客户端的待缓存数据进行序列化处理形成对应的JSON字符串,该JSON字符串如下:
{“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}
{“id”:2,“username”:Lisi,“nickname”:Andy,“country”:japan,“city”:shenzhen,“friends”:[{“username”:Zhanghua,“nickname”:Deni},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}
S202、将所述JSON字符串存储在预设存储器中。
在一实施例中,将所述JSON字符串存储在预设存储器中,包括:将所述JSON字符串写入本地缓存文件:将所述本地缓存文件存储在所述服务器的外部存储器中。在此,外部存储器可以包括服务器的本地硬盘、移动硬盘、软盘、光盘、U盘等外部存储器。
在另一实施例中,将所述JSON字符串存储在预设存储器中,包括:将所述JSON字符串写入所述服务器的外部数据库中。譬如,将JSON字符串写入Redis等外部数据库中。
可以理解的是,预设存储器的类型不局限于上述的外部存储器、外部数据库,还可以为其他类型的存储器,在此不做具体限制。
S203、当所述服务器启动时,从所述预设存储器中读取所述JSON字符串。
在服务器将JSON字符串存储在预设存储器之后,服务器可以进行更新程序、重启等操作。在服务器完成更新程序、重启等操作之后,服务器将执行启动操作。譬如,服务器执行重启操作。
在一实施例中,从所述预设存储器中读取所述JSON字符串,包括:从所述外部存储器中读取所述本地缓存文件;从所述本地缓存文件中读取所述JSON字符串。
在另一实施例中,从所述预设存储器中读取所述JSON字符串,包括:从所述外部数据库中读取所述JSON字符串。
S204、根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据。
在本实施例中,请参阅图4,图4为图3所示通信方法中步骤S204的具体步骤流程图。根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据,包括步骤S204A~S204K。
S204A、判断所述JSON字符串中的第一个字符是否为预设符号字符。
在本实施例中,预设符号字符可以包括“[]”方括号和“{}”花括号。根据JSON字符串的基本知识,“{}”花括号表示对象,“[]”方括号表示数组,而且预设符号字符通常成对出现。譬如,当第一个字符为“{”时,那么JSON字符串中必然有一个“}”字符与第一个字符对称并合成完整的花括号。
S204B、删除对称的所述预设符号字符,并将剩余的字符串赋值给所述JSON字符串。
当服务器判断出JSON字符串中的第一个字符为预设符号字符时,服务器将查找到与该第一个字符对称的字符,并删掉该对称的预设符号字符。
譬如,在JSON字符串{“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}中,第一个字符“{”和最后一个字符“}”是对称的预设符号字符,服务器将该第一个字符“{”和最后一个字符“}”删除。
服务器删除对称的预设符号字符之后,将剩余的字符串赋值给JSON字符串,并重新返回执行步骤S204A。
S204C、获取第一个冒号字符之前的字符串为键。
当服务器判断出JSON字符串中的第一个字符不为预设符号字符时,服务器将获取第一个“:”冒号字符之前的字符串为键。譬如,JSON字符串为:“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}],第一个字符不是预设字符,此时服务器将读取第一个冒号字符之前的字符串“id”,并将该“id”字符串作为键。
S204D、判断所述第一个冒号字符的后面是否有逗号字符。
在读取到键之后,服务器将判断第一个冒号字符的后面是否有“,”逗号字符。若服务器判断出第一个冒号字符的后面没有“,”逗号字符,则执行步骤S204E;若服务器判断出第一个冒号字符的后面有“,”逗号字符,则执行步骤S204F。
S204E、获取所述第一个冒号字符之后的字符串为所述键的值。
当第一个冒号字符的后面没有逗号字符时,说明该条JSON字符串已经完结,服务器将读取第一个冒号字符之后的字符串为键的值,该键与值组成键值对,并执行步骤S204K。
S204F、判断所述第一个冒号字符后面的第一个字符是否为所述预设符号字符。
当第一个冒号字符的后面有逗号字符时,说明该条JSON字符串还没有完结,服务器将判断该第一个冒号字符后面的第一个字符是否为预设符号字符。
若判断出该第一个冒号字符后面的第一个字符不为预设符号字符,说明该键的值不为数组形式,服务器将执行步骤S204G。
若判断出该第一个冒号字符后面的第一个字符为预设符号字符,说明该键的值为数组形式,服务器将执行步骤S204H。
S204G、获取所述第一个冒号字符与其后第一个逗号字符之间的字符串为所述键的值以与所述键形成键值对,并将所述第一个逗号字符之后的字符串赋值给所述JSON字符串。
譬如,JSON字符串为:“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}],第一个冒号字符与其后第一个逗号字符之间的字符串为“1”,此时服务器将读取“1”作为键“id”的值,形成<id,1>键值对。
然后,服务器再将第一个逗号字符之后的字符串“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]赋值给JSON字符,并返回执行步骤S204A。
重复上述步骤,可以依次获得如下键值对:<id,1>、<username,Zhanghua>、<nickname,Deni>、<country,china>、<city,daqing>。当服务器获取到JSON字符串中的下一个键为“friends”时,在步骤S204F中,服务器判断出第一冒号后面的第一个字符为预设符号字符“[”,此时,服务器将判定该键“friends”的值为数组,服务器将执行步骤S204H。
S204H、判定所述键的值为数组,将对称的所述预设符号字符之间的字符串反序列化成键值对和/或键数组对作为所述键的值,以与所述键形成键数组对。
譬如,将对称的预设符号字符之间的字符串{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}进行反序列化处理,形成<username,Lisi>、<nickname,Andy>、<username,Anna>、<nickname,Smith>、<username,Peter>、<nickname,Jones>。
<username,Lisi>、<nickname,Andy>、<username,Anna>、<nickname,Smith>、<username,Peter>、<nickname,Jones>这六个键值对均为键“friends”的值。也就是说,键“friends”的值为包括六个键值对的数组,这样键“friends”与其数组形式的值形成键数组对。
需要说明的是,对键“friends”的值的具体获取方法可以采用本实施例中步骤S204A至S204G的步骤获取,也可以采用其他反序列化方式获取,在此不做具体限制。
另外,在另一实施例中,当键“friends”的值中又包括键数组对时,此时将对称的所述预设符号字符之间的字符串反序列化之后,还可以形成键数组对作为所述键的值。
S204I、判断对称的所述预设符号字符后面是否有所述逗号字符。
在获取完键数组对之后,也就是说,在将对称的预设符号字符之间的字符串反序列化之后,服务器还需判断对称的预设符号字符后面是否有逗号字符,以便于判断该JSON字符串是否完结。
若服务器判断出该对称的预设符号字符后面有逗号,说明该JSON字符串还没有完结,此时服务器将执行步骤S204J。
若服务器判断出该对称的预设符号字符后面没有逗号,说明该JSON字符串已经完结,此时服务器将执行步骤S204K。
S204J、将所述逗号字符后面的字符串赋值给所述JSON字符串。
服务器将逗号字符后面的字符串赋值给JSON字符串后,并返回执行步骤S204A,以继续将JSON字符串反序列化成键值对或键数组对的形式。
S204K、读取下一条JSON字符串,并返回执行步骤S204A。
在服务器判断出当前的JSON字符串已经完结时,服务器将读取下一条JSON字符串,并对新读取到的JSON字符串执行步骤S204A,以将新读取到的JSON字符串反序列化成键值对或键数组对的形式。
可以理解的是,本实施例中,当服务器根据步骤S204A至S204K的预设规则依次读取JSON字符串中的键值对和/或键数组对后,该键值对和/或键数组对将形成所述待缓存数据。
服务器在通过上述步骤S204A至S204K的预设规则获取到待缓存数据之后,将待缓存数据存储在服务器的内存储器中,以便于服务器根据内存储器中的待缓存数据执行相应的操作。
S204、根据所述待缓存数据中的登录数据与所述客户端建立连接。
服务器将待缓存数据暂时存储在内存储器中之后,服务器再根据该待缓存数据中的登录数据与客户端建立连接。这样,服务器在与客户端重新建立连接时,服务器就不用向数据库高并发地获取登录所需的数据,减小数据库的压力,避免数据库发生崩溃等现象。
在本实施例中,在服务器执行更新程序、重启等操作之前,将客户端的待缓存数据序列化成JSON字符串,并将所述JSON字符串存储在预设存储器中;在服务器启动之后,从所述预设存储器中读取所述JSON字符串,并根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据,再根据所述待缓存数据中的登录数据与所述客户端建立连接。该方法可以有效减小服务器与客户端重新连接过程中服务器对数据库的访问压力,避免数据库出现崩溃等现象,同时,也可以提高服务器与客户端重新连接的速度。
请参阅图5,图5是本发明实施例提供的一种服务器的示意性框图。服务器300可以为需要与客户端建立连接的服务器,譬如,微信应用服务器等应用服务器。如图5所示,服务器300包括序列化单元310、存储单元320、读取单元330、反序列化单元340和连接单元350。
(1)序列化单元310;
序列化单元310,用于将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据。
当服务器300需要执行更新程序、重启等需要与客户端断开连接的操作时,服务器300在执行程序更新、重启等操作之前,序列化单元310先获取客户端的待缓存数据。
在此,客户端的待缓存数据可以包括客户端与服务器300建立连接时所需的登录数据。譬如,用户的名字、昵称、登录账号、密码等信息。当然,在其他实施例中,客户端的待缓存数据也可以包括客户端的其他信息,在此不做具体限制。
当序列化单元310获取到客户端的待缓存数据之后,将对该待缓存数据进行序列化处理,以形成对应的JSON字符串。
譬如,序列化单元310获取“张华”和“李思”两个客户端的待缓存数据,并对两个客户端的待缓存数据进行序列化处理形成对应的JSON字符串,该JSON字符串如下:
{“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}
{“id”:2,“username”:Lisi,“nickname”:Andy,“country”:japan,“city”:shenzhen,“friends”:[{“username”:Zhanghua,“nickname”:Deni},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]}
(2)存储单元320;
存储单元320,用于将所述JSON字符串存储在预设存储器中.
在一实施例中,存储单元320具体用于将所述JSON字符串写入本地缓存文件,并将所述本地缓存文件存储在所述服务器300的外部存储器中。在此,外部存储器可以包括服务器300的本地硬盘、移动硬盘、软盘、光盘、U盘等外部存储器。
在另一实施例中,存储单元320具体用于将所述JSON字符串写入所述服务器的外部数据库中。譬如,存储单元320将JSON字符串写入Redis等外部数据库中。
可以理解的是,预设存储器的类型不局限于上述的外部存储器、外部数据库,还可以为其他类型的存储器,在此不做具体限制。
(3)读取单元330;
读取单元330,用于当所述服务器启动时,从所述预设存储器中读取所述JSON字符串。
在存储单元320将JSON字符串存储在预设存储器之后,服务器300可以进行更新程序、重启等操作。在服务器300完成更新程序、重启等操作之后,服务器300将执行启动操作。在此,服务器300执行启动操作可以包括服务器300执行重启操作。
在一实施例中,读取单元330具体用于从所述外部存储器中读取所述本地缓存文件,再从所述本地缓存文件中读取所述JSON字符串。
在另一实施例中,读取单元330具体用于从所述外部数据库中读取所述JSON字符串。
在本实施例中,读取单元330逐行读取JSON字符串,并将每行JSON字符串传递至反序列化单元340。
(4)反序列化单元340;
反序列化单元340,用于将所述JSON字符串反序列化成所述待缓存数据。
反序列化单元340对接收到的JSON字符串进行反序列化处理以形成待缓存数据,并将所述待缓存数据存储在所述服务器300的内存储器中。
在一实施例中,反序列化单元340具体用于根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据。
进一步地,如图6所示,图6为图5所示服务器中反序列化单元的示意性框图。反序列化单元340包括第一判断单元341、第一赋值单元342、第一获取单元343、第二判断单元344、第二获取单元345、第三判断单元346、第二赋值单元347、判定单元348、第四判断单元349、第三赋值单元3410和第一读取单元3411。
(41)第一判断单元341;
第一判断单元341,用于判断所述JSON字符串中的第一个字符是否为预设符号字符。
在本实施例中,预设符号字符可以包括“[]”方括号和“{}”花括号。根据JSON字符串的基本知识,“{}”花括号表示对象,“[]”方括号表示数组,而且预设符号字符通常成对出现,譬如,当第一个字符为“{”时,那么JSON字符串中必然有一个“}”字符与第一个字符对称并合成完整的花括号。
当第一判断单元341判断出JSON字符串中的第一个字符为预设符号字符时,第一判断单元341向第一赋值单元342发送第一信号,以使得第一赋值单元342根据第一信号执行相应操作。
当第一判断单元341判断出JSON字符串中的第一个字符不为预设符号字符时,第一判断单元341向第一获取单元343发送第二信号,以使得第一获取单元343根据第二信号执行相应操作。
(42)第一赋值单元342;
第一赋值单元342,用于删除对称的所述预设符号字符,并将剩余的字符串赋值给所述JSON字符串。
第一赋值单元342根据第一信号将查找到与该第一个字符对称的字符,并删掉该对称的预设符号字符。同时,将剩余的字符串赋值给JSON字符串,并将JSON字符串发送至第一判断单元341。
(43)第一获取单元343;
第一获取单元343,用于获取第一个冒号字符之前的字符串为键。
第一获取单元343根据第二信号将获取第一个“:”冒号字符之前的字符串为键,并向第二判断单元344发送第三信号,以使得第二判断单元344根据第三信号执行相应操作。
(44)第二判断单元344;
第二判断单元344,用于判断所述第一个冒号字符的后面是否有逗号字符。
第二判断单元344根据第三信号判断第一个冒号字符的后面是否有“,”逗号字符。若第二判断单元344判断出第一个冒号字符的后面没有“,”逗号字符,则向第二获取单元345发送第四信号;若第二判断单元344判断出第一个冒号字符的后面有“,”逗号字符,则向第三判断单元346发送第五信号。
(45)第二获取单元345;
第二获取单元345,用于获取所述第一个冒号字符之后的字符串为所述键的值。
当第二获取单元345接收到第四信号时,说明该条JSON字符串已经完结,第二获取单元345将读取第一个冒号字符之后的字符串为键的值,该键与值组成键值对,并向第一读取单元3411发送第六信号。
(46)第三判断单元346;
第三判断单元346,用于判断所述第一个冒号字符后面的第一个字符是否为所述预设符号字符。
第三判断单元346接收到第五信号后,说明该条JSON字符串还没有完结,第三判断单元346将判断该第一个冒号字符后面的第一个字符是否为预设符号字符。
若第三判断单元346判断出该第一个冒号字符后面的第一个字符不为预设符号字符,说明该键的值不为数组形式,第三判断单元346向第二赋值单元347发送第七信号。
若第三判断单元346判断出该第一个冒号字符后面的第一个字符为预设符号字符,说明该键的值为数组形式,第三判断单元346向判定单元348发送第八信号。
(47)第二赋值单元347;
第二赋值单元347,用于获取所述第一个冒号字符与其后第一个逗号字符之间的字符串为所述键的值以与所述键形成键值对,并将所述第一个逗号字符之后的字符串赋值给所述JSON字符串。
譬如,JSON字符串为:“id”:1,“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}],第一个冒号字符与其后第一个逗号字符之间的字符串为“1”,此时第二赋值单元347根据第七信号读取“1”作为键“id”的值,形成<id,1>键值对。
然后,第二赋值单元347再将第一个逗号字符之后的字符串“username”:Zhanghua,“nickname”:Deni,“country”:china,“city”:daqing,“friends”:[{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}]赋值给JSON字符,再将JSON字符传递至第一判断单元341。
第一判断单元341至第二赋值单元347重复执行相应步骤,可以依次获得如下键值对:<id,1>、<username,Zhanghua>、<nickname,Deni>、<country,china>、<city,daqing>。直至第一获取单元343获取到JSON字符串中的下一个键为“friends”,第三判断单元346判断出该第一个冒号字符后面的第一个字符为预设符号字符,即第三判断单元346向判定单元348发送第八信号为止。
(48)判定单元348;
判定单元348,用于判定所述键的值为数组,将对称的所述预设符号字符之间的字符串反序列化成键值对和/或键数组对作为所述键的值,以与所述键形成键数组对。
譬如,判定单元348根据第八信号将对称的预设符号字符之间的字符串{“username”:Lisi,“nickname”:Andy},{“username”:Anna,“nickname”:Smith},{“username”:Peter,“nickname”:Jones}进行反序列化处理,形成<username,Lisi>、<nickname,Andy>、<username,Anna>、<nickname,Smith>、<username,Peter>、<nickname,Jones>。
<username,Lisi>、<nickname,Andy>、<username,Anna>、<nickname,Smith>、<username,Peter>、<nickname,Jones>这六个键值对均为键“friends”的值。也就是说,键“friends”的值为包括六个键值对的数组,这样键“friends”与其数组形式的值形成键数组对。
需要说明的是,判定单元348对键“friends”的值的获取方法可以由第一判断单元341至第二赋值单元347获取。
另外,在另一实施例中,当键“friends”的值中又包括键数组对时,此时判定单元348将对称的所述预设符号字符之间的字符串反序列化之后,还可以形成键数组对作为所述键的值。
当判定单元348完成将对称的预设符号字符之间的字符串反序列化之后,判定单元348向第四判断单元349发送第九信号,以使得第四判断单元349根据第九信号执行相应操作。
(49)第四判断单元349;
第四判断单元349,用于判断对称的所述预设符号字符后面是否有所述逗号字符。
在第四判断单元349接收到第九信号之后,将判断对称的预设符号字符后面是否有逗号字符,以便于判断该JSON字符串是否完结。
若第四判断单元349判断出该对称的预设符号字符后面有逗号,说明该JSON字符串还没有完结,此时第四判断单元349将向第三赋值单元3410发送第十信号,以使得第三赋值单元3410根据第十信号执行相应操作。
若第四判断单元349判断出该对称的预设符号字符后面没有逗号,说明该JSON字符串已经完结,此时第四判断单元349将向第一读取单元3411发送第十一信号,以使得第一读取单元3411根据第十一信号执行相应操作。
(410)第三赋值单元3410;
第三赋值单元3410,用于将所述逗号字符后面的字符串赋值给所述JSON字符串。
第三赋值单元3410根据第十信号将逗号字符后面的字符串赋值给JSON字符串后,并将JSON字符串传递至第一判断单元341,以继续将JSON字符串反序列化成键值对或键数组对的形式。
(411)第一读取单元3411。
第一读取单元3411,用于读取下一条JSON字符串。
第一读取单元3411根据第十一信号或第六信号读取下一条JSON字符串,并将下一条JSON字符串传递至第一判断单元341。
可以理解的是,本实施例中,当反序列化单元340根据预设规则依次读取JSON字符串中的键值对和/或键数组对后,该键值对和/或键数组对将形成所述待缓存数据。
(5)连接单元350;
连接单元350,用于根据所述待缓存数据中的登录数据与所述客户端建立连接。
反序列化单元340将待缓存数据暂时存储在内存储器中之后,连接单元350根据该待缓存数据中的登录数据与客户端建立连接。这样,服务器300在与客户端重新建立连接时,服务器300就不用向数据库高并发地获取登录所需的数据,减小数据库的压力,避免数据库发生崩溃等现象。
在本实施例中,在服务器300执行更新程序、重启等操作之前,序列化单元310将客户端的待缓存数据序列化成JSON字符串,存储单元320将所述JSON字符串存储在预设存储器中;在服务器启动之后,读取单元330从所述预设存储器中读取所述JSON字符串,并由反序列化单元340根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据,再由连接单元350根据所述待缓存数据中的登录数据与所述客户端建立连接。该服务器300可以有效减小服务器300与客户端重新连接过程中服务器300对数据库的访问压力,避免数据库出现崩溃等现象,同时,也可以提高服务器300与客户端重新连接的速度。
请参阅图7,图7是本发明实施例提供的一种服务器的示意性框图。该服务器500为需要与客户端建立连接的服务器,譬如,微信应用服务器等应用服务器。
该服务器500可以包括一个或者一个以上处理核心的处理器510、一个或一个以上计算机可读存储介质的存储器520、通信单元530、电源540、输入设备550、以及输出设备560等部件,其中,处理器510、存储器520、通信单元530、电源540、输入设备550和输出设备560通过总线570相互连接。
其中,所述处理器510用于运行存储在存储器520中的程序代码,以实现如下功能:将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;将所述JSON字符串存储在预设存储器中;当所述服务器启动时,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据;根据所述待缓存数据中的登录数据与所述客户端建立连接。
在一实施例中,处理器510在执行将所述JSON字符串存储在预设存储器中时,具体执行如下程序:将所述JSON字符串写入本地缓存文件;将所述本地缓存文件存储在所述服务器的外部存储器中。
在一实施例中,处理器510在执行将所述JSON字符串存储在预设存储器中时,具体执行如下程序:将所述JSON字符串写入所述服务器的外部数据库中。
在一实施例中,处理器510在执行将所述JSON字符串反序列化成所述待缓存数据时,具体执行如下程序:根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据。
在一实施例中,处理器510在执行将所述JSON字符串反序列化成所述待缓存数据时,还执行如下程序:将所述待缓存数据存储在所述服务器的内存储器中。
应当理解,在本发明实施例中,处理器510可以是中央处理单元(CentralProcessing Unit,CPU),该处理器510还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器520可以包括服务器500的内存储器和外部存储器,其中该外部存储器可以为服务器500的本地硬盘。该存储器520用于向处理器510提供程序代码和数据。
通信单元530可用于收发信息过程中,信号的接收和发送,特别地,通讯单元530接收客户端发送的信号,并将信号交由一个或者一个以上处理器510处理。同时,通讯单元530将处理器510发出的反馈信号发送给客户端。
电源540(比如电池),优选的,电源540可以通过电源管理系统与处理器510逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源540还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
输入设备550可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等。
输出设备560,可用于显示由用户输入的信息或提供给用户的信息以及服务器500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。输出设备560可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid CrystalDisplay)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。
具体实现中,本发明实施例中所描述的处理器510、输入设备550、输出设备560可执行上述针对通信方法的任意一个实施例中所描述的实现方式,也可执行本发明实施例所描述的服务器的实现方式,在此不再赘述。
本领域技术人员可以理解,图7中示出的服务器500结构并不构成对服务器500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
在本发明的另一实施例中提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时实现:将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;将所述JSON字符串存储在预设存储器中;当所述服务器启动时,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据;根据所述待缓存数据中的登录数据与所述客户端建立连接。
在一实施例中,该程序指令被处理器执行时具体实现:将所述JSON字符串写入本地缓存文件;将所述本地缓存文件存储在所述服务器的外部存储器中。
在一实施例中,该程序指令被处理器执行时具体实现:将所述JSON字符串写入所述服务器的外部数据库中。
在一实施例中,该程序指令被处理器执行时具体实现:根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据。
在一实施例中,该程序指令被处理器执行时具体实现:将所述待缓存数据存储在所述服务器的内存储器中。
该计算机可读存储介质可以是前述任一实施例中的服务器的内存储器。该计算机可读存储介质也可以是服务器的外部存储器,例如服务器的本地硬盘、服务器上配备的插接式移动硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
进一步地,该计算机可读存储介质还可以既包括服务器的内存储器也包括外部存储设备。该计算机可读存储介质用于存储计算机程序以及服务器所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的服务器和方法,可以通过其它的方式实现。例如,以上所描述的服务器实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例服务器中的单元可以根据实际需要进行合并、划分和删减。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种通信方法,其特征在于,包括:
将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;
将所述JSON字符串存储在预设存储器中;
当所述服务器启动时,从所述预设存储器中读取所述JSON字符串,并将所述JSON字符串反序列化成所述待缓存数据;
根据所述待缓存数据中的登录数据与所述客户端建立连接。
2.根据权利要求1所述的通信方法,其特征在于,所述将所述JSON字符串存储在预设存储器中,包括:
将所述JSON字符串写入本地缓存文件;
将所述本地缓存文件存储在所述服务器的外部存储器中。
3.根据权利要求1所述的通信方法,其特征在于,所述将所述JSON字符串存储在预设存储器中,包括:
将所述JSON字符串写入所述服务器的外部数据库中。
4.根据权利要求1至3所述的任意一种通信方法,其特征在于,所述将所述JSON字符串反序列化成所述待缓存数据,包括:根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据。
5.根据权利要求1至3所述的任意一种通信方法,其特征在于,所述将所述JSON字符串反序列化成所述待缓存数据,还包括:将所述待缓存数据存储在所述服务器的内存储器中。
6.一种服务器,其特征在于,包括:
序列化单元,用于将客户端的待缓存数据序列化成JSON字符串,其中,所述待缓存数据包括所述客户端与服务器建立连接所需的登录数据;
存储单元,用于将所述JSON字符串存储在预设存储器中;
读取单元,用于当所述服务器启动时,从所述预设存储器中读取所述JSON字符串;
反序列化单元,用于将所述JSON字符串反序列化成所述待缓存数据;
连接单元,用于根据所述待缓存数据中的登录数据与所述客户端建立连接。
7.根据权利要求6所述的服务器,其特征在于,所述反序列化单元具体用于根据预设规则依次读取所述JSON字符串中的键值对和/或键数组对以形成所述待缓存数据。
8.根据权利要求6所述的服务器,其特征在于,所述反序列化单元还用于将所述待缓存数据存储在所述服务器的内存储器中。
9.一种服务器,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储程序代码,所述处理器被配置用于调用所述程序代码,执行如权利要求1-5任一项所述的通信方法。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-5任一项所述的通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710648476.XA CN107465738A (zh) | 2017-08-01 | 2017-08-01 | 一种通信方法、服务器及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710648476.XA CN107465738A (zh) | 2017-08-01 | 2017-08-01 | 一种通信方法、服务器及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107465738A true CN107465738A (zh) | 2017-12-12 |
Family
ID=60548052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710648476.XA Withdrawn CN107465738A (zh) | 2017-08-01 | 2017-08-01 | 一种通信方法、服务器及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107465738A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108511077A (zh) * | 2018-01-25 | 2018-09-07 | 苏州麦迪斯顿医疗科技股份有限公司 | 医疗护理文书创建方法、电子设备、存储介质 |
CN109005469A (zh) * | 2018-07-03 | 2018-12-14 | 武汉斗鱼网络科技有限公司 | 一种消息格式的转换方法、装置、存储介质及安卓终端 |
CN109325496A (zh) * | 2018-09-30 | 2019-02-12 | 武汉斗鱼网络科技有限公司 | 基于字符去除的弹幕校验方法、装置、终端及存储介质 |
CN109379640A (zh) * | 2018-09-30 | 2019-02-22 | 武汉斗鱼网络科技有限公司 | 基于链表方式的弹幕校验方法、装置、终端及存储介质 |
CN109413451A (zh) * | 2018-09-30 | 2019-03-01 | 武汉斗鱼网络科技有限公司 | 一种弹幕数据的校验方法、装置及终端 |
CN110490724A (zh) * | 2019-07-03 | 2019-11-22 | 平安证券股份有限公司 | 账户数据的存储方法和装置 |
CN112015422A (zh) * | 2019-05-30 | 2020-12-01 | 深圳拓邦股份有限公司 | 一种基于json的控制方法、客户端、服务器及系统 |
CN116055559A (zh) * | 2023-03-28 | 2023-05-02 | 广州九尾信息科技有限公司 | 数据交换格式的处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863061A (zh) * | 2005-09-28 | 2006-11-15 | 华为技术有限公司 | 移动终端在联网游戏中断时自动恢复的方法及其系统 |
CN103777969A (zh) * | 2012-10-19 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 一种无需重启部署服务器参数的方法和装置 |
CN104065646A (zh) * | 2014-06-04 | 2014-09-24 | 广州华多网络科技有限公司 | 网络课堂故障处理方法、装置及系统 |
CN105120005A (zh) * | 2015-09-11 | 2015-12-02 | 厦门喜鱼网络科技有限公司 | 一种游戏服务器热更新方法、服务器及系统 |
-
2017
- 2017-08-01 CN CN201710648476.XA patent/CN107465738A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863061A (zh) * | 2005-09-28 | 2006-11-15 | 华为技术有限公司 | 移动终端在联网游戏中断时自动恢复的方法及其系统 |
CN103777969A (zh) * | 2012-10-19 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 一种无需重启部署服务器参数的方法和装置 |
CN104065646A (zh) * | 2014-06-04 | 2014-09-24 | 广州华多网络科技有限公司 | 网络课堂故障处理方法、装置及系统 |
CN105120005A (zh) * | 2015-09-11 | 2015-12-02 | 厦门喜鱼网络科技有限公司 | 一种游戏服务器热更新方法、服务器及系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108511077A (zh) * | 2018-01-25 | 2018-09-07 | 苏州麦迪斯顿医疗科技股份有限公司 | 医疗护理文书创建方法、电子设备、存储介质 |
CN109005469A (zh) * | 2018-07-03 | 2018-12-14 | 武汉斗鱼网络科技有限公司 | 一种消息格式的转换方法、装置、存储介质及安卓终端 |
CN109005469B (zh) * | 2018-07-03 | 2021-07-23 | 武汉斗鱼网络科技有限公司 | 一种消息格式的转换方法、装置、存储介质及安卓终端 |
CN109325496A (zh) * | 2018-09-30 | 2019-02-12 | 武汉斗鱼网络科技有限公司 | 基于字符去除的弹幕校验方法、装置、终端及存储介质 |
CN109379640A (zh) * | 2018-09-30 | 2019-02-22 | 武汉斗鱼网络科技有限公司 | 基于链表方式的弹幕校验方法、装置、终端及存储介质 |
CN109413451A (zh) * | 2018-09-30 | 2019-03-01 | 武汉斗鱼网络科技有限公司 | 一种弹幕数据的校验方法、装置及终端 |
CN109379640B (zh) * | 2018-09-30 | 2021-04-27 | 武汉斗鱼网络科技有限公司 | 基于链表方式的弹幕校验方法、装置、终端及存储介质 |
CN109325496B (zh) * | 2018-09-30 | 2021-07-23 | 武汉斗鱼网络科技有限公司 | 基于字符去除的弹幕校验方法、装置、终端及存储介质 |
CN112015422A (zh) * | 2019-05-30 | 2020-12-01 | 深圳拓邦股份有限公司 | 一种基于json的控制方法、客户端、服务器及系统 |
CN110490724A (zh) * | 2019-07-03 | 2019-11-22 | 平安证券股份有限公司 | 账户数据的存储方法和装置 |
CN116055559A (zh) * | 2023-03-28 | 2023-05-02 | 广州九尾信息科技有限公司 | 数据交换格式的处理方法及装置 |
CN116055559B (zh) * | 2023-03-28 | 2023-12-22 | 广州九尾智能科技有限公司 | 数据交换格式的处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107465738A (zh) | 一种通信方法、服务器及计算机可读存储介质 | |
US10715381B2 (en) | Intelligent role selection for dual-role devices | |
CN104142868B (zh) | 建立连接的方法及装置 | |
US11765557B2 (en) | Short message processing method and apparatus, and electronic device | |
CN107710157A (zh) | 多租户、租户特定的应用程序 | |
US20170244574A1 (en) | Electronic device and method for registering smart home device in smart home system | |
US20220247707A1 (en) | Session message display method, electronic device and storage medium | |
US8886787B2 (en) | Notification for a set of sessions using a single call issued from a connection pool | |
CN110785970A (zh) | 使网页的机器人创建自动化的技术 | |
CN104123686A (zh) | 办理业务的方法、设备及系统 | |
CN105453058B (zh) | 目录服务发现和/或学习 | |
CN103631625B (zh) | 一种数据获取的方法、用户端、服务器及系统 | |
CN109981303B (zh) | 会议信息推送方法、装置、存储介质及终端设备 | |
CN109146446A (zh) | 一种虚拟物品发放方法、装置及系统 | |
CN106982128B (zh) | 基于网络的社群构建方法 | |
CN106293738A (zh) | 一种表情图像的更新方法及装置 | |
US20170220333A1 (en) | Software image provisioning and charging system | |
CN108648017A (zh) | 易于扩展的用户需求匹配方法、装置、设备及存储介质 | |
CN116668402A (zh) | 智能云盒访问方法、装置、设备及存储介质 | |
CN104636455B (zh) | 应用程序映射信息的获取方法及装置 | |
US9489939B2 (en) | Speech server managing one or a plurality of pieces of speech terminal-specifying information and user-specifying information | |
CN104683215A (zh) | 一种即时通信工具的通信方法和装置 | |
CN106371896A (zh) | 虚拟机内存配置方法及装置、移动终端 | |
CN111262737A (zh) | 一种端口配置管理方法、装置、存储介质及终端 | |
CN108427691B (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20171212 |
|
WW01 | Invention patent application withdrawn after publication |