久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

ceph RGW接口源碼解析之Rados數據操作的示例代碼

157次閱讀
沒有評論

共計 1309 個字符,預計需要花費 4 分鐘才能閱讀完成。

這篇文章主要為大家展示了“ceph RGW 接口源碼解析之 Rados 數據操作的示例代碼”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領大家一起研究并學習一下“ceph RGW 接口源碼解析之 Rados 數據操作的示例代碼”這篇文章吧。

RGW 業務處理流程:

http reqest — apache 轉 FastCgi module

FastCgi module — radosgw  通過 socket 請求實現 (未確定是否有其它方式)

radosgw — ceph 集群   通過 socket 實現,調用 rados 接口

1、數據結構

在 Rgw_common.h 定義了基本的數據結構,并實現了 decode、encode 序列化,方便對 rados 訪問

// 桶的權限創建資料

struct RGWBucketInfo 
{
  rgw_bucket bucket;
  string owner;
  uint32_t flags;
  string region;
  time_t creation_time;
  string placement_rule;
  bool has_instance_obj;
  RGWObjVersionTracker objv_tracker; /* we don t need to serialize this, for runtime tracking */
  obj_version ep_objv; /* entry point object version, for runtime tracking only */
  RGWQuotaInfo quota;

}

// 桶 pool 位置存儲組成
struct rgw_bucket {
  std::string name;
  std::string data_pool;
  std::string data_extra_pool; /* if not set, then we should use data_pool instead */
  std::string index_pool;
  std::string marker;
  std::string bucket_id;
  std::string oid;
 }

// 用戶 UID 資料

struct RGWUserInfo

2、s3 元數據原子操作

在 rgw_op.h 定義元數據的原子操作,RGWOp 作為基類

創建桶的原子類定義:class RGWCreateBucket : public RGWOp

3、元數據操作句柄

在 Rgw_bucket.h 中定義
  class RGWUserBuckets

在 Rgw_bucket.cc 中實現
  class RGWBucketInstanceMetadataHandler : public RGWMetadataHandler
  class RGWBucketMetadataHandler : public RGWMetadataHandler

4、rados 接口實現

在 rgw_rados.h 定義了 RGWRados,實現了所有與 rados 相關的操作接口

以上是“ceph RGW 接口源碼解析之 Rados 數據操作的示例代碼”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-16發表,共計1309字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 南乐县| 兴义市| 余干县| 永济市| 蓝田县| 天水市| 玉门市| 长岛县| 孝义市| 大埔区| 册亨县| 南开区| 成武县| 白城市| 武冈市| 安新县| 都昌县| 临澧县| 玛多县| 土默特右旗| 尼勒克县| 双城市| 五河县| 溆浦县| 都匀市| 航空| 无极县| 秦安县| 红河县| 新龙县| 大英县| 湘潭县| 青冈县| 曲阳县| 金川县| 牙克石市| 个旧市| 靖西县| 丰县| 玛曲县| 铁力市|