日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

DAOS 分布式异步对象存储|数据平面

發布時間:2024/6/21 综合教程 35 生活家
生活随笔 收集整理的這篇文章主要介紹了 DAOS 分布式异步对象存储|数据平面 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

DAOS 通過兩個緊密集成的平面進行運轉。數據平面處理繁重的運輸操作,而控制平面負責進程編排和存儲管理,簡化數據平面的操作。

模塊接口

I/O 引擎支持一個模塊接口,該接口允許按需加載服務器端代碼。每個模塊實際上都是一個庫,由 I/O 引擎通過 dlopen 動態加載。模塊和 I/O 引擎之間的接口在 dss_module 數據結構中定義。

每個模塊應指定:

模塊名
daos_module_id 中的模塊標識符
特征位掩碼
一個模塊初始化和銷毀函數

此外,模塊還可以選擇配置:

在整個堆棧啟動并運行后調用的配置和清理函數
CART RPC 處理程序
dRPC 處理程序

線程模型與 Argobot 集成

I/O 引擎是一個多線程進程,使用 Argobot 進行非阻塞處理。

默認情況下,每個 Target 都會創建一個 main xstream 和 no offload xstreams。offload xstream 的實際數量可以通過 daos_engine 命令行參數進行配置。此外,還創建了一個額外的 xstream 來處理傳入的元數據請求。每個 xstream 都綁定到一個特定的 CPU 核心。main xstream 接收來自客戶端和其他服務器的 Target 傳入請求。一個特定的 ULT(User Level Thread) 會在網絡和 NVMe I/O 操作方面提供幫助。

Thread-local Storage (TLS)

每個 xstream 分配的私有存儲可以通過 dss_tls_get() 函數進行訪問。

注冊時,每個模塊可以指定一個模塊密鑰,該密鑰的數據結構大小將由 TLS 中的每個 xstream 進行分配。

dss_module_key_get() 函數的作用是:返回特定注冊模塊密鑰的數據結構。

Incast Variable 集成

DAOS 使用 IV (incast variable) 在單個 IV 命名空間(組織結構為樹)下的服務器之間共享值和狀態。樹的根節點稱為 IV leader,服務器可以是葉子節點也可以是非葉子節點。

每個服務器都維護自己的 IV 緩存。在獲取過程中,如果本地緩存不能完成請求,它會將請求轉發給其父緩存,直到到達根緩存 (IV leader)。對于更新操作,服務器首先更新它的本地緩存,然后轉發到它的父緩存,直到到達根緩存,然后將更改傳播到其他的服務器。

IV 命名空間是屬于每個 Pool 的,在 Pool 連接期間創建,在 Pool 斷開連接期間銷毀。

要使用 IV,每個用戶需要在 IV 命名空間下注冊自己以獲得標識符,然后用戶將使用這個 ID 來獲取或更新自己在 IV 命名空間下的 IV 值。

dRPC 服務器

I/O 引擎包括一個 dRPC 服務器,它監聽給定 Unix Domain Socket 上的活動。

有關 dRPC 的基礎知識以及 Go 和 C 中的底層 API 的更多詳細信息,請參閱 dRPC Documentation。

dRPC 服務器定期輪詢傳入的客戶端連接和請求。它可以通過 struct drpc_progress_context 對象同時處理多個客戶端連接,該對象管理監聽 Socket 的 struct drpc對象以及任何活動的客戶端連接。

服務器在 xstream 0 自己的 ULT (User Level Thread) 中循環運行。dRPC Socket 已設置為非阻塞的,并且使用無超時輪詢。這允許服務器在 ULT 中運行,而不是在自己的 xstream 中運行,預計該通道的流量相對較低。

dRPC 進程

drpc_progress 表示 dRPC 服務器循環的一次迭代。其工作流程如下:

在監聽 Socket 和任何打開的客戶端連接上同時進行超時輪詢。
如果在客戶端連接上看到任何活動:

如果數據已輸入:調用 drpc_recv 處理輸入的數據。
如果客戶端已斷開連接或連接被破壞:釋放 struct drpc 對象并將其從 drpc_progress_context中刪除。

如果在監聽器上發現任何活動:

如果有新的連接進入:調用 drpc_accept 并將新的 struct drpc 對象添加到 drpc_progress_context 中的客戶端連接列表中。
如果有錯誤:將 -DER_MISC返回給調用者。I/O 引擎中會記錄該錯誤,但不會中斷 dRPC 服務器循環。在監聽器上獲取到錯誤是意外情況。

如果沒有看到任何活動,則將 -DER_TIMEDOUT返回給調用者。這純粹是為了調試目的,實際上,I/O 引擎會忽略此錯誤代碼,因為缺少活動實際上并不是一種錯誤。

