首页 文章 精选 留言 我的

精选列表

搜索[IM通道],共7051篇文章
优秀的个人博客,低调大师

IM客户端消息推送的几种方式及特点

提起消息推送一般人们会经常提起的有以下几种:1.轮询顾名思义,客户端定期去向服务端询问是否有新的消息,简单点说就是服务端不关心客户端的地址是什么,客户端来询问,直接告诉它就行。这种方案最简单,但是却不适用于即时通讯产品,因为即时通讯软件的消息传递机制与一般的消息推送的区别就在即时这点,如果采用轮询的方式,客户端每几秒就连一次服务器,对于手机电量与流量的消耗是很大的。2.XMPPXMPP是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。它的系统结构如下图所示: 但是它也有两个致命的缺点:随着通常超过70%的XMPP协议的服务器的数据流量的存在和近60%的被重复转发,XMPP协议目前拥有一个大型架空中存在的数据提供给多个收件人。新的议定书正在研究,以减轻这一问题。它的另一个缺点是由于XMPP协议的方式被编码为一个单一的长的XML文件,因此无法提供修改二进制数据。 3.MQTTMQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议。它的PUSH结构示意图如下图所示: MQTT由于开放源代码,耗电量小等特点,在物联网领域,传感器与服务器的通信,信息的收集,MQTT都是不错的方案。在手机移动端的消息推送也是备选的方案之一。但是它的设计初衷是为:大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的。而且他的实现比较复杂,服务端组件rsmb不开源,所以MQTT更适合于物联网端的通信。 4.长连接所谓长连接指建立SOCKET连接后不管是否使用都保持连接。当然有人会问长连接定时发送心跳,这和轮询有什么区别?手机休眠状态下连接会不会断掉等。在这之前先来了解一下一些相关的概念。心跳包的作用:有人可能会觉得心跳包是用来通知服务端,客户端当前的状态。这种说法固然没错,但是本质是心跳包的主要作用是防止NAT超时,其次是检查连接是否断开。NAT是为了解决IP数量不足的问题而做的一种网络地址的转换。简单讲就是运营商的网关需要维护一个外网IP与内网IP及端口之间的一种映射关系。当前的移动网络运营商在一定时间段内数据链路没有数据通讯时,会更新NAT表中的映射关系,造成链路中断。具体的NAT穿越等细节不在此讨论。所以,可以粗略的认为心跳包的一个作用就是为了解决NAT中断的问题。但是心跳包发送的间隔时间必须要小于NAT超时的时间,这样才能保证链路的不中断。下面简单阐述一下心跳包与轮询的区别,以此来说明长连接方案比轮询方案的优势。轮询与心跳本质的不同是轮询的目的是为了从服务端得到数据,而心跳是为了保持连接。而且轮询比心跳更耗电,轮询要经过TCP的三次握手,但是单次心跳缺不需要这样。最后一个问题,手机休眠状态下连接是否会断掉。这个问题如果详细讨论的话比较复杂,涉及手机AP,BP处理器的处理策略,简单点说就是TCP数据包能够唤醒手机。因此长连接是比较适合手机移动端的即时通讯的。

优秀的个人博客,低调大师

暑期 2021|109 家社区 877 个项目就绪,学生申请通道开通

