2016年11月18日

[置顶] IM消息送达保证机制实现(二):保证离线消息的可靠投递

摘要:本文的上篇我们讨论了在线实时消息的投递,如果接收方用户B不在线,系统是如何保证离线消息的可达性的呢?这就是本文要讨论的问题。 阅读全文

posted @ 2016-11-18 14:25 helloJackJiang 阅读(680) 评论(0) 推荐(1) 编辑

2016年10月21日

[置顶] 【原创】高性能网络编程(二):上一个10年,著名的C10K并发连接问题

摘要:虽然C10K问题已被妥善解决,但对于即时通讯应用(或其它网络编程方面)的开发者而言,研究C10K问题仍然价值巨大,因为技术的发展都是有规律和线索可循的,了解C10K问题及其解决思路,通过举一反三,或许可以为你以后面对类似问题提供更多可借鉴的思想和解决问题的实践思路。而这,也正是撰写本文的目的所在。 阅读全文

posted @ 2016-10-21 15:50 helloJackJiang 阅读(1780) 评论(0) 推荐(0) 编辑

2016年9月26日

[置顶] 理论经典:TCP协议的3次握手与4次挥手过程详解

摘要:本文将分别讲解经典的TCP协议建立连接(所谓的“3次握手”)和断开连接(所谓的“4次挥手”)的过程。 阅读全文

posted @ 2016-09-26 16:08 helloJackJiang 阅读(335) 评论(0) 推荐(1) 编辑

2016年9月7日

[置顶] 技术往事:改变世界的TCP/IP协议(珍贵多图、手机慎点)

摘要:本文将简要回故TCP/IP协议的过去、简单介绍TCP/IP协议族的关系,并与大家一起直观地分享由TCP/IP协议族所构建的虚拟网络与真实世界的“连接”情况。 阅读全文

posted @ 2016-09-07 15:12 helloJackJiang 阅读(441) 评论(0) 推荐(1) 编辑

2016年9月6日

[置顶] 为什么说基于TCP的移动端IM仍然需要心跳保活?

摘要:很多人认为,TCP协议自身先天就有KeepAlive机制,为何基于它的通讯链接,仍然需要在应用层实现额外的心跳保活?本文将从移动端IM实践的角度告诉你,即使使用的是TCP协议,应用层的心跳保活仍旧必不可少。 阅读全文

posted @ 2016-09-06 16:53 helloJackJiang 阅读(383) 评论(0) 推荐(1) 编辑

2016年8月29日

[置顶] 简述移动端IM开发的那些坑:架构设计、通信协议和客户端

摘要:有过移动端开发经历的开发者都深有体会:移动端IM的开发,与传统PC端IM有很大的不同,尤其无线网络的不可靠性、移动端硬件设备资源的有限性等问题,导致一个完整的移动端IM架构设计和实现都充满着大量的挑战。本文将简述移动端IM最重要的架构设计和通信协议选择方面的坑点,希望为IM开发者同行带来些许启发。 阅读全文

posted @ 2016-08-29 17:20 helloJackJiang 阅读(1304) 评论(0) 推荐(1) 编辑

2016年8月15日

[置顶] 移动端IM系统的协议选型:UDP还是TCP?

摘要:移动端IM/推送到底该选TCP还是UDP?鉴于移动网络的不可靠性、手机的省电策略、流量压缩、服务端负载等因素,本文将从作者的实践总结,给出自已的观点。 阅读全文

posted @ 2016-08-15 16:20 helloJackJiang 阅读(895) 评论(0) 推荐(1) 编辑

2016年8月4日

[置顶] 如何选择即时通讯应用的数据传输格式

摘要:即时通讯应用(包括IM聊天应用、实时消息推送应用等)开发的前期技术选型时,关于数据传输格式的选择,在即时通讯开发者同行的眼里,是个极富争议话题。 阅读全文

posted @ 2016-08-04 15:34 helloJackJiang 阅读(198) 评论(0) 推荐(1) 编辑

2016年8月3日

[置顶] 【原创】新手入门一篇就够:从零开发移动端IM

摘要:本文将以新手的视角引导你阅读相关文章,以便为从零开发一个移动端IM做好方方面面的知识准备:包括但不限于网络编程基础、通信协议的选型、IM的架构设计等等。 阅读全文

posted @ 2016-08-03 12:10 helloJackJiang 阅读(223) 评论(0) 推荐(0) 编辑

2016年7月28日

[置顶] 开源IM工程“蘑菇街TeamTalk”的现状:一场有始无终的开源秀

摘要:本文将简要介绍TeamTalk开源的过去和现在,为打算研究和采用TeamTalk的同行提供一定程度的参考。文中所涉及内容如有不妥,还请各位看官见谅。 阅读全文

