类别:PHP问题 / 日期:2019-12-02 / 浏览:79 / 评论:0

PHP不适合做物联网服务端吗?

在传统的头脑中,常常会有人通知你,php不适合用来做物联网服务端,让你换java,node,go等其他言语,是的,没错传统意义上的php,确切很难做物联网服务器,由于它实在太糟糕了,固然,这也不是意味着完全就不能做。 (引荐进修:PHP视频教程)

举个例子,当你想完成一个TCP服务器的时刻,你能够须要写出道理约莫以下的代码:

for ($i = 0;$i <= 1;$i++){
    $pid = pcntl_fork();
    if($pid){
        if($i == 0){
            $server = stream_socket_server("tcp://127.0.0.1:9501", $errno, $errstr, STREAM_SERVER_BIND);
        }else if($i == 1){
            $tickTime = time()+3600;
            while (1){
                usleep(1);
                if($tickTime == time()){
                    //do my tick func
                }
            }
        }
    }}

以上代码的意义等于在一个历程中建立一个TCP 服务端,别的一个历程中死循环来做时候检测,从而完成定时器逻辑。

如许看起来,确切很糟糕,而且关于编程基本广泛比较柔弱的PHPer来讲,这真的很难保护。固然这个时刻,就会有人说,这不是另有Workerman吗,是的,确切另有Workerman,Workerman就是高度封装了上述代码道理,协助你用心于完成代码逻辑的一个PHP多历程框架,因而说PHP不时刻做物联网,实在这是谬论。

固然这个时刻能够又会有人说,go言语有协程,你用Workerman当涌现壅塞数据库挪用的时刻,那效力就异常的差,很难涌现高并发,这么说没错,然则实际上,我们能够尽量的用多历程去填补这个不足,也就是堆机械。固然,假如你真的想锱铢必较,没紧要,这个时刻我们就能够拿出我们的杀器,那就是Swoole4.x的协程

以上就是php能做物联网吗的细致内容,更多请关注ki4网别的相干文章!

打赏

感谢您的赞助~

打开支付宝扫一扫,即可进行扫码打赏哦~

版权声明 : 本文未使用任何知识共享协议授权,您可以任何形式自由转载或使用。

 可能感兴趣的文章

评论区

发表评论 / 取消回复

必填

选填

选填

◎欢迎讨论,请在这里发表您的看法及观点。