這篇文章主要為大家展示了“ceph RGW接口源碼解析之Rados數據操作的示例代碼”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“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數據操作的示例代碼”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創新互聯行業資訊頻道!
文章名稱:cephRGW接口源碼解析之Rados數據操作的示例代碼
鏈接URL:http://newbst.com/article22/jhcdcc.html
成都網站建設公司_創新互聯,為您提供虛擬主機、搜索引擎優化、營銷型網站建設、動態網站、網頁設計公司、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