为了账号安全,请及时绑定邮箱和手机立即绑定

如何理解池化技术?

如何理解池化技术?

慕无忌1623718 2019-05-23 16:50:59
Q1:如何理解池化技术?我的理解是:比如连接池,就是将连接看作一个资源,放到一个pool里,有一个调度器(不知道这个说法正不正确)根据请求来调度这些连接。连接池的作用是避免每一次使用都要建立连接、销毁连接等这方面的开销。Q2:php-fpm可以算是一个连接池吗?如果Q1我的理解正确,那么php-fpm算连接池吗?因为我有看到php-fpm会有一个pool.d的目录。如果php-fpm算,那么fastcgi的其他实现也都算吗?nginx的masterworker进程算吗?Q3:除了连接池,还有其他的池化技术吗?
查看完整描述

2 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

Q1:你说的这个是一个方面,我认为还是并发量的限制才会带来“池化”技术,假如mysql只能维持256个长连接,但是我们有1000000个用户每天嗷嗷待哺,那么就得帮mysql请一个经纪人,不管多少人访问,mysql本体都不需要一直处理连接,只需要管好怎么处理数据库相关的部分就好了(仔细想想,这样事务独立性不就被打破了么....)。
Q2:php-fpm不是连接池(网络的),大概可以叫:进程池(本地的)。
Q3:只要是有限的资源,都可以被“池化”。
个人主观观点,仅供参考,如有不足,评论交流~
                            
查看完整回答
反对 回复 2019-05-23
?
白衣染霜花

TA贡献1796条经验 获得超10个赞

php-fpm就是fastgi协议的的实现,另外还有内存池、线程池等,php-fpm和nginxmasterprocess一方面属于算进程管理器,需要的时候才fork新的进程,当然预设部分也就是进程池了,池化的技术可以这么理解,预设一部分资源,需要的时候直接使用,避免创建过程的开销
                            
查看完整回答
反对 回复 2019-05-23
  • 2 回答
  • 0 关注
  • 611 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信