后记:这篇短漫画主要想讲一下Redis的线程模型和Tomcat的线程模型的区别。Redis负责的业务主要是和内存打交道,每天就是读写内存的那些数据结构,像string ,hash, set, list等等,内存的速度是很快的。我们来假设一个场景, 有10万个请求发给了Redis, 假设10微秒处理一个,那这10万个请求,Redis一个线程1秒内就轻松搞定!
(1秒 = 1000毫秒 = 1000,000 微秒 = 1000,000,000纳秒)
Tomcat的线程就和Redis不同了,它需要读写文件,访问硬盘,访问网络,那速度是非常非常慢的, 如果同样是10万个请求发给Tomcat,假设平均处理时间是10毫秒,那就需要1000秒才能搞定,这实在是太慢了,人类是万万等不及的。所以Tomcat肯定要建立一个线程池,里边养一堆线程来干活了。并且,一个Tomcat在高并发的情况下还不够,需要多个Tomcat组成集群来分担压力,也是不得已而为之。
另外,Redis是非阻塞的I/O,使用了epoll作为I/O多路复用的实现,还有一个自己的事件处理模型,不会在网络I/O上浪费时间。
—— 图书推荐 ——
《码农翻身》
刘欣(@码农翻身) 著
本书讲了很多很多故事,在读故事的过程中就能轻松掌握相关技术,让你在畅快的阅读后,会有一种“原来如此”的感觉。
书中把计算机元素和行为用拟人手法编成一个个精彩纷呈的故事,绘声绘色且深入浅出地演绎晦涩枯燥的编程知识。学习优秀的架构师是如何思考、如何抽象、如何成长的,从操作系统、Java语言到Web技术,每个主题都深入浅出。
▲扫码获取本书详情▲
如果喜欢本文欢迎 在看丨留言丨分享至朋友圈 三连
热文推荐
阿里云线上案例分析:网格应用存活状态异常
亿级流量峰值没在怕,“缓存”技术来减压!
2020年不容错过的10本大咖之作专注CTF Pwn的著作终于来了
▼点击阅读原文,获取本书详情~
本文分享自 博文视点Broadview 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!