当前位置: 网站首页  >> 协议规范  >> 通讯方式

通讯方式

一、本软件的个聊通讯方      










       服务器规定:1、必须由服务器转发;2、优先由服务器转发;3、可以由服务器转发;4、不能由服务器转发。

  你可以选择:1、由服务器转发;2、直接发送,若失败再转发;3、直接发送,若失败再转发;4、热线长连接发送。

  说明:1、首先服从服务器的规定,用户可以自己设置发送方式;2、直接发送不在服务器存盘;3、长连接设置必须在双方都发送一条消息后才能进行。

  有的部门要求必须由服务器转发,保证每个人及时准确得到通知,而且必须保存到服务器。有人希望两人之间的私密聊天简单直接,图片、文字都不经过其他地方,而是直接送达对方。

    二、本软件的群聊通讯方式:

  服务器规定:1、必须由服务器转发;2、优先由服务器转发;3、可以由服务器转发;4、不能由服务器转发。

  你可以选择:1、服务器豪华转发;2、服务器简单转发;3、客户端豪华群发;4、客户端简单群发。

  说明:1、直接发送是先发送消息,对方回应后再给附件;这适合于不在线用户后来索取,但对于在线群友多的情况会造成拥挤;2、豪华发送是指一次直接发送消息+附件。 

  三、从连接方式分类:

    1、直接发送:UDP协议或者Tcp协议。如果对方是附近的人(或者说是小号),在局域网中你们已经建立了直接连接,你们就是畅通无阻地聊天和视频了;如果对方是注册用户(大号),则从服务器得到对方的IP和端口,再将消息直接发送给对方。只要对方的地址是可达的,就能发送成功。群发也一样。

  2、服务器转发:是注册用户最保险的消息发送方式,如果对方在线则立即送达,如果对方不在线,服务器保存,对方一上线第一时间递交。群聊也一样,它可以送达每一个在线的群友,必要时(服务器设定)还保存在服务器。

  3、热线长连接:打洞穿透,有时要进行私密谈话,有时需要煲电话粥,更多时候是为了长时间视频通讯。

  4、打洞穿透:当通讯双方处于两个城市不同的net中,互相都发现不了对方的IP,这时就需要打洞穿透了。以前最好的解决方法,是在外网安装打洞协助服务器。未来最好的解决方法,是在每个城市网关架设一台专用服务器,Ta是每个用户的入口也是每个用户的出口,注册、登录、心跳,都是通过Ta代理,聊天、视频、办公、文件,都是通过Ta们之间互相转发拷贝,全国所有单位的服务器互相拷贝,组成一个畅通的网络。

    四、从线程方式分类:

在Java中编写Socket服务器,通常有以下几种模式:


一个客户 端连接用一个线程,优点:程序编写简单;缺点:如果连接非常多,分配的线程也会非常多,服务器可能会因为资源耗尽而崩溃。

把每一个客户端连接交给一个拥有固定数量线程的连接池,优点:程序编写相对简单,可以处理大量的连接。线程的开销非常大,连接如果非常多,排队现象会比较严重。

使用 Java的NIO,用非阻塞的IO方式处理。这种模式可以用一个线程,处理大量的客户端连接。

  1、线程池:一条消息,一个访客,不能每次都开启一个线程,而是先建立线程池等待,新IO来了马上处理,用完后立即释放,等待下一次IO。

  2、阻塞与非阻塞:客户间的长连接是保持高效的必要方法。例如视频语音,必须是阻塞性的长连接,是单独的一个线程。但如果是普通聊天,一个人一条长连接,如果线程阻塞,10个人就会有10个阻塞性线程,就会卡死你!何况往往有100人呢?这时必须用非阻塞的长连接,pc用IOCP端口,java用NIO。

  3、单线程与共享线程:视频语音,最好是单独的线程,普通聊天必须是共享线程。服务器那就更不需要说了。

本软件适用于所有网络。互联网可以使用,内部网也可以使用。如果你服务器使用的是公网IP,那么全世界的电脑都可以登录你的服务器;如果你使用的是城域网IP(10.*.*.*),那么整个城市都可以访问;如果是局域网IP(192.168.*.*),那么整个学校都可以。网吧可以、机房可以,家庭有几台电脑也可以。速度奇快。


关于我们
扫一扫,关注我们最新消息扫一扫,关注我们最新消息
联系我们
027-88338653

工作时间:周一至周五 9:00-18:00

联系人:段经理

手机:15907257283

邮件:328969810@qq.com

地址:武汉市武昌区中南路中建广场2036号

底部导航
杳信软件开发技术有限公司成立于2020年,注册资金100万,员工10余人,是一家专业为软件公司提供.Lib、SDK等支持的技术公司。优秀的员工,先进的技术,规范的自创SDK,严格的管理是公司得以不断发展养大、产品能够赢得用户依靠的根本所在。