社区就位 109 /877 COMMUNITY/PROJECT 开源软件供应链点亮计划-暑期2021(简称暑期2021)是一项专门面向高校学生的开源项目开发活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源社区的蓬勃发展。暑期2021由中国科学院软件研究所与openEuler社区主办,中科院软件研究所南京软件技术研究院承办,开源社、segmentfault 思否协办,联合各大开源社区,针对重要开源软件的开发与维护提供项目,并向全球高校学生开放报名。从1/29启动以来,暑期2021得到了国内外开源社区的关注与支持。截至5/21,109家海内外开源技术社区、877个开源项目通过了活动审核并上线官网,其中不仅包括Apache开源基金会、CNCF基金会的顶级项目,也包括华为、阿里巴巴等发起的在各技术领域极具影响力的开源项目。令人欣喜的是,清华大学、北京大学、中国科学技术大学、哈尔滨工业大学、北京师范大学等越来越多的高校开源项目也加入进来,点亮计划-开源-高校发展正当时。 社区及项目列表: https://summer.iscas.ac.cn/#/homepage?lang=chi 暑期2021报名系统: https://portal.summer-ospp.ac.cn/summer/login 正式提交申请书之前可在系统内注册账号并填写个人资料。 项目申请时间: 5/24-6/13 学生指南: https://summer.iscas.ac.cn/help/student/ 加入暑期2021活动群组: 关注“开源之夏”公众号并于后台回复“进群”,即时获取活动信息及答疑解惑。 SUMMER 2021 TIPS 1. 在正式提交项目申请书之前,学生一定要与社区指定的项目导师沟通,提高申请成功概率。 2. 一个学生最多可以同时申请三个项目,但最终只能承担一个项目。尽量专注于感兴趣的1-2家社区,以免降低中选概率。 3. 避免在最后一天提交,避免因不熟悉申请流程、缺少申请材料、网络等问题造成无法在指定时间内完成申请。 丰厚奖励 等你来拿 奖金奖品、履历亮点、大咖讲座 1. 按要求完成项目的学生,根据其项目的难度均可获得相应奖金—— 12000 元(高难度)、 9000 元(中等难度)和 6000 元(一般难度)(注:奖金数额为税前人民币金额)。 2. 所有中选学生都会收到组委会寄出的一份项目开启大礼包。 3. 通过结项考核的学生将获得结项证书或优秀学生证书。 4. 每个周末,两场大咖说开源,带你畅游开源世界。移步软件所B站: https://live.bilibili.com/22221041

优秀的个人博客,低调大师

内网 IM,局域网环境下 BeeWorks 如何保障数据安全?

1.私有化部署 BeeWorks支持将服务器架设在企业内网或自有云环境中,所有数据(包括聊天记录、文件传输内容等)均在企业内部流转。这种部署方式避免了数据在外部网络中的传输,从根本上杜绝了第三方平台介入导致的数据泄露风险。 2.加密技术 ·传输加密:BeeWorks采用先进的加密技术,如TLS/SSL协议和256位AES加密技术,对数据在传输过程中的安全性进行保障。即使数据在传输过程中被截获,也无法被破解读取。 ·存储加密:所有存储在服务器上的数据(包括聊天记录、文件等)均经过加密处理,即使服务器遭受攻击,黑客也无法轻易获取有价值的信息。 3.精细化权限管理 BeeWorks支持按角色、部门设置访问权限,企业可以根据不同部门、岗位和用户角色,灵活设置用户的权限。例如,可以限制某些用户对敏感文件的下载与转发,确保数据的安全性和保密性。此外,系统还记录完整的用户操作日志,便于审计与追溯。 4.防泄密功能 ·阅后即焚:BeeWorks提供“阅后即焚”功能,敏感信息在阅读后自动销毁,不留痕迹。 ·防截屏与水印:支持添加水印、防截屏功能,进一步防止信息泄露。 5.审计与监控 BeeWorks提供全面的审计与监控功能,企业可以对用户的行为进行实时监控和记录,包括登录记录、消息记录、文件共享记录等。这有助于及时发现异常行为并采取措施,满足企业对合规性的要求。 6.数据备份与恢复 BeeWorks支持数据备份与恢复功能,企业可以定期对数据进行备份,确保数据的安全性和完整性。在发生数据丢失或系统故障时,企业可以快速恢复数据,减少数据丢失对企业的影响。 7.国产化适配 BeeWorks深度兼容国产操作系统(如银河麒麟、统信UOS)、国产芯片(如龙芯、兆芯)及主流数据库,满足党政军、金融等对自主可控要求严格的行业需求。 通过以上多种安全设计和技术手段,BeeWorks在局域网环境下为企业提供了全方位的数据安全保障,满足企业对数据安全和合规性的严格要求。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册