PHP多进程和多线程有哪些优缺点?PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。自20世纪90年代国内互联网开始发展到现在,互联网信息几乎覆盖了我们日常活动所有知识范畴,并逐渐成为我们生活、学习、工作中必不可少的一部分。
1.多进程
1.使用多进程, 子进程结束以后, 内核会负责回收资源
2.使用多进程, 子进程异常退出不会导致整个进程Thread退出. 父进程还有机会重建流程.
3.一个常驻主进程, 只负责任务分发, 逻辑更清楚.
4.多进程方式更加稳定,另外利用进程间通信(IPC)也可以实现数据共享。
5.共享内存,这种方式和线程间读写变量是一样的,需要加锁,会有同步、死锁问题。
6.消息队列,可以采用多个子进程抢队列模式,性能很好
2.多线程
1.线程是在同一个进程内的,可以共享内存变量实现线程间通信
2.线程比进程更轻量级,开很大量进程会比线程消耗更多系统资源
3.多线程也存在一些问题:
4.线程读写变量存在同步问题,需要加锁
5.锁的粒度过大存在性能问题,可能会导致只有1个线程在运行,其他线程都在等待锁
6.同时使用多个锁,逻辑复杂,一旦某个锁没被正确释放,可能会发生线程死锁
7.某个线程发生致命错误会导致整个进程崩溃
以上就是PHP多进程和多线程有哪些优缺点的详细内容,更多请关注亿速云其它相关文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。