即时通讯技术文集(第4期):不为人知的网络编程 [共14篇]

2022-11-01
阅读 2 分钟
694
为了更好地分类阅读52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第4 期。[- 1 -] 不为人知的网络编程(一):浅析TCP协议中的疑难杂症(上篇)[链接] [链接][摘要] 可能大家都知道TCP是三次交互完成连接的建立,四次交互来断开一个连接,那为什么是三次握手和四次挥手呢?反过来不行吗?[- 2 -...
封面图

IM跨平台技术学习(六):网易云信基于Electron的IM消息全文检索技术实践

2022-10-27
阅读 6 分钟
1k
在IM客户端的使用场景中,基于本地数据的全文检索功能扮演着重要的角色,最常用的比如:查找聊天记录、联系人等。类似于IM中的聊天记录查找、联系人搜索这类功能,有了全文检索能力后,确实能大大提高内容查找的效率,不然,让用户手动翻找,确实降低了用户体验。本文将要分享的是,网易云信基于Electron的PC端是如何实...
封面图

IM跨平台技术学习(五):融云基于Electron的IM跨平台SDK改造实践总结

2022-10-20
阅读 6 分钟
676
Electron 凭借其相对更低的研发成本投入、强大的跨平台支持、拥有基数庞大的 Javascript 开发者受众等优势,在 PC 端跨平台桌面开发领域异军突起,大受欢迎。本文分享的是融云基于Electron的IM跨平台PC端SDK改造过程中所总结的一些实践经验,希望对你有用。
封面图

即时通讯技术文集(第2期):脑残式网络编程系列 [共12篇]

2022-10-18
阅读 3 分钟
685
[摘要]网络编程中TCP协议的三次握手和四次挥手的问题,在面试中是最为常见的知识点之一。本篇文章尝试使用动画图片的方式,来对这个知识点进行“脑残式”讲解(哈哈),期望读者们可以更加简单、直观地理解TCP网络通信交互的本质。
封面图

IM跨平台技术学习(四):蘑菇街基于Electron开发IM客户端的技术实践

2022-10-13
阅读 10 分钟
705
1、引言本系列文章的前面几篇主要是从Electron技术本身进行了讨论(包括:第1篇初步了解Electron、第2篇进行了快速开始和技术体验、第3篇基于实际开发考虑的技术栈选型等),各位读者也应该对Electron的开发有了较为深入的了解。

移动端IM产品RainbowChat[专业版] iOS端 v6.0版已发布!

2022-10-12
阅读 1 分钟
677
MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级、高度提炼,一套API优雅支持UDP 、TCP 、WebSocket 三种协议,支持iOS、Android、H5、标准Java平台,服务端基于Netty编写。
封面图

即时通讯技术周刊(第1期):懒人网络编程系列 [共14篇]

2022-10-08
阅读 3 分钟
738
[摘要] 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网的原理。本篇将带你从理论上快速理解这些协议。
封面图

IM跨平台技术学习(三):vivo的Electron技术栈选型、全方位实践总结

2022-09-28
阅读 10 分钟
1.3k
在上篇《Electron初体验(快速开始、跨进程通信、打包、踩坑等)》的分享中,我们已经对Electron跨端框架的开发有了大概的了解。本篇将基于vivo技术团队的技术实践,详细阐述了vivo在使用Electron进行跨端桌面开发时的技术栈选型考量,同时分享了在打包构建、版本更新、性能优化、质量保障、安全性等方面的实践方案和踩坑...
封面图

IM跨平台技术学习(二):Electron初体验(快速开始、跨进程通信、打包、踩坑等)

2022-09-22
阅读 9 分钟
1.3k
本篇将带你简单上手Electron框架开发跨平台桌面端,内容包括一个快速开始例子、跨进程通信原理、打包和分发、以及一些典型的技术踩坑等。希望能带给你启发。
封面图

基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v5.0版已发布

2022-09-14
阅读 1 分钟
2k
MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级、高度提炼,一套API优雅支持UDP 、TCP 、WebSocket 三种协议,支持iOS、Android、H5、标准Java平台,服务端基于Netty编写。
封面图

微信Windows端IM消息数据库的优化实践:查询慢、体积大、文件损坏等

2022-09-06
阅读 7 分钟
2k
本文分享的是,微信客户端团队基于对微信用户日常使用场景和数据分析,通过分离重要和非重要数据、采用可靠的分库策略等,对微信Windows端IM本地数据库的架构进行的优化和改造,并最终得到一个具备良好实践效果的技术改造方案。
封面图

即时通讯安全篇(十一):IM聊天系统安全手段之传输内容端到端加密技术

2022-08-31
阅读 8 分钟
1.4k
在上篇《IM聊天系统安全手段之通信连接层加密技术》中,分享了关于通信连接层加密的相关技术和实践,包括在传输即时通信消息时启用 TLS 链路加密(保证消息在到达服务器前无法被窃听和篡改)、使用 CA 认证机制(杜绝中间人攻击)等。本篇将围绕IM传输内容的安全问题,以实践为基础,为你分享即时通讯应用中的“端到端”加...
封面图

即时通讯安全篇(十):IM聊天系统安全手段之通信连接层加密技术

2022-08-24
阅读 5 分钟
1.7k
随着移动互联网的普及,IM即时通讯类应用几乎替代了传统运营商的电话、短信等功能。得益于即时通讯技术的实时性优势,使得人与人之间的沟通和交流突破了空间、时间等等限制,让信息的传递变的无处不在。
封面图

阿里IM技术分享(八):深度解密钉钉即时消息服务DTIM的技术设计

2022-08-17
阅读 14 分钟
1.4k
本文是国内企业IM的事实王者钉钉首次对外深度解密其即时消息服务(即DingTalk IM,简称DTIM)的技术设计实践。本篇文章内容将从模型设计原理到具体的技术架构、最底层的存储模型到跨地域的单元化等,全方位展现了 DTIM 在实际生产应用中所遇到的各种技术挑战及相应的解决方案,希望借本文内容的分享能为国内企业级IM的开...
封面图

vivo手机上的系统级消息推送平台的架构设计实践

2022-08-11
阅读 9 分钟
1.6k
本文内容来自vivo互联网服务器团队李青鑫在“2021 vivo开发者大会”现场的演讲内容整理而成(现场演讲稿可从本文末附件中下载)。本文将要分享的是手机厂商vivo的系统级推送平台在架构设计上的技术实践和总结。这也是目前为止首次由手机厂商分享的自建系统级推送平台的技术细节,我们也得以借此机会一窥厂商ROOM级推送通道...
封面图

Web网页端IM产品RainbowChat-Web的v4.1版已发布

2022-08-06
阅读 2 分钟
1k
RainbowChat-Web是一套Web网页端IM系统,是RainbowChat的姊妹产品(RainbowChat是一套基于开源IM聊天框架 MobileIMSDK(Github地址) 的产品级移动端IM系统)。
封面图

直播系统聊天技术(八):vivo直播系统中IM消息模块的架构实践

2022-08-03
阅读 10 分钟
1.8k
IM即时消息模块是直播系统的重要组成部分,一个稳定、有容错、灵活的、支持高并发的消息模块是影响直播系统用户体验的重要因素。本文针对秀场直播,结合我们一年以来通过处理不同的业务线上问题,进行了技术演进式的IM消息模块架构的升级与调整,并据此进行了技术总结、整理成文,希望借此机会分享给大家。在目前大部分...
封面图

基于Netty,从零开发IM(四):编码实践篇(系统优化)

2022-07-25
阅读 7 分钟
1.3k
前两篇《编码实践篇(单聊功能)》、《编码实践篇(群聊功能)》分别实现了控制台版本的IM单聊和群聊的功能。通过前两篇这两个小案例来体验的只是Netty在IM系统这种真实的开发实践,但对比在真实的Netty应用开发当中,本系列的案例是非常的简单的,主要目的其实是让大家可以更好地了解其原理,从而写出更高质量的 Netty ...
封面图

基于Netty,从零开发IM(三):编码实践篇(群聊功能)

2022-07-20
阅读 16 分钟
1.3k
接上两篇《IM系统设计篇》、《编码实践篇(单聊功能)》,本篇主要讲解的是通过实战编码实现IM的群聊功能,内容涉及群聊技术实现原理、编码实践等知识。
封面图

开源即时通讯IM框架 MobileIMSDK v6.2 发布

2022-07-19
阅读 2 分钟
1.3k
本次更新为次要版本更新,进行了若干优化(更新历史详见:码云 Release Nodes)。可能是市面上唯一同时支持 UDP+TCP+WebSocket 三种协议的同类开源IM框架。
封面图

基于Netty,从零开发IM(二):编码实践篇(im单聊功能)

2022-07-13
阅读 11 分钟
1.2k
补充说明:因为本系列文章主要目的是引导IM初学者在基于Netty的情况下,如何一步一步从零写出IM的逻辑和思维能力,因而为了简化编码实现,本系列中编码实现的客户端都是基于控制台实现的(希望不要被嫌弃),因为理解技术的本质显然比炫酷的外在表现形式更为重要。
封面图

基于Netty,徒手撸IM(一):IM系统设计篇

2022-07-07
阅读 5 分钟
1.8k
这又是一篇基于Netty的IM编码实践文章,因为合成一篇内容太长,读起来太累,所以也就顺着作者的思路分开成4篇,读起来心理压力也就没那么大了。
封面图

一套十万级TPS的IM综合消息系统的架构实践与思考

2022-06-28
阅读 6 分钟
1.3k
1、引言如何设计一款高性能、高并发、高可用的im综合消息平台是很多公司发展过程中会碰到且必须要解决的问题。比如一家公司内部的通讯系统、各个互联网平台的客服咨询系统,都是离不开一款好用且维护的方便im综合消息系统。
封面图

基于开源IM即时通讯框架MobileIMSDK:RainbowChat v8.2版已发布

2022-06-25
阅读 2 分钟
797
MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级、高度提炼,一套API优雅支持UDP 、TCP 、WebSocket 三种协议,支持iOS、Android、H5、标准Java平台,服务端基于Netty编写。
封面图

社交软件红包技术解密(十二):解密抖音春节红包背后的技术设计与实践

2022-06-23
阅读 10 分钟
1.4k
对于中国人一年一度最重的节日——春节来说,红包是必不可少的节日特定社交元素,而抖音自然不会被错过。在2022年的春节活动期间,抖音将视频和春节红包相结合,用户可以通过拍视频发红包的方式来给粉丝和好友送祝福。
封面图

长连接网关技术专题(八):B站基于微服务的API网关从0到1的演进之路

2022-06-18
阅读 6 分钟
1.6k
也是那一年 B 站投稿量激增,访问量随之成倍上升,而过去的 PHP 全家桶也开始逐渐展露出颓势,运维难、监控难、排查故障难、调用路径深不见底。
封面图

微信团队分享:微信后台在海量并发请求下是如何做到不崩溃的

2022-06-09
阅读 7 分钟
2.1k
本文引用了文章“月活 12.8 亿的微信是如何防止崩溃的?”和论文“Overload Control for Scaling WeChat Microservices”的内容,有大量改动、优化和修订。
封面图

基于QUIC协议的HTTP/3正式发布!

2022-06-08
阅读 1 分钟
2.5k
2022年6月6日,IETF QUIC和HTTP工作组成员Robin Mark在推特上宣布,历时5年,HTTP/3终于被标准化为 RFC 9114,这是HTTP超文本传输协议的第三个主要版本。
封面图

视频直播技术干货:一文读懂主流视频直播系统的推拉流架构、传输协议等

2022-05-31
阅读 7 分钟
2.9k
随着移动网络网速的提升与资费的降低,视频直播作为一个新的娱乐方式已经被越来越多的用户逐渐接受。特别是最近这几年,视频直播已经不仅仅被运用在传统的秀场、游戏类板块,更是作为电商的一种新模式得到迅速成长。
封面图

不为人知的网络编程(十一):从底层入手,深度分析TCP连接耗时的秘密

2022-05-26
阅读 9 分钟
1.4k
对于基于互联网的通信应用(比如IM聊天、推送系统),数据传递时使用TCP协议相对较多。这是因为在TCP/IP协议簇的传输层协议中,TCP协议具备可靠的连接、错误重传、拥塞控制等优点,所以目前在应用场景上比UDP更广泛一些。
封面图