dRPC 處理程序注冊

單個 DAOS 模塊可以通過注冊一個或多個 dRPC 模塊 ID 的處理函數來實現對 dRPC 消息的處理。

注冊處理程序很簡單。在 dss_server_module 的字段 sm_drpc_handlers中,靜態分配一個 struct dss_drpc_handler數組,該數組的最后一項為零,以指示列表的結尾。將字段設置為 NULL 表示沒有要注冊的處理程序。當 I/O 引擎加載 DAOS 模塊時,它將自動注冊所有 dRPC 處理程序。

注意:

dRPC 模塊 ID 與 DAOS 模塊 ID 不同。
這是因為給定的 DAOS 模塊可能需要注冊多個 dRPC 模塊 ID,具體數量取決于 DAOS 模塊所涵蓋的功能。
dRPC 模塊 ID 必須是系統范圍內唯一的,并且列在一個中心頭文件 `src/include/daos/drpc_modules.h中。

dRPC 服務器使用函數 drpc_hdlr_process_msg 來處理傳入的消息。此函數檢查傳入消息的模塊 ID,搜索處理程序。

如果找到處理程序,則執行該處理程序,并返回 Drpc_Response
如果找不到,它將生成自己的 Drpc_Response,指示模塊 ID 未注冊。

相關信息

GitHub: https://github.com/storagezhang

Emai: debugzhang@163.com

華為云社區: https://bbs.huaweicloud.com/blogs/255571

DAOS: https://github.com/daos-stack/daos

本文翻譯自 https://github.com/daos-stack/daos/blob/master/src/control/README.md

總結

以上是生活随笔為你收集整理的DAOS 分布式异步对象存储|数据平面的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 好男人www社区 | 日韩午夜在线观看 | 成年人看的免费视频 | 成人gav| 精品国产一级久久 | 2019天天干| 国产精品福利在线 | 丰满人妻妇伦又伦精品国产 | 一级黄色片一级黄色片 | 日韩成人av一区 | 日韩有码在线视频 | 午夜影视在线观看 | 免费看国产黄色片 | 涩久久| 国产精品人成在线观看免费 | 精品无码一区二区三区蜜臀 | 亚洲h在线观看 | 欣赏asian国模裸体pics | 黑人巨大精品欧美一区二区 | 黑丝一区二区三区 | 欧洲一区二区在线 | 好吊操视频这里只有精品 | 男人影院在线 | 朋友人妻少妇精品系列 | 免费看的黄色录像 | 久久久久成人精品无码中文字幕 | 亚洲黄色小说视频 | 婷婷成人综合网 | a毛片在线免费观看 | 亚洲久久色 | 少妇又色又紧又大爽又刺激 | 毛片在线观看网站 | 一区二区三区视频免费 | 亚洲精品国产一区二 | 成人av电影在线播放 | 天天干夜夜干 | 精品一区二区不卡 | 动漫美女放屁 | 我们的2018中文免费看 | 亚州国产| 日本高清免费aaaaa大片视频 | 天天在线观看 | 亚洲AV永久无码国产精品国产 | 欧美中文字幕一区二区三区 | 亚洲色图10p | 色碰视频 | 免费a v在线 | 日韩欧美大陆 | 久久最新精品 | 中文字幕亚洲乱码熟女一区二区 | www.国产色 | 亚洲综合网址 | 国产中文字幕一区二区 | 裸体男女树林做爰 | 色视频免费在线观看 | 97成人精品| 国产精品破处 | 欧美精品一二三四区 | 色婷婷91| 天天夜碰日日摸日日澡性色av | www日本高清 | 91爱爱爱| 公侵犯人妻一区二区三区 | 91黄瓜视频 | 亚洲自拍第二页 | 日本黄色免费视频 | 亚洲精品1 | 日本三级韩国三级三级a级按摩 | 好吊色网站 | 色图综合网 | 亚洲欧美国产另类 | 一级片aaa | 国产福利视频一区二区 | 国产又色又爽又黄 | 国产精品精品视频 | 爱情岛亚洲论坛入口 | 亚洲精品久久久久中文字幕二区 | 精彩视频一区二区 | 大陆av在线 | 国产56页 | 日韩中文字幕在线一区 | 国产乱人乱偷精品视频a人人澡 | 97成人超碰| 五月天一区二区三区 | 欧美日色 | 亚洲精品久久久久久久久久 | 亚洲免费网站 | 秋霞影院午夜伦 | 高清av一区二区 | 丰满少妇av | 国内久久 | 97麻豆视频| 麻豆人妻少妇精品无码专区 | av免费看在线 | 69av网| 婷久久 | 国产精品无码免费播放 | 性欧美大战久久久久久久免费观看 | 亚洲免费小视频 |