开发内功修炼@张彦飞开发内功修炼@张彦飞

talk is cheap,
show me the code!

最新发布

网络篇

漫画 | 一台Linux服务器最多能支撑多少个TCP连接

张彦飞(@开发内功修炼) 阅读(418)

困惑很多人的并发问题在网络开发中,我发现有很多同学对一个基础问题始终是没有彻底搞明白。那就是一台服务器最大究竟能支持多少个网络连接?我想我有必要单独发一篇文章来好好说一下这个问题。 很多同学看到这个问题的第一反应是65535。原因是:“听说端口号最多有65535个,那长连接就最多保持6553...

网络篇

漫画 | 花了七天时间测试,我彻底搞明白了 TCP 的这些内存开销!

张彦飞(@开发内功修炼) 阅读(422)

实际中 TCP 连接上肯定是要进行数据的收发的,而且还会有 TIME_WAIT 等其它状态。在这些复杂情况下,一条连接占用多大内存呢?飞哥用做了七天的实验结果告诉你!实验1: ESTABLISH空连接 实验2:客户端 => 服务器发送数据测试 实验3: 服务器 => 客户端发送...

网络篇

刨根问底儿,看我如何处理 Too many open files 错误!

张彦飞(@开发内功修炼) 阅读(992)

如果你的项目中支持高并发,或者是测试过比较多的并发连接。那么相信你一定遇到过“Too many open files”这个错误。这个错误的出现其实是正常的,因为每打开一个文件(包括socket),都需要消耗一定的内存资源。为了避免个别进程不受控制地打开了过多的文件而让整个服务器崩溃,Linux...

网络篇

聊聊TCP连接耗时的那些事儿

张彦飞(@开发内功修炼) 阅读(453)

在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议...