腾讯QQ使用何种开发平台?
腾讯QQ的开发分客户端软件和服务器端软件两部分。
客户端采用
Microsoft Visual C++开发;
服务器端软件采用Linux
gcc开发 ;
数据库采用MySql 数据库。
腾讯QQ采用标准的TCP/IP协议为通信协议。
TCP/IP协议中又分为TCP协议和UDP协议,TCP协议是面向连接的协议,它比较安全、稳定,但是效率不高,占用资源较多。UDP协议是无连接方式的协议,它的效率高,速度快,占资源少,但是其传输机制为不可靠传送,必须依靠辅助的算法来完成传输控制。QQ采用的通信协议以UDP为主,辅以TCP协议。由于QQ的服务器设计容量是海量级的应用,一台服务器要同时容纳十几万的并发连接,因此服务器端只有采用UDP协议与客户端进行通讯才能保证这种超大规模的服务。
腾讯QQ客户端之间的消息传送也采用了UDP模式,这不同于国外的ICQ在客户端之间采用TCP进行通讯的模式。因为国内的网络环境非常复杂,而且很多用户采用的方式是通过代理服务器共享一条线路上网的方式,在这些复杂的情况下,客户端之间能彼此建立起来TCP连接的概率较小,严重影响传送信息的效率。而UDP包能够穿透大部分的代理服务器,因此我们在开发QQ的时候选择了UDP作为客户之间的主要通信协议,因此网友会觉得用QQ传送信息要比ICQ及其它采用TCP协议的ICQ类软件快。当然,UDP协议优点突出,缺点也很明显:UDP包的传送是不可靠的传输,它不象TCP一样有包重传等机制,因此采用UDP协议的信息在传送过程中很容易丢失,这样就需要辅助的算法实现包重传机制以保证信息不会丢失,而QQ服务器的负荷非常重,因此在QQ
99b
0425之前我们只是在客户端到客户端之间传送消息时采用了这个辅助的机制,当消息在客户间直接传送无法到达时就需要通过服务器来中转,由于服务器端在老版本的时候迫于负荷过重的压力没有对主动发往客户端的信息进行传输控制,因此在老版本的时候容易造成通过服务器中转的信息丢失的现象。在QQ99c
0725之后我们单独设立出了几台专用的服务器采用包重传机制来中转消息(仅限于99c之间传递的消息),确保通过服务器转发的消息也能够发送到对方的QQ。
分享到:
相关推荐
腾讯QQ场景编辑器腾讯QQ场景编辑器腾讯QQ场景编辑器腾讯QQ场景编辑器腾讯QQ场景编辑器腾讯QQ场景编辑器腾讯QQ场景编辑器腾讯QQ场景编辑器
介绍腾讯的开放平台设计理念,看看腾讯是如何管理平台的
腾讯QQ是深圳市腾讯计算机系统有限公司开发的一款基于Internet的即时通信(IM)软件。腾讯QQ支持在线聊天、视频电话、点对点断点续传文件、共享文件、网络硬盘、自定义面板、QQ邮箱等多种功能。并可与移动通讯终端等...
Android 手机开发 利用腾讯微博开放平台提供的API发表微博
腾讯QQ批量自动登录器,是用易语言开发的,会报毒,很正常,确认就好! 腾讯QQ批量自动登陆器是一款可以帮助用户批量自动登陆QQ的软件,用户可以在本款软件中设置多个QQ账号和QQ的密码信息,然后双击其中任一条即可...
腾讯微博开放平台Java开发SDK,供大家一起共同分享学习。
腾讯开放平台程序/QQ空间/淘宝客源码程序
腾讯QQ微博分享
腾讯AI开放平台 Tencent AI open platform [for laravel]
提供最新的IP数据库,配合使用能起到准确定位的作用
本软件是用JAVA语言编写的腾讯QQ,是本人在实训期间完成的人物之一,包含完整的MYSQL数据库和JAVA代码,具有登陆界面,打开聊天界面,开启QQ服务,进行聊天等功能设计,适合有一定JAVA基础的人员学习所用。
QQ机器人官方开放平台文档,你可以通过机器⼈开放平台提供的⼯具和接⼝,快速构建⼀个机器⼈。机器⼈账号可以每天群发⼀条消息,消息可以发送给关注该机器⼈的⽤户(机器⼈存在于⽤户的机 器⼈列表,既可被当作关注...
腾讯QQ卸载exe
腾讯QQ会员活动运营平台架构演进
html5实现腾讯QQ登录界面背景动画特效(QQ背景动态)+js,可以有效的学习html标签,制作出所见即所得的东西。高大上的背景!
C#调用腾讯AI开放平台API接口文本翻译,用VS2019写的,低版本查看可能会报错
这是一个模拟腾讯qq的java软件。大家可以参考一下。目前是1.0版,如果有什么问题请联系作者。
高科技仿写腾讯QQ,里面很像QQ那样,是最新科技团队研发的。
腾讯社区开放平台是基于QQ空间、朋友社区(QQ校友)两大社交网络的开放平台。至今官方提供了一系列的开放接口(Open API)和开发工具包(SDK),开发者可以通过Open API获取登录用户信息、用户签名信息以及好友关系...
腾讯开放平台开发工具,包括PHP ,JAVA,C++的各种API .