CN102571578A - 一种采用完全端口技术实现50万用户在线通讯的方法 - Google Patents

一种采用完全端口技术实现50万用户在线通讯的方法 Download PDF

Info

Publication number
CN102571578A
CN102571578A CN2011104565290A CN201110456529A CN102571578A CN 102571578 A CN102571578 A CN 102571578A CN 2011104565290 A CN2011104565290 A CN 2011104565290A CN 201110456529 A CN201110456529 A CN 201110456529A CN 102571578 A CN102571578 A CN 102571578A
Authority
CN
China
Prior art keywords
socket
socket client
communication
iocp
client
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
Application number
CN2011104565290A
Other languages
English (en)
Inventor
于忠清
栾少春
袁斌
王恒刚
刘伟国
王艳青
许刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Haiersoft Co Ltd
Original Assignee
Qingdao Haiersoft Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qingdao Haiersoft Co Ltd filed Critical Qingdao Haiersoft Co Ltd
Priority to CN2011104565290A priority Critical patent/CN102571578A/zh
Publication of CN102571578A publication Critical patent/CN102571578A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明属于计算机控制技术领域,涉及一种采用完全端口技术实现50万用户在线通讯的方法,先采用IOCP技术建立Socket服务端即中间件的通讯服务端;设定Socket服务端支持的最大同时在线套接字客户端数量为MaxConnectionNumber,再为每个套接字客户端分配读写内存空间,然后建立套接字客户端模拟程序,链接IOCP服务器,进行通讯,将Socket Client模拟程序同时开启多个,能够同时模拟多个Socket Client与IOCPServer进行通讯;每一个Socket Client成功的通讯一次为一个用户在线,最后在统计50万成功通讯结束时,其总耗时间为8-12分钟;其工艺过程简单,原理可靠,处理信息量大,处理速度快,性能好,节省访间时间,提高网络利用效率。

Description

