最近换了一份工作,接触到了有关PHP的容器和协程技术,真是有点意思,之前一直觉得PHP已经穷途末路了,所以一直在搞Python,现在才发现PHP原来真的这么强大而且简单实用。自己虽然不是很熟悉这些东西但是却非常感兴趣。安装了解花了几天时间,现在总结一下吧,纯新手总结,如有错误请多谅解并渴望指出。
网上也没有找到类似的安装教程,先说说我对Hyperf这个框架的理解吧,Hyperf这个框架有点像很多东西都非常像Laeavel,从两个文档里面可以看出来,当然Laeavel我也不是很熟悉,我只会TP框架,Laeavel只看过一部分的文档,和TP框架最大的不同是Laeavel的路由和composer这两块。Laeavel更加安全,TP更为简单,到了Hyperf框架我觉得这里性能和复杂性远超了这两个框架,Hyperf是一个基于Swoole协程的框架,Swoole是C++写的,最初在我的印象中协程这个词是在Go语言里面的,因为Go语言的协程效率和性能非常高把Go语言推向了风口浪尖,好多PHP程序员都转向了Go,关于PHP的协程的详细描述可以在Hyperf文档里面可以看看,Hyperf的文档我觉得写的非常得不错,文档一开始讲协程的时候就把旧的基于PHP-FPM架构的框架拿出来对比,把阻塞等待的抢占式多线程模型在高并发环境下的情况拿出来和协作式的微型协程来对比,落差非常大,最让我觉得震撼的是文档里面hypfer默认的最大协程数是10W个,Swoole默认是3000个,传统的FPM架构的线程数是CPU核心数的两倍,通常才寥寥几个。可见其性能是多么的夸张。
接下来说说容器技术,就是Docker,Docker是基于Go的容器引擎,很多开源的项目框架都支持Docker部署&