Chào các bạn, dạo gần đây cộng đồng PHP náo nhiệt hơn vì Swoole extension trong PHP đặc biệt là sau sự kiện laravel/octane ra đời dựa trên Swoole. Vậy PHP swoole là gì? nó có gì mạnh?. Hôm nay mình sẽ giới thiệu với mọi người.
Swoole là một PHP Extension, cài qua PECL và ứng dụng viết ra thường chạy qua PHP Cli, giúp tạo ra một HTTP Server với performance cao. PHP Swoole là một framework sử dụng event-driven, bất đồng bộ, non-blocking I/O và coroutine vì thế nên hiệu năng của nó rất cao, gấp rất nhiều lần so với PHP mặc định. Bạn có thể cài qua hướng dẫn trên trang chủ: https://www.swoole.co.uk/ Ngoài ra, nếu bạn là một người làm Laravel thì không nên bỏ qua Laravel Swoole https://github.com/swooletw/laravel-swoole.
PHP Swoole được thiết kế dựa trên các nguyên tắc của Erlang, Node.js và Netty nhưng dành cho PHP.
Tuy nhiên, do Swoole hoặc động trên Linux Kernel nên hiện tại nó chỉ hoạt động được trên Linux, OS X or Cygwin, WSL.
Có thể sử dụng Open Swoole để viết các dịch vụ TCP, UDP, Unix Socket, HTTP, WebSocket, FastCGI hiệu suất cao, có thể mở rộng, đồng thời với cú pháp PHP. Bạn không cần phải là một chuyên gia về lập trình I / O không chặn và phát triển nhân Linux cấp thấp để tận dụng những gì Open Swoole cung cấp.
So với các khung hoặc phần mềm lập trình Async khác như Nginx, Tornado, Node.js, Open Swoole là một giải pháp PHP Async hoàn chỉnh có hỗ trợ tích hợp cho lập trình không đồng bộ thông qua coroutines, một loạt các mô-đun I / O đa luồng (HTTP Máy chủ, WebSockets, TaskWorkers, Process Pools) và hỗ trợ các ứng dụng khách PHP phổ biến như PDO cho MySQL, Redis và CURL.
Với sức mạnh và hiệu suất mà Open Swoole mang lại, bạn có thể viết các ứng dụng PHP có thể mở rộng cho máy chủ web, phụ trợ API, máy chủ trò chơi, hệ thống trò chuyện, nền tảng CMS, dịch vụ vi mô và dịch vụ web thời gian thực, v.v.
<?php use Swoole\Http\Server; use Swoole\Http\Request; use Swoole\Http\Response; $server = new Swoole\HTTP\Server("127.0.0.1", 9501); $server->on("start", function (Server $server) { echo "Swoole http server is started at http://127.0.0.1:9501\n"; }); $server->on("request", function (Request $request, Response $response) { $response->header("Content-Type", "text/plain"); $response->end("Hello World\n"); }); $server->start();
Bạn quan tâm đến Open Swoole? Bắt đầu với Open Swoole ngay bây giờ!
Bạn cũng có thể kiểm tra Mã lỗi mở Swoole.
Cảm ơn các bạn đã dành thời gian ra đọc. Hi vọng bài viết của mình có thể giúp chút ích cho các bạn.
Nếu thấy hay hãy để chia sẻ giúp mình hoặc để lại email để nhận được các bài viết mới nhất.
Trân trọng cảm ơn !
Bình luận: