Jump to ratings and reviews
Rate this book

Mastering Swoole PHP: Build High Performance Concurrent System with Async and Coroutines

Rate this book
Build your high performance large scale concurrent system in a more flexible and efficient way than ever before with this first & only Swoole book, with PHP 8 ready.IntroductionIntroducing a new execution model of PHP applications, how Open Swoole works and the pitfalls of new developers coming into the Open Swoole world. This book is also about the general concepts behind building a high concurrency and high-performance web system and how these concepts are implemented in Open Swoole and how advanced PHP works. This book provides just enough Linux OS kernel knowledges with code samples helping you understand how async I/O, concurrency and coroutine works. When start learning or using a new framework, people always carry some assumption coming from the previous experience. Some of these experiences are helpful to understand the new system, but some of these experiences may lead to the misunderstanding of the new system. This book introduces the pitfalls to avoid if you are an experienced PHP developer. This book is for the developers who have already know the basics about how a web system works such as PHP web application or application in the other programming languages such as Node.js, Golang or Java. After reading this book, you should be able to build a high concurrent Swoole PHP system with confidence.Table of contentsIntroductionBackground- Stateless PHP-FPM- Performance problem- Concurrency problem- PHP CLIGeneral concepts- Executor and execution containers- Lifecycle- Decoupling and layers- Queue, Buffer, Buffering and Batching- Pipe and Channel- Context, stack and context switch- Singleplex vs multiplexing- Asynchronous- State, stateless, stateful and pooling- File descriptor, I/O stream- Exceptions- Protocol- Concurrency and I/O model- Event driven and callbacks- Facts, costs and limitation- Rate limiting & Concurrency LimitingThe practical world on Linux OS- User mode and kernel mode- Memory management- Process, Thread and Coroutine- Socket and Networking I/O- Blocking IO and Non-blocking IO- Callbacks, await async vs coroutinesConnect with protocols- TCP/UDP Protocol- HTTP Protocol- Websocket Protocol- HTTP2 Protocol and GRPC- Custom protocolSwoole runtime and internal- Swoole PHP extension- Variable and states- Event loop and asynchronous I/O- Swoole PHP Coroutine- Multiple execution modesHands on Swoole PHP- Swoole Server- Swoole Server Workers- Swoole Process- Swoole Clients- Swoole Table- Swoole Timer- Swoole Coroutine and ChannelUse cases and patterns- HTTP services- Data processing- HTTP and PHP-FPM proxy- Sidecar process- TCP service- WebSocket Server- Task Scheduler- Producer and Consumer&

336 pages, Kindle Edition

Published November 26, 2020

5 people are currently reading
15 people want to read

About the author

Bruce Dou

2 books2 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
10 (55%)
4 stars
5 (27%)
3 stars
2 (11%)
2 stars
1 (5%)
1 star
0 (0%)
Displaying 1 of 1 review
Profile Image for Hossein Baghayi.
4 reviews
June 14, 2021
It wasn't a polished book. No structure.
It was more of an overview of the Swoole features than anything else.
No detailed explanation was given, neither for the code snippets nor for the features presented.

There were code snippets from different languages as well, without proper explanation as to what they are doing, which is assumed that the reader is familiar with?! It wasn't a big deal though.

I was halfway through the book and still waiting to read something about Swoole!
I'm not saying what was presented wasn't useful. For someone not as familiar with concurrency-related terminology as I was, they were useful. But I was expecting to read more of Swoole in detail than anything else.

Very disappointed.
Displaying 1 of 1 review

Can't find what you're looking for?

Get help and learn more about the design.