Mix PHP V2.1 發佈,基於 Swoole 4.4+ 單線程協程 PHP 框架

Mix PHP 是什麼

一個基於 Swoole 開發的高性能 PHP 框架,通過兩年發展收穫了不少中小型團隊的支持,框架版本經歷了:php

  • V1.*: 基於 Swoole 的常駐內存型 PHP 高性能框架
  • V2.0: 基於 Swoole 的 FastCGI、常駐內存、協程三模 PHP 高性能框架
  • V2.1: 基於 Swoole 4.4+ 單線程協程 PHP 框架 🆕

更新

本次 v2.1 重構版本主要修改了框架核心封裝部分,而功能庫如:Database/Redis/Auth 等庫使用方式只是微調,大體重構內容以下:git

  • mix-php/mix 庫修改成子模塊的方式包含框架全部庫,require mix/mix 時該庫會替換 composer 上的同名庫,用戶提交 PR 時只需修改該庫提交,貢獻將出如今 mix-php/mix。
  • 從以前的多進程模型所有修改成基於 Swoole\Coroutine\Server 開發的單進程模型,徹底協程化。
  • 移除了以前的協程組件自動隔離容器、 App 容器的封裝概念,修改成類 Golang 風格的直接使用協程 Server 的開發方式,將以前的庫封裝代碼移動到骨架代碼中,讓用戶能更加細粒度的修改每一處細節。
  • 全部 composer 依賴庫從 25 個縮減到 20 個,所有獨立化,無強依賴,支持 8 種 PSR 規範。
  • 強化了 Bean 依賴注入功能,移除了以前的全局組件的概念,用 Bean 的 SINGLETON 取代。
  • 增長 mix/event 庫引入事件機制。

與其餘基於 Swoole 的框架比較

服務器所有基於 Swoole\Coroutine\Server 開發,線程模型與 Node.js 同樣爲單進程單線程模型 (現有其餘 Swoole 框架基本都是多進程模型),組件封裝風格參考 Golang,這樣既擁有 Golang 的 CSP 併發模型,又無需像 Golang 同樣處理數據的併發安全。github

框架很是輕量靈活,現有組件所有基於 PSR 標準實現,都可獨立使用,嚴格來說 Mix 其實只封裝了 mix/console 命令行開發組件,其餘所有爲選裝。安全

框架集成了衆多開箱即用的組件,方便快速開發,且所有與 Golang 使用風格很是相似。服務器

咱們的開發文檔多是全部框架中最詳細的,源碼自帶 Demo,稍微修改一下便可使用。併發

全面採用 Swoole 原生協程與最新的 PHP Stream 一鍵協程化技術。composer

採用和 Golang 相似的高度靈活的開發方式,框架只提供底層庫,而與具體功能相關的代碼都在項目庫中實現,用戶能更加細粒度的修改每一處細節。框架

開發文檔

MixPHP開發指南:性能

Github

相關文章
相關標籤/搜索