nova 中的 orm 映射如何区分 database 和 api_database

入口在nova.config.py::parse_args

进入nova.db.sqlalchemy.api.py::configure中, 发现api_context_manager.configure(**_get_db_conf(conf.api_database)), 这里可以知道api_context_manager连接到api_database

通过装饰器可以实现让orm model映射到api_database, 形式如下:

@nova.db.sqlalchemy.api.api_context_manager.reader
def  _get_by_instance_uuid_from_db(api_models.RequestSpec).filter_by(...)

你可能感兴趣的:(nova 中的 orm 映射如何区分 database 和 api_database)