一种采用完全端口技术实现50万用户在线通讯的方法
技术领域:
本发明属于电子通讯计算机控制技术领域,涉及一种Windows2003Server系统中的多用户同时在线通讯的实现方法,特别是一种采用完全端口(IOCP)技术实现50万用户在线通讯的方法,适用于企业内部网络与广义互联网之间建立服务连接。
背景技术:
目前的IT业界,用来作为企业内部网络与广义互联网之间通信的方案中,从连接方式上区分为长链接和短链接。长链接是指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持;短链接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,一般银行都使用短连接。目前,门户网站和QQ聊天可支持上亿用户同时访问,本质上就是他们采用了短链接技术,其用户在与系统交互的时候,建立链接,交互完毕以后,就断开链接。这样系统资源得到极大的重复利用;而真正实现长链接上万用户同时在线的成熟大型应用当属WOW(魔兽世界)。其最高在线人数达到过100万。他有近300台最高性能服务器建立的集群作支撑。也即是说长链接在保证多用户并发的前提是增加硬件成本。
发明内容:
本发明的目的在于克服现有技术存在的缺点,在对比ActiveMQ、Http、IOCP和穿透技术多项方案的基础上,以IOCP为技术实现的重点,采用IOCP技术在同等级硬件服务器基础上增加用户访问量的解决方案,有效实现50万用户同时在线通讯的技术方法。
为了实现上述目的,本发明的实现包括下列步骤:
(1)、先采用IOCP技术建立Socket服务端即中间件的通讯服务端;
(2)、设定Socket服务端支持的最大同时在线套接字客户端(Socket Client)数量为MaxConnectionNumber,该值可以是10、100、1000或10000;
(3)、再为每个套接字客户端(Socket Client)分配读写内存空间,该空间值为ClientMemorySize,单位为byte,具体值为1024;
(4)、然后建立套接字客户端(Socket Client)模拟程序,链接IOCP服务器,进行通讯,通讯一次的步骤为:
a.Socket Client链接IOCP服务器;
b.Socket Client发送数据包,该数据包小于ClientMemorySize;
c.Socket Client接收数据包;
d.Socket Client关闭与IOCP服务器的链接;
(5)、将Socket Client模拟程序同时开启多个,能够同时模拟多个Socket Client与IOCPServer进行通讯;
(6)、每一个Socket Client成功的通讯一次(由Socket Client断开链接)为一个用户在线,同时开启的Socket Client数量为ClientNumber;
(7)、最后在统计50万成功通讯结束时,其总体耗时间TotalTime为8-12分钟。
本发明与现有技术相比,采用一个终端通信视为一个客户端访问,在只有一台服务器的前提下,采用IOCP技术可承载不低于5万用户的并发访问,具有先进的技术优势:一是IOCP具备可指定的并行处理最大值为10000;二是处理性能良好,验证时间一小时内不间断进行通信收发,IOCPServer运行稳定;三是IOCPServer处理终端通信速度快,按照指定的MaxConnectionNumber进行估算,IOCPServer的吞吐量约为800个/秒;四是实际验证总时长为10.41分,在总时长内完成50万SocketClient的通信访问;其总体工艺过程简单,技术原理可靠,处理信息量大,处理速度快,性能好,节省访问时间,提高网络的有效利用效率。
附图说明:
图1为本发明的工艺步骤流程结构原理示意框图。
具体实施方式:
实施例:
本实施例的实现方法包括下列步骤:
1、采用IOCP技术,建立Socket服务端即中间件的通讯服务端;
2、Socket服务端支持的最大同时在线Socket Client数量为MaxConnectionNumber,该值可以是10、100、1000或10000;
3、为每个Socket Client分配读写内存空间,该空间值为ClientMemorySize(单位:byte)假定该值为1024;
4、建立Socket Client模拟程序,链接IOCP服务器,进行通讯,通讯一次的步骤为:
a.Socket Client链接IOCP服务器;
b.Socket Client发送数据包,该数据包小于ClientMemorySize;
c.Socket Client接收数据包;
d.Socket Client关闭与IOCP服务器的链接;
5、Socket Client模拟程序可同时开启多个,能够同时模拟多个Socket Client与完全端口服务器(IOCPServer)进行通讯;
6、每一个Socket Client成功的通讯一次(由Socket Client断开链接)为一个用户在线,同时开启的Socket Client数量为ClientNumber;
7、统计50万成功通讯结束时,总体耗时时间TotalTime。

Claims (1)

1.一种采用完全端口技术实现50万用户在线通讯的方法,其特征在于包括下列步骤:
(1)、先采用IOCP技术建立Socket服务端即中间件的通讯服务端;
(2)、设定Socket服务端支持的最大同时在线套接字客户端数量为MaxConnectionNumber,该值可以是10、100、1000或10000;
(3)、再为每个套接字客户端分配读写内存空间,该空间值为ClientMemorySize,单位为byte,具体值为1024;
(4)、然后建立套接字客户端模拟程序,链接IOCP服务器,进行通讯,通讯一次的步骤为:
a.Socket Client链接IOCP服务器;
b.Socket Client发送数据包,该数据包小于ClientMemorySize;
c.Socket Client接收数据包;
d.Socket Client关闭与IOCP服务器的链接;
(5)、将Socket Client模拟程序同时开启多个,能够同时模拟多个Socket Client与IOCPServer进行通讯;
(6)、每一个Socket Client成功的通讯一次为一个用户在线,同时开启的Socket Client数量为ClientNumber;
(7)、最后在统计50万成功通讯结束时,其总体耗时间TotalTime为8-12分钟。
CN2011104565290A 2011-12-31 2011-12-31 一种采用完全端口技术实现50万用户在线通讯的方法 Pending CN102571578A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011104565290A CN102571578A (zh) 2011-12-31 2011-12-31 一种采用完全端口技术实现50万用户在线通讯的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104565290A CN102571578A (zh) 2011-12-31 2011-12-31 一种采用完全端口技术实现50万用户在线通讯的方法

Publications (1)

Publication Number Publication Date
CN102571578A true CN102571578A (zh) 2012-07-11

Family

