跟着源码学IM(十):基于Netty,搭建高性能IM集群(含技术思路+源码)

2022-01-18
阅读 8 分钟
3.4k
相信很多朋友对微信、QQ等聊天软件的实现原理都非常感兴趣,笔者同样对这些软件有着深厚的兴趣。而且笔者在公司也是做IM的,公司的IM每天承载着上亿条消息的发送!
封面图

实时音视频入门学习:开源工程WebRTC的技术原理和使用浅析

2022-01-10
阅读 11 分钟
2.4k
WebRTC(全称 Web Real-Time Communication),即网页即时通信。 是一个支持网页浏览器进行实时语音对话或视频对话的技术方案。从前端技术开发的视角来看,是一组可调用的API标准。
封面图

直播系统聊天技术(六):百万人在线的直播间实时聊天消息分发技术实践

2022-01-06
阅读 4 分钟
3k
如此大量的实时消息,在分发时如何处理才能不至于把服务端搞垮,而到了客户端时也不至于让APP出现疯狂刷屏和卡顿(不至于影响用户体验),这显然需要特殊的技术手段和实现策略才能应对。
封面图

网络编程懒人入门(十三):一泡尿的时间,快速搞懂TCP和UDP的区别

2021-12-29
阅读 8 分钟
1.9k
网络协议是每个搞网络通信应用开发(比如IM、推送、网关等等)的程序员都必须要掌握的基础知识,TCP/IP协议簇中有两个最具有代表性的传输层协议——分别是 TCP 和 UDP。
封面图

跟着源码学IM(九):基于Netty实现一套分布式IM系统

2021-12-20
阅读 10 分钟
2k
《跟着源码学IM(一):手把手教你用Netty实现心跳机制、断线重连机制》《跟着源码学IM(二):自已开发IM很难?手把手教你撸一个Andriod版IM》《跟着源码学IM(三):基于Netty,从零开发一个IM服务端》《跟着源码学IM(四):拿起键盘就是干,教你徒手开发一套分布式IM系统》《跟着源码学IM(五):正确理解IM长连接、心跳及重连...
封面图

开源轻量级 IM 框架 MobileIMSDK v6.1.2 发布!

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

探探的IM长连接技术实践:技术选型、架构设计、性能优化

2021-12-15
阅读 9 分钟
5.2k
探探自长连接项目上线以后,对服务进行了多次优化:GC从5ms降到100微秒(Go版本均为1.9以上),主要gRPC接口调用延时p999从300ms下降到5ms。在业内大多把目光聚焦于单机连接数的时候,我们则更聚焦于服务的SLA(服务可用性)。
封面图

手把手教你实现网页端社交应用中的@人功能:技术原理、代码示例等

2021-12-08
阅读 8 分钟
2.2k
第一次使用@人功能到现在已经有差不多10年了,初次使用是通过微博体验的。@人的功能现在遍布各种应用,基本上涉及社交(IM、微博)、办公(钉钉、企业微信)等场景,就是一个必不可少的功能。
封面图

长连接网关技术专题(六):石墨文档单机50万WebSocket长连接架构实践

2021-12-01
阅读 10 分钟
4.4k
在石墨文档的部分业务中,例如文档分享、评论、幻灯片演示和文档表格跟随等场景,涉及到多客户端数据实时同步和服务端批量数据在线推送的需求,一般的 HTTP 协议无法满足服务端主动 Push 数据的场景,因此选择采用 WebSocket 方案进行业务开发。
封面图

基于实践:一套百万消息量小规模IM系统技术要点总结

2021-11-27
阅读 9 分钟
3.8k
本文由公众号“后台技术汇”分享,原题“基于实践,设计一个百万级别的高可用 & 高可靠的 IM 消息系统”,原文链接在文末。由于原文存在较多错误和不准确内容,有大量修订和改动。
封面图

阿里IM技术分享(六):闲鱼亿级IM消息系统的离线推送到达率优化

2021-11-17
阅读 5 分钟
1.7k
本文由阿里闲鱼技术团队逸昂分享,原题“消息链路优化之弱感知链路优化”,有修订和改动,感谢作者的分享。1、引言闲鱼的IM消息系统作为买家与卖家的沟通工具,增进理解、促进信任,对闲鱼的商品成交有重要的价值,是提升用户体验最关键的环节。然而,随着业务体量的快速增长,当前这套消息系统正面临着诸多急待解决的问题...
封面图

