本文的内容如题,在客户端场景下,自定义一款“通用”的应用层长链接。而对于协议要想要做到极致,一定要着眼业务,用户的网络状况、应用的使用模式等等都是要考虑的因素。自然也就不存在“通用”协议,本文目的在于分解协议,阐述其中可被抽象出来的部分。鉴于笔者场景和阅历的有限,如果有偏颇之处,还望指出。
阅读全文
TCP/IP是互联网的基础协议族,它包括大大小小几十个协议。本篇文章主要涉及到就是HTTP、TCP、IP、TLS协议。TCP/IP代表的是现代网络通信模型,即协议分层或协议栈,书本上的网络模型一般是七层或者五层,完全可以对其简化,认知为四层。
阅读全文
这一篇文章中,笔者带着自己有限的经验,会从一些经典架构出发,结合客户端业务复杂度特点,针对一些常见问题,提出一些建议和看法。文中有很多个人观点,鉴于笔者才疏学浅,难免有失偏颇,望各位看官指点一二。架构这个话题很广,又没有明确定义,本文就不以体系的角度,仅以业务开发上的架构为题探讨。
阅读全文
dyld是苹果出品的动态链接器,是MacOS和iOS平台计算机体系的核心,它负责计算机体系中的装载和链接,本篇文章探索dyld在启动程序这一过程中的角色。这一过程中涉及到了dyld、libsystem、libdispatch、objc中的代码,文章中将相关代码简化后的伪代码贴出来,可读性非常高,降低了门槛,抓大放小,主旨在了解其原理。
阅读全文
dyld是苹果出品的动态链接器,是MacOS和iOS平台计算机体系的核心,它负责计算机体系中的装载和链接,本篇文章探索链接、装载在其源码中的奥秘。文章中贴了大量的经过简化的伪代码,可读性非常高,其深意跃然屏上。
阅读全文
本文章的主角是链接与装载,链接和装载是一段隐藏的很深的咒语,大部分程序员不会直接接触到,听到的也只是计算机的窃窃私语,但是其相关内容,却是计算机体系的核心。
阅读全文
冥冥之中,接触到了不同于关系数据库的NoSQL Key-Value存储引擎RocksDB,懵懵懂懂、充满好奇,google一点,满眼皆是LSM-Tree,头晕眼花、若即若离,便有了这篇文章,一起与大家分享这趟探险之旅。
阅读全文