ID=46416079

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104565290A Pending CN102571578A (zh) 2011-12-31 2011-12-31 一种采用完全端口技术实现50万用户在线通讯的方法

Country Status (1)

Country Link
CN (1) CN102571578A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946362A (zh) * 2012-09-13 2013-02-27 杭州华三通信技术有限公司 一种套接字资源分配方法及设备
CN103312688A (zh) * 2013-03-13 2013-09-18 四川天翼网络服务有限公司 一种基于socket的包驱动方法
CN106131162A (zh) * 2016-06-29 2016-11-16 广州慧睿思通信息科技有限公司 一种基于iocp机制实现网络服务代理的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464810A (zh) * 2008-12-31 2009-06-24 金蝶软件(中国)有限公司 服务程序处理方法及服务器
CN101751507A (zh) * 2008-12-04 2010-06-23 广州万达信息技术有限公司 网络游戏服务器系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751507A (zh) * 2008-12-04 2010-06-23 广州万达信息技术有限公司 网络游戏服务器系统
CN101464810A (zh) * 2008-12-31 2009-06-24 金蝶软件(中国)有限公司 服务程序处理方法及服务器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
林强等: "高性能I/O完成端口服务器的实现与优化", 《电脑知识与技术》, no. 33, 30 November 2009 (2009-11-30) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946362A (zh) * 2012-09-13 2013-02-27 杭州华三通信技术有限公司 一种套接字资源分配方法及设备
CN102946362B (zh) * 2012-09-13 2016-08-31 杭州华三通信技术有限公司 一种套接字资源分配方法及设备
CN103312688A (zh) * 2013-03-13 2013-09-18 四川天翼网络服务有限公司 一种基于socket的包驱动方法
CN103312688B (zh) * 2013-03-13 2015-11-18 四川天翼网络服务有限公司 一种基于socket的包驱动方法
CN106131162A (zh) * 2016-06-29 2016-11-16 广州慧睿思通信息科技有限公司 一种基于iocp机制实现网络服务代理的方法
CN106131162B (zh) * 2016-06-29 2019-06-18 广州慧睿思通信息科技有限公司 一种基于iocp机制实现网络服务代理的方法

Similar Documents

Publication Publication Date Title
CN103023872B (zh) 一种云游戏服务平台
CN104426885B (zh) 异常账号提供方法及装置
CN103049332B (zh) 一种虚拟cpu调度方法
CN108196935B (zh) 一种面向云计算的虚拟机节能迁移方法
CN107070752B (zh) 一种长连接容量的测试方法及测试系统
CN104980421B (zh) 一种批量请求处理方法及系统
CN102571578A (zh) 一种采用完全端口技术实现50万用户在线通讯的方法
Sahadevan et al. An offline online strategy for IoT using MQTT
CN108650334A (zh) 一种会话失效的设置方法及装置
CN104821947A (zh) 网络游戏数据的传输方法
CN103577161A (zh) 一种面向大数据的数据频度并行处理方法
CN115150471A (zh) 数据处理方法、装置、设备、存储介质及程序产品
CN114697391A (zh) 数据处理方法、装置、设备以及存储介质
CN111651320A (zh) 一种高并发连接方法和系统
CN115641180A (zh) 一种请求处理的方法、相关装置及设备
CN108600395A (zh) 一种提醒用户当前网络变化的装置及方法
CN103220260B (zh) 更新数据的方法、服务器、客户端及系统
CN100589423C (zh) 识别大型多人在线角色扮演游戏数据流的方法及装置
CN104079472A (zh) 一种移动游戏产品实现实时社交功能的方法
JP2013140538A (ja) 検証試験のためのプログラム、情報処理方法及び情報処理装置
CN101901273B (zh) 一种基于内存磁盘的高性能存储方法及其装置
CN115391158A (zh) 一种时延确定方法、系统、装置及电子设备
US8371941B2 (en) System and method for game state reduction
CN109831321B (zh) 一种数据中心中rdma应用传输参数自适应选择方法
CN107707547A (zh) 一种DDoS攻击的检测方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120711