oslo_db使用


oslo_db是openstak中封裝數據庫訪問sqlachmy的模塊,網上搜索的資源並不多,除了openstack官方文檔,在實際使用中的例子鳳毛麟角。

有感於資源太少,在學習heat源碼的過程中,有所感悟,記錄下,以便於循序漸進地進行學習。在當前的openstack Q版本中,因為oslo_db聚合了oslo_context,在分析中更為復雜

1.在RequestContext 類中,session方法建立數據庫連接session,源碼如下:

    @property
    def session(self):
        if self._session is None:
            self._session = db_api.get_session()
        return self._session

在使用中,oslo_db的目錄結構如下:

db下面的api,定義數據庫訪問的接口,sqlalchemy中的api是具體實現類,model是數據庫訪問的元類

數據庫接口api 代碼:

在sqlalchemy的實現api中,下面使用get_session的query 進行數據庫訪問

 

oslo_db訪問數據庫demo見連接 https://github.com/CaesarLinsa/oslo_learn


免責聲明!

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



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