IM开发基础知识补课(十):大型IM系统有多难?万字长文,搞懂异地多活!

2021-11-10
阅读 13 分钟
2k
前几天技术群里有群友问我有没有IM分布式系统异地多活方面的文章,我仔细想了想,除了微信分享的几篇文章里有提到容灾和异地多活(只是大致提过,没有详细展开),确实目前还没有系统性的异地多活技术资料可供参考。正好借此机会,整理了Kaito分享的这篇供大家学习。
封面图

IM扫码登录技术专题(四):你真的了解二维码吗?刨根问底、一文掌握!

2021-11-01
阅读 8 分钟
2.9k
本文引用了ELab团队、腾讯大讲堂两个公众号分享的文章内容,引用内容见文末参考资料,感谢原作者的无私分享。1、引言对于市面上主流的IM来说,跟二维码有关的功能,比如扫码加好友、扫码登陆、扫码加群等,都是很常见的。这是微信的扫码登录功能:这是微信的扫码加好友功能:二维码技术使用起来很简单,本系列的前三篇文...
封面图

IM开发干货分享:万字长文,详解IM“消息“列表卡顿优化实践

2021-10-26
阅读 19 分钟
2.7k
随着移动互联网的普及,无论是IM开发者还是普通用户,IM即时通讯应用在日常使用中都是必不可少的,比如:熟人社交的某信、IM活化石的某Q、企业场景的某钉等,几乎是人人必装。
封面图

阿里IM技术分享(五):闲鱼亿级IM消息系统的及时性优化实践

2021-10-20
阅读 6 分钟
2.9k
IM消息根据消息的接收方设备是否在线,分为离线和在线推送。数据显示目前闲鱼每天有超过一半以上的IM消息是走在线通道的,而在线消息的到达率、及时性是直接影响用户体验的。
封面图

万字长文,一篇吃透WebSocket:概念、原理、易错常识、动手实践

2021-10-11
阅读 27 分钟
7.4k
1)了解 WebSocket 的诞生背景、WebSocket 是什么及它的优点;2)了解 WebSocket 含有哪些 API 及如何使用 WebSocket API 发送普通文本和二进制数据;3)了解 WebSocket 的握手协议和数据帧格式、掩码算法等相关知识;4)了解 WebSocket 与http、长轮询、socket等的关系,理清常识性的理解错误;5)了解如何实现一个支持...
封面图

阿里IM技术分享(四):闲鱼亿级IM消息系统的可靠投递优化实践

2021-09-26
阅读 8 分钟
3.1k
本文由阿里闲鱼技术团队景松分享,原题“到达率99.9%:闲鱼消息在高速上换引擎(集大成)”,有修订和改动,感谢作者的分享。1、引言在2020年年初的时候接手了闲鱼的IM即时消息系统,当时的消息存在各种问题,网上的用户舆情也是接连不断。典型的问题,比如:1)“聊天消息经常丢失”;2)“消息用户头像乱了”;3)“订单状态...
封面图

阿里IM技术分享(三):闲鱼亿级IM消息系统的架构演进之路

2021-09-13
阅读 6 分钟
3.3k
本文由阿里闲鱼技术团队今朝、有攸分享,本次有修订。1、引言闲鱼即时消息系统历经数代迭代,目前已能稳定的支撑亿级消息体量。在此消息系统的建设过程中,我们经历了从简单到复杂、从困扰到破局,每一次的技术改变都是为了更好的解决当下业务所面临的问题。本文分享的是闲鱼即时消息系统架构从零开始的技术变迁之路,以...
封面图

搞懂现代Web端即时通讯技术一文就够:WebSocket、socket.io、SSE

2021-09-07
阅读 12 分钟
3.4k
有关Web端即时通讯技术的文章我已整理过很多篇,阅读过的读者可能都很熟悉,早期的Web端即时通讯方案,受限于Web客户端的技术限制,想实现真正的“即时”通信,难度相当大。
封面图

融云IM技术分享:万人群聊消息投递方案的思考和实践

2021-08-30
阅读 4 分钟
2.8k
传统意义上的IM群聊,通常都是像微信这样的500人群,或者QQ的2000人群(QQ有3000人群,但那是单独收费的,也就意味着它并非无门槛标配,能用上的人并不多)。
封面图

零基础入门:基于开源WebRTC,从0到1实现实时音视频聊天功能

2021-08-24
阅读 10 分钟
4.9k
去年初,突如其来的新冠肺炎疫情让线下就医渠道几乎被切断,在此背景下,在线问诊模式快速解决了大量急需就医病患的燃眉之急。而作为在线问诊中重要的一环——医患之间的视频问诊正是应用了实时音视频技术才得以实现。
封面图

IM开发技术学习:揭秘微信朋友圈这种信息推流背后的系统设计

2021-08-17
阅读 8 分钟
3k
对Feed流的定义,可以简单理解为只要大拇指不停地往下划手机屏幕,就有一条条的信息不断涌现出来。就像给牲畜喂饲料一样,只要它吃光了就要不断再往里加,故此得名Feed(饲养)。
封面图

消息推送技术干货:美团实时消息推送服务的技术演进之路

2021-08-09
阅读 13 分钟
3.6k
传统意义上来说,实时消息推送通常都是IM即时通讯这类应用的技术范畴,随着移动端互联网的普及,人人拥有手机、随时都是“在线”已属常态,于是消息的实时触达能力获得了广泛的需求,已经不再局限于IM即时通讯这类应用中。
封面图

IM开发干货分享:网易云信IM客户端的聊天消息全文检索技术实践

2021-08-03
阅读 7 分钟
2.3k
类似于IM中的聊天记录查找、联系人搜索这类功能,有了全文检索能力后,确实能大大提高内容查找的效率,不然,让用户手动翻找,确实降低了用户体验。
封面图

融云技术分享:全面揭秘亿级IM消息的可靠投递机制

2021-07-26
阅读 6 分钟
2.4k
综合考虑业务场景、系统复杂度、网络流量、终端能耗等,我们的亿级分布式IM消息系统精心设计了消息收发机制,并不断打磨优化,形成了现在的消息可靠投递机制。
封面图

开源移动端 IM 框架 MobileIMSDK v6.0 发布!

2021-07-22
阅读 2 分钟
2.4k
本次为主要版本更新(本次更新内容见文末“MobileIMSDK v6.0更新内容 ”一节),强势升级,将同时支持TCP、UDP、WebSocket三种协议,精心封装之下,实现同一套API、三种协议同时并存。

企业微信的IM架构设计揭秘:消息模型、万人群、已读回执、消息撤回等

2021-07-19
阅读 12 分钟
7.5k
本文总结了企业微信的IM消息系统架构设计,阐述了企业业务给IM架构设计带来的技术难点和挑战,以及技术方案的对比与分析。同时总结了IM后台开发的一些常用手段,适用于IM消息系统。
封面图

喜马拉雅亿级用户量的离线消息推送系统架构设计实践

2021-07-12
阅读 7 分钟
5.4k
Andriod端比较奇葩(主要指国内的手机),为了实现离线推送,各种保活黑科技层出不穷,随着保活难度的不断升级,可以使用的保活手段也是越来越少,有兴趣可以读一读我整理的下面这些文章,感受一下(文章是按时间顺序,随着Andriod系统保活难度的提升,不断进阶的)。
封面图

阿里技术分享:闲鱼IM基于Flutter的移动端跨端改造实践

2021-07-05
阅读 7 分钟
4.1k
本文总结了阿里闲鱼技术团队使用Flutter在对闲鱼IM进行移动端跨端改造过程中的技术实践等,文中对比了传统Native与现在大热的Flutter跨端方案在一些主要技术实现上的差异,以及针对Flutter技术特点的具体技术实现,值得同样准备使用Flutter开发IM的技术同行们借鉴和参考。
封面图

不为人知的网络编程(十三):深入操作系统,彻底搞懂127.0.0.1本机网络通信

2021-06-28
阅读 10 分钟
3k
这次的文章由作者张彦飞原创分享,写作本文的原因是现在本机网络 IO 应用非常广。在 php 中 一般 Nginx 和 php-fpm 是通过 127.0.0.1 来进行通信的;在微服务中,由于 side car 模式的应用,本机网络请求更是越来越多。所以,如果能深度理解这个问题在各种网络通信应用的技术实践中将非常的有意义。
封面图