yoyogo v1.7.6 增強程序優雅退出和K8s Readiness檢查


🦄🌈 YoyoGo (Go語言框架)一個簡單、輕量、快速、基於依賴注入的微服務框架( web 、grpc ),支持Nacos/Consoul/Etcd/Eureka/k8s /Apollo等 .

framework desgin

 

本次更新增強了Kubernetes Readiness 健康檢查的能力,基本流程如下

  • old pod 未退出之前,先啟動 new pod
  • old pod 繼續處理完已經接受的請求,並且不再接受新請求
  • new pod接受並處理新請求的方式
  • old pod 退出

這樣整個服務重啟就算是成功了,如果 new pod 沒有啟動成功,old pod 也可以提供服務,不會對目前線上的服務造成影響。

 

 

 

運行在容器中的程序響應流程

程序在 docker 容器中運行,所以在服務發布過程中,k8s 會向容器發送一個 SIGTERM 信號,然后容器中程序接收到信號,開始執行 ShutDown

 

  

v1.7.6 更新內容

 修復內容:

  • fixed graceful stop and readiness bugs.
  • fixed parallel problem by mvc template, that match it for route path .
  • fixed read remote config hight priority then flags .

新增特性:

  • add endpoint /actuator/health/detail, and then output db,redis and more .
  • add endpoint /actuator/routers, and then output all route info list

v1.7.5 更新內容

框架依賴升級,獨立DI組件

新增特性:

  • Support grpc connection timeout with context. (fix)

 

v1.7.4 更新內容

應用模板升級

  • grpc 
  • xxl-job

框架依賴升級:
1. upgrade gRPC to v1.38.0
2. upgrade etcd to v3.5.0
3. upgrade protobuf to v1.5.2
4. upgrade go-redis to v8.11.0
5. upgrade go-grpc-middleware to v1.3.0
6. upgrade gorm to v1.21.11
7. upgrade logrus to v1.8.1
8. upgrade go2sky to v1.1.0
9. upgrade fasthttp v1.28.0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM