1

データを入力するためのフロントエンドと、データを提供するための API を持つ django アプリがあります。マスター/スレーブのセットアップがあるため、データベースルーターを使用してマスターへの書き込みとスレーブからの読み取りを管理しています。

import random
from django.conf import settings

class DBMasterSlaveRouter(object):
    def db_for_read(self, model, **hints):
        if len(settings.DB_SLAVES) >= 1:
            return random.choice(settings.DB_SLAVES)
        else:
            return settings.DB_MASTER

    def db_for_write(self, model, **hints):
        return settings.DB_MASTER

    def allow_syncdb(self, db, model):
        return True

私が抱えている問題は、フロントエンド、ユーザー入力データ、およびヒット保存にあります。ページがリロードされ、スレーブからデータがロードされます (これは非常に迅速に発生します)。マスターとスレーブの間に遅延があるため、ロードは反映されません。最新の入力。ページの読み込みを遅らせたくありません。using('default')現在、フロントエンドでマスターから読み取るように強制的に追加する必要があります

これを修正する方法はありますか?

4

1 に答える 1

2

これが答えのようです:

https://github.com/jbalogh/django-multidb-router

于 2013-08-27T22:57:03.310 に答える