1.定义DB的后端,即真正实现DB访问的接口
from oslo_db import api
api.DBAPI.from_config(conf, backend_mapping=None, lazy=False)
backend_mapping 是一个map = {'sqlalchemy': 实现DB访问接口的文件}, 如Nova中,该map = {'sqlalchemy': 'nova.db.sqlalchemy.api'}
该文件要实现一个接口:get_backend 用于返回后端名称。代码如下:
def get_backend():
"""The backend is this module itself."""
return sys.modules[__name__]
2.在后端实现对DB的链接
def _create_facade_lazily():
global _LOCK
with _LOCK:
global _FACADE
if _FACADE is None:
_FACADE
from oslo_db import api
api.DBAPI.from_config(conf, backend_mapping=None, lazy=False)
backend_mapping 是一个map = {'sqlalchemy': 实现DB访问接口的文件}, 如Nova中,该map = {'sqlalchemy': 'nova.db.sqlalchemy.api'}
该文件要实现一个接口:get_backend 用于返回后端名称。代码如下:
def get_backend():
"""The backend is this module itself."""
return sys.modules[__name__]
2.在后端实现对DB的链接
def _create_facade_lazily():
global _LOCK
with _LOCK:
global _FACADE
if _FACADE is None:
_FACADE