PHP多线程和socket可靠不可靠 或者好不好?
回复内容:
多线程可能不靠谱。PHP从一开始就不是为多线程环境而设计的,所以pthread这个扩展就需要深入PHP内核,做非常复杂的Hack编程。程序一复杂问题就来了,肯定会有很多BUG。Socket可靠不可靠,这个看人吧。PHP提供的socket系列函数都是对操作系统socket接口的封装而已,很底层。
所以对于PHP提供的socket函数,如果开发者靠谱,自然写出来的的程序就靠谱。开发者如果完全不懂什么是socket,自然写出来的程序是不靠谱的。
你可以了解一下PHP的swoole扩展,http://www.swoole.com/ php多线程一般是使用的 PHP: pthreads扩展,我实际用过这个扩展,该扩展在使用过程中会有一些问题,比如coredump,所以不建议使用
php的socket使用到没有问题,性能也不错,毕竟是c的简单那的封装。并且github上有很多开源的php socket的项目
例如:
reactphp/react · GitHub
kakserpom/phpdaemon · GitHub
walkor/workerman · GitHub
他们都是基于php 多进程 + php socket + epoll等多路IO复用

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Alipay PHP...

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

Sending JSON data using PHP's cURL library In PHP development, it is often necessary to interact with external APIs. One of the common ways is to use cURL library to send POST�...

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

Article discusses late static binding (LSB) in PHP, introduced in PHP 5.3, allowing runtime resolution of static method calls for more flexible inheritance.Main issue: LSB vs. traditional polymorphism; LSB's practical applications and potential perfo
