Hyperf 發佈 Nacos 組件及 v2.0.3 版本 | 企業級的 PHP 微服務雲原生協程框架

更新內容

本週主要新增 hyperf/nacos 組件,Nacos 是一個由阿里巴巴集團開源的動態服務發現、配置管理和服務管理平臺,致力於幫助您發現、配置和管理微服務,該組件可以使 Nacos 爲 Hyperf 提供配置中心、服務發現與註冊的功能支持,同時該版本還修復了一些組件的 🐛Bug,繼續提高 Hyperf 的穩定性,發佈於 2.0.3 版,建議用戶更新此版本。php

直接訪問 官網 hyperf.io 或 文檔 hyperf.wiki 查看更新內容git

新增

  • #1554 新增 hyperf/nacos 組件;
  • #2082 監聽器 Hyperf\Signal\Handler\WorkerStopHandler 添加信號 SIGINT 監聽;
  • #2097 hyperf/filesystem 新增 TencentCloud COS 支持.
  • #2122 添加 Trait \Hyperf\Snowflake\Concern\HasSnowflake, 爲模型自動生成雪花算法的主鍵;

修復

  • #2017 修復 Prometheus 使用 redis 打點時,改變 label 會致使收集報錯的 BUG;
  • #2117 修復使用 server:watch 時,註解 @Inject 有時會失效的 BUG;
  • #2123 修復 tracer 會記錄兩次 Redis 指令 的 BUG;
  • #2139 修復 ValidationMiddlewareWebSocket 服務下使用會報錯的 BUG;
  • #2140 修復請求拋出異常時,Session 沒法保存的 BUG;

優化

  • #2080 方法 Hyperf\Database\Model\Builder::paginate 中參數 $perPage 的類型從 int 更改成 ?int
  • #2110 在使用 hyperf/watcher 時,會先檢查進程是否存在,若是存在,纔會發送 SIGTERM 信號;
  • #2116 優化組件 hyperf/di 的依賴;
  • #2121 在使用 gen:model 時,若是用戶自定義了與數據庫字段一致的字段時,則會替換對應的 @property
  • #2129 當 Response Json 格式化失敗時,會拋出更加友好的錯誤提示;

關於 Hyperf

Hyperf 是基於 Swoole 4.5+ 實現的高性能、高靈活性的 PHP 協程框架,內置協程服務器及大量經常使用的組件,性能較傳統基於 PHP-FPM 的框架有質的提高,提供超高性能的同時,也保持着極其靈活的可擴展性,標準組件均基於 PSR 標準 實現,基於強大的依賴注入設計,保證了絕大部分組件或類都是 可替換可複用 的。github

框架組件庫除了常見的協程版的 MySQL 客戶端Redis 客戶端,還爲您準備了協程版的 Eloquent ORMWebSocket 服務端及客戶端JSON RPC 服務端及客戶端GRPC 服務端及客戶端OpenTracing(Zipkin, Jaeger) 客戶端Guzzle HTTP 客戶端Elasticsearch 客戶端Consul、Nacos 服務中心ETCD 客戶端AMQP 組件Nats 組件Apollo、ETCD、Zookeeper、Nacos 和阿里雲 ACM 的配置中心基於令牌桶算法的限流器通用鏈接池熔斷器Swagger 文檔生成Swoole TrackerBlade、Smarty、Twig、Plates 和 ThinkTemplate 視圖引擎Snowflake 全局ID生成器Prometheus 服務監控 等組件,省去了本身實現對應協程版本的麻煩。redis

Hyperf 還提供了 基於 PSR-11 的依賴注入容器註解AOP 面向切面編程基於 PSR-15 的中間件自定義進程基於 PSR-14 的事件管理器Redis/RabbitMQ 消息隊列自動模型緩存基於 PSR-16 的緩存Crontab 秒級定時任務Sessioni18n 國際化Validation 表單驗證 等很是便捷的功能,知足豐富的技術場景和業務場景,開箱即用。算法

框架初衷

儘管如今基於 PHP 語言開發的框架處於一個百花爭鳴的時代,但仍舊未能看到一個優雅的設計與超高性能的共存的完美框架,亦沒有看到一個真正爲 PHP 微服務鋪路的框架,此爲 Hyperf 及其團隊成員的初衷,咱們將持續投入併爲此付出努力,也歡迎你加入咱們參與開源建設。數據庫

設計理念

Hyperspeed + Flexibility = Hyperf,從名字上咱們就將 超高速靈活性 做爲 Hyperf 的基因。編程

  • 對於超高速,咱們基於 Swoole 協程並在框架設計上進行大量的優化以確保超高性能的輸出。
  • 對於靈活性,咱們基於 Hyperf 強大的依賴注入組件,組件均基於 PSR 標準 的契約和由 Hyperf 定義的契約實現,達到框架內的絕大部分的組件或類都是可替換的。

基於以上的特色,Hyperf 將存在豐富的可能性,如實現 單體 Web 服務,API 服務,網關服務,分佈式中間件,微服務架構,遊戲服務器,物聯網(IOT)等。緩存

文檔齊全

咱們投入了大量的時間用於文檔的建設以提供高質量的文檔體驗,以解決各類由於文檔缺失所帶來的問題,文檔上也提供了大量的示例,對新手一樣友好。
Hyperf 官方開發文檔服務器

生產可用

咱們爲組件進行了大量的單元測試以保證邏輯的正確,目前存在 1450 個單測共 4466 個斷言條件,Hyperf 是一款經歷過嚴酷的生產環境考驗的一個項目,目前已有不少的大型互聯網企業都已將 Hyperf 部署到了本身的生產環境上並穩定運行。架構

官網及交流

Github 👈👈👈👈👈 點 Star 支持咱們
Gitee 碼雲 👈👈👈👈👈 點 Star 支持咱們
Hyperf 官網
Hyperf 文檔 Hyperf 交流羣(已滿): 862099724 Hyperf 交流 2 羣: 811414891

相關文章
相關標籤/搜索