posted @ 2016-07-28 13:43 helloJackJiang 阅读(549) 评论(0) 推荐(1) 编辑

2016年7月22日

[置顶] Web端即时通讯技术盘点:短轮询、Comet、Websocket、SSE

摘要:Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,主流的Web端即时通讯方案大致有4种:传统Ajax短轮询、Comet技术、WebSocket技术、SSE(Server-sent Events)。本文将简要介绍这4种技术的原理,并指出各自的异同点、优缺点等。 阅读全文

posted @ 2016-07-22 17:52 helloJackJiang 阅读(787) 评论(2) 推荐(0) 编辑

2016年7月15日

[置顶] Android后台保活实践总结:即时通讯应用无法根治的“顽疾”

摘要:本文基于作者的实践以及相关资料的整理,总结了自已对Android进程和Service保活的理解,希望能为你的应用开发带来启发。 阅读全文

posted @ 2016-07-15 18:12 helloJackJiang 阅读(3197) 评论(0) 推荐(1) 编辑

2016年7月12日

[置顶] 新手入门:史上最全Web端即时通讯技术原理详解

摘要:Web端的IM应用,由于浏览器的兼容性以及其固有的“客户端请求服务器处理并响应”的通信模型,造成了要在浏览器中实现一个兼容性较好的IM应用,其通信过程必然是诸多技术的组合,本文的目的就是要详细探讨这些技术并分析其原理和过程。 阅读全文

posted @ 2016-07-12 15:53 helloJackJiang 阅读(1421) 评论(0) 推荐(3) 编辑

2016年6月30日

[置顶] 【原创】NIO框架入门(四):Android与MINA2、Netty4的跨平台UDP双向通信实战

摘要:本文演示的是一个Android客户端程序,通过UDP协议与两个典型的NIO框架服务端(分别用MINA2和Netty4来实现),实现跨平台双向通信的完整Demo。 阅读全文

posted @ 2016-06-30 16:52 helloJackJiang 阅读(3643) 评论(1) 推荐(2) 编辑

2016年6月28日

[置顶] 【原创】NIO框架入门(三):iOS与MINA2、Netty4的跨平台UDP双向通信实战

摘要:本文将演示一个iOS客户端程序,通过UDP协议与两个典型的NIO框架服务端(将分别用MINA2和Netty4来实现),实现跨平台双向通信的完整Demo。 阅读全文

posted @ 2016-06-28 15:52 helloJackJiang 阅读(894) 评论(0) 推荐(1) 编辑

2016年6月24日

[置顶] 【原创】NIO框架入门(二):服务端基于MINA2的UDP双向通信Demo演示

摘要:本文是《NIO框架入门》系列文章中的第2篇,将演示的是一个基于MINA2的UDP服务端和一个标准UDP客户端(Java实现)双向通信的完整例子。 阅读全文

posted @ 2016-06-24 14:28 helloJackJiang 阅读(5735) 评论(0) 推荐(4) 编辑

2016年6月20日

[置顶] 【原创】NIO框架入门(一):服务端基于Netty4的UDP双向通信Demo演示

摘要:本文将演示的是一个基于Netty4的UDP服务端和一个标准UDP客户端(Java实现)双向通信的完整例子。实际上,Netty4的UDP例子非常难找,官方的代码演示里只有一个简单的UDP广播例子,不足以用于演示Netty4的UDP通信最佳实践。 阅读全文

posted @ 2016-06-20 15:21 helloJackJiang 阅读(9853) 评论(0) 推荐(2) 编辑

2020年6月10日

爱奇艺技术分享:轻松诙谐,讲解视频编解码技术的过去、现在和将来

摘要:1、内容点评 本文以轻松幽默的语气,讲解了视频编解码的一些基本常识,并以爱奇艺为例,讲述了视频编解码技术在国内的发展以及未来的一些展望。 ▼ 阅读本文需要有一些音视频编解码技术的基础,否则请先阅读以下文章: 《即时通讯音视频开发(一):视频编解码之理论概述》 《即时通讯音视频开发(二):视频编解码之 阅读全文

posted @ 2020-06-10 11:54 helloJackJiang 阅读(136) 评论(0) 推荐(0) 编辑

2020年6月3日

网络编程懒人入门(十二):快速读懂Http/3协议,一篇就够!

摘要:本文中文译文由作者“ably.io”发布于公众号“高可用架构”,译文原题:《深入解读HTTP3的原理及应用》、英文原题:《HTTP/3 deep dive》(文末有译文和原文链接),即时通讯网收录时有少许改动,感谢原作者和译者的分享。 1、引言 HTTP3是HTTP协议的最新版本。从诞生之初,HTT 阅读全文

posted @ 2020-06-03 22:42 helloJackJiang 阅读(130) 评论(0) 推荐(0) 编辑

