SOFA Weekly | SOFAArk、SOFABoot 發版、10月28日線上直播預告

SOFA WEEKLY | 每週精選,篩選每週精華問答
同步開源進展,歡迎留言互動
SOFAStack(Scalable Open Financial Architecture Stack)是螞蟻集團自主研發的金融級雲原生架構,包含了構建金融級雲原生架構所需的各個組件,包括微服務研發框架,RPC 框架,服務註冊中心,分佈式定時任務,限流/熔斷框架,動態配置推送,分佈式鏈路追蹤,Metrics 監控度量,分佈式高可用消息隊列,分佈式事務框架,分佈式數據庫代理層等組件,也是在金融場景裏錘鍊出來的最佳實踐。
SOFAStack 官網: https://www.sofastack.tech
SOFAStack: https://github.com/sofastack

  每週讀者問答提煉  

歡迎大家向公衆號留言提問或在羣裏與我們互動
我們會篩選重點問題通過 
" SOFA WEEKLY " 的形式回覆

1、@廖虹劍 提問:

我們想擴展一下 Dubbo 的 thrift 協議,遇到一個問題,consumer -> mosn-client -> provider,現在請求可以正常 decode -> encode 到達 provider,並且 provider 可以正常調用,在返回的時候,數據包已經發回 MOSN,並且成功 decode,但是會阻塞在 read 處直到超時,沒辦法 write 回 consumer。請問有什麼排查思路嗎?MOSN 裏面這個網絡模型看得有點暈。

A:先 read 再 decode 的呀,你說的阻塞在 read 是阻塞在哪?


read 方法已經正常調用,並且 decode了,但是沒有觸發寫事件,consumer端 會一直在等待。然後又會到這裏卡住直到超時

A:數據 read 了沒有新數據,這裏就是會超時啊。你要看 decode 之後做了什麼。


我打斷點看到的 remote ip 和端口是 provider 端的。或者我換一個問法,MOSN 在獲取到 upstream 的響應數據並且 decode 之後,是如何怎麼觸發 encodeResponse 並寫回 writebuffer 的。我調試發現它 read 完數據之後無法進入到 endStream 方法。也沒看到什麼異常日誌。我對 go 還不是特別瞭解,如果有什麼問題還請多指正,辛苦了。

A:你從 Decode 的邏輯往下跟一下就可以了,Dubbo 目前是 xprotocol 協議的實現 Decode 以後會經過 proxy 的流程最後再 encode,然後 write。read 是異步的,這個有點簡單的介紹:

https://mosn.io/blog/code/mosn-eventloop/


找到問題了,是 encode 的時候 replace requestId 的時候出了點問題,導致找不到對應的 stream,感謝~

MOSN:https://github.com/mosn/mosn


2、@Bernie G 提問:

我這邊項目是 Spring Boot,沒有用 Dubbo, 這種情況可以用 Seata 做 Saga 事務嗎?

A:你的服務調用是通過 feign,resttemplate?Saga 跟 RPC 框架不是強綁定的,你的遠程服務可用在被調用方作爲類似 reference bean 的形式調用就可以。


我們這邊主要用的是 RestfulApi 還有 gRPC 來作爲微服務之間的調用, Seata 能支持嗎?如果能給個代碼 Sample 最好。

A:Test 中有 gRPC 的實例,看下是否滿足需求。

https://github.com/seata/seata/tree/develop/integration/grpc

Seata:https://github.com/seata/seata


  本週推薦閱讀  



  SOFA 項目進展  

本週發佈詳情如下:

1、發佈 SOFABoot v3.4.5 版本,主要變更如下:

  • 支持  triple 線程監控;

  • 升級 sofa-ark 版本至 1.1.5;

  • 升級 junit 版本至 4.13.1;

  • 修復 jvm filter npe 問題;

  • 修復http server 線程池配置問題;

詳細發佈報告:

https://github.com/sofastack/sofa-boot/releases/tag/v3.4.5


2、發佈 SOFAArk v1.1.5 版本,主要變更如下:

  • 修復 web 模塊併發安裝問題;

  • 修復支持 web 環境測試 webContext 默認爲 null 導致的 NPE 問題;

詳細發佈報告:

https://github.com/sofastack/sofa-ark/releases/tag/v1.1.5


  SOFA 直播預告  

在邊緣計算和 5G 商業化風起雲湧的當下,阿里雲 CDN 開展了節點全面雲原生化的改造,在此背景下,我們嘗試利用 CDN 資源池爲底座,在大規模複雜邊緣場景下建設 Service Mesh 的基礎能力,打造邊緣 PaaS 平臺。落地實踐過程中我們使用了螞蟻 SOFAStack–Service Mesh 體系中的 MOSN 作爲數據面,Istio 作爲控制面。本次分享將從 Service Mesh 技術以及 CDN 邊緣場景介紹入手,重點分析 Istio 和 MOSN 結合的落地實戰過程。

分享主題:
《Service Mesh Webinar#3:Service Mesh 在 CDN 邊緣場景的落地實踐》

分享嘉賓: 肖源(花名蕭源),阿里雲技術專家

聽衆收穫:
  • 瞭解 Service Mesh 技術;

  • 瞭解 Service Mesh 在阿里雲 CDN 邊緣場景的落地實踐;

  • 給到想要落地 Service Mesh 的同學一些案例與建議;


線上直播時間: 2020 年 10 月 28 日(週三)20:00-21:00

歡迎報名 :點擊“ 閱讀原文 ”,即可報名。

本文歸檔在 sofastack.tech。

本文分享自微信公衆號 - 金融級分佈式架構(Antfin_SOFA)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章