Я читав це запитання, що реплікація майстра / підлеглого не працює, і його відповідь:
Використання рабських баз даних ледве реалізовано в ядрі Drupal. Якщо ви розробляєте власні модулі, то для викликів db_query потрібно вказати, що вони хочуть використовувати підлеглий базу даних, використовуючи масив $ options. Див. DatabaseConnection :: defaultOptions, як встановити цей масив.
Чи є спосіб, не вбиваючи кошенят, що зламали серцевину, отримати db_query()
та db_select()
зробити більше рабів SELECT запитів?
За замовчуванням ці функції будуть запитувати ведучого, якщо спеціально не вказано запитувати ведений (див. Їх API). Ви повинні писати db_query($query, $args, array('target' => 'slave'))
, щоб запитувати ведений і ядро (і всі модулі) не написані для цього.
Тільки пошук (див. Рабовласницьку частину) та агрегатор, схоже, підтримують це.
Редагувати: 25 жовтня.
Я побачив, що прес-потік 7 не працює, але я не впевнений, чи він зараз дуже допомагає.
Я не знайшов щось відповідне, тож давайте спробуємо трохи нагородити, щоб допомогти цьому отримати відповідь.
Редагувати: 31 жовтня
Мене в основному турбують коментарі Крела щодо цієї теми: Що робити з рабами? .
В основному, чи є проблеми, якщо я надсилаю SELECT
запити до підлеглого, що відбувається із затримками реплікації та тим, що я, можливо, захочу зробити node_load()
щойно після збереження нового вузла.
SELECT
запити? Як ви маєте справу з затримками реплікації та тим, що завантаження вузла відразу після його збереження може спричинити проблеми?