Django实现读写分离
Django实现读写分离
migrate app01 --databse="db1"
# 手动操作(queryset对象)
ret=Book.objects.all().using("db1")
# 自动做(通过配置,程序,读去从库读,写去主库写)
# 写一个router
在项目路径下创建db_router.py
在里面写一个类
class Router1:
def db_for_read(self, model, **hints):
return 'db1'
def db_for_write(self, model, **hints):
return 'default'
#在setting中配置
DATABASE_ROUTERS = ['db_router.Router1',]
# 只要是写的操作,都到default上,只要是读的操作,都到db1上了