2020年5月29日

美团点评的移动端网络优化实践:大幅提升连接成功率、速度等

摘要:1、引言 网络优化对于移动端App产品的用户体验至关重要,也与公司的运营和营收息息相关。 这里列举两个公开的数据: “《页面加载超过3秒,57%的用户会离开》” “《Amazon页面加载延长1秒,一年就会减少16亿美金营收》” 网络性能对于用户体验的影响,将非常直接地反馈到业务的运营上。 而且,移动 阅读全文

posted @ 2020-05-29 12:05 helloJackJiang 阅读(164) 评论(0) 推荐(0) 编辑

2020年5月21日

IM开发宝典:史上最全,微信各种功能参数和逻辑规则资料汇总

摘要:1、引言 IM应用的初学者们,在补全了各种基础技术知识后(如果您仍不具备这些知识,建议马上阅读《新手入门一篇就够:从零开发移动端IM》),在动手编码实践时,很多时候纠结的并不是功能该如何实现,而是这个功能该实现成什么样(没有经验,我特玛能找谁问问?)。 比如,最常见的纠结有以下这些: 1)离线聊天消 阅读全文

posted @ 2020-05-21 12:14 helloJackJiang 阅读(182) 评论(0) 推荐(0) 编辑

2020年5月14日

5G消息能取代IM?一文读懂5G消息的前世今生!

摘要:本文引用了公众号“鲜枣课堂”的《5G消息(RCS),到底是什么?》和公众号“InfoQ”的《5G消息来了,它会干掉微信还是变成另一个飞信?》两篇文章的部分内容,感谢原作者的分享。 1、引言 上个月3大运营商(移动、电信、联通)发布了《5G消息白皮书》(此白皮书PDF版 ▶ 点此附件下载),宣布将共同 阅读全文

posted @ 2020-05-14 11:44 helloJackJiang 阅读(415) 评论(0) 推荐(0) 编辑

2020年5月9日

IM开发基础知识补课(九):想开发IM集群?先搞懂什么是RPC!

摘要:本文将以通俗易懂的白话形式,帮你快速理解IM集群中的关键技术——RPC。 阅读全文

posted @ 2020-05-09 11:53 helloJackJiang 阅读(120) 评论(0) 推荐(0) 编辑

2020年4月28日

适合新手:手把手教你用Go快速搭建高性能、可扩展的IM系统(有源码)

摘要:本文为开源工程:“github.com/GuoZhaoran/fastIM”的配套文章,原作者:“绘你一世倾城”,现为:猎豹移动php开发工程师,感谢原作者的技术分享。 0、引言 阅读提示:本文适合有一定网络通信技术基础的IM新手阅读。如果你对网络编程,以及IM的一些理论知识知之甚少,请务必首先阅读 阅读全文

posted @ 2020-04-28 12:04 helloJackJiang 阅读(190) 评论(0) 推荐(0) 编辑

2020年4月23日

[资源] 阿里《Java开发手册v1.6.0-泰山版》发布

摘要:阿里巴巴技术团队于2020年04月22日发布《Java开发手册v1.6.0-泰山版》。 1、概述 2017年开春之际,阿里诚意献上重磅大礼:《阿里巴巴Java开发手册(规约)》,首次公开阿里官方Java代码规范标准。这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效 阅读全文

posted @ 2020-04-23 11:43 helloJackJiang 阅读(1087) 评论(0) 推荐(0) 编辑

2020年4月21日

爱奇艺移动端网络优化实践分享:网络请求成功率优化篇

摘要:本文原始内容由爱奇艺技术产品团队原创分享,本次有修订和改动。 1、引言 由于移动网络的复杂性特点,编写高质量、体验好的具备网络通信能力的移动端应用(尤其是即时通讯这类网络质量高度敏感的应用)有很大的挑战性。 我们平时看到的移动网络主要有如下三个典型特点: 1)移动状态网络信号不稳定,高时延、易抖动丢 阅读全文

posted @ 2020-04-21 14:10 helloJackJiang 阅读(194) 评论(0) 推荐(0) 编辑

2020年4月17日

网络编程懒人入门(十一):一文读懂什么是IPv6

摘要:本文同时发布于“即时通讯技术圈”公众号,链接是:https://mp.weixin.qq.com/s/cS5xB2DrjF52rmz6EGVJ6A。 本文参考了公众号鲜枣课堂的“IPv6,到底是什么?”一文的部分内容,感谢原作者。 1、引言 现在IPv6的技术应用已经越来越普及了,很多应用都开始支持 阅读全文

posted @ 2020-04-17 11:17 helloJackJiang 阅读(81) 评论(0) 推荐(0) 编辑

导航

Jack Jiang的 Mail: jb2011@163.com, 个人主页: 点此进入 , 微信: hellojackjiang