|
|
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Условия: Есть 2 interbase-сервера. Primary и Secondary. Вся работа идёт с Primary, до тех пор, пока он, по каким-либо причинам, не умирает. В этом случае (в случае отказа при выполнении очередного запроса), клиенты автоматически начинают стучаться к Secondary. Задача - сделать так, чтобы после каждого commit все изменения отображались на Secondary сервере. Очевидны 2 решения: реализация такого поведения в middle-tier, и реализация триггеров на after update, after delete для каждой таблицы + udf, которые заносят эти изменения в базу на Secondary. недостатки первого способа: необходимость вносить изменения в middle tier, что требует затрат по времени и тестированию, плюс - необходимость поднимать старый код, и т.п. Недостатки второго - увеличение загрузки сервера. Однако, это преодолимо повышением общей производительности сервера. Вопрос: 1) Есть ли какие-либо иные решения, не требующие изменений в клиентском и middle tier коде? 2) Есть ли уже готовое решение (например, создание Event-ов, затем запускаем мониторящее приложение, которому просто указываем таблицы и соответствующие event-ы, оно само смотрит структуру и выполняет действия по синхронизации)? 3) Если у Вас уже есть такие решения, сколько Вы хотите за них получить денег? Советы/URL тоже крайне приветствуются. ЗЫ. Обновить сервер в пределах ветки Firebird/Yaffil возможно. Maxim S. Lee AKA Jetteim http://jetteim.tk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 14:35 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
У меня тоже подобная фигня реализована с несколькими серваками - дык уже успели обосрать эту конструкцию по полной программе \r Можешь почитать на: |> \r Успехов! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 15:00 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Че-то ссылка не прошла...\r /topic/54063 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 15:02 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
А чем для этого не подходит стандартных механизм теней? Я ним хоть и не пользовался никогда, но он типа и создан для того, чтоб в случае чего заменить сломанную базу... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 15:14 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Это немного не то. Мне нужно, чтобы всегда была актуальная копия базы на другой машине, чтобы, в случае отказа primary сервера, клиенты могли работать с копией. Maxim S. Lee AKA Jetteim http://jetteim.tk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 15:15 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Тогда репликация в реальном времени нужна. Есть куча статей на ibase.ru по репликации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 15:17 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Ну, теорию я знаю. Вопрос в конкретной реализации. (шёпотом) Мне нужен инструмент или ссылка на людей, имеющих инструмент, или ссылка на людей, знающих, как построить инструмент, и готовых об этом поговорить. Maxim S. Lee AKA Jetteim http://jetteim.tk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2003, 16:37 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Hi, Jetteim! Если имеешь пару серваков, то, имхо, есть резон цепануть между ними некую дисковую емкость (как минимум, зеркальце на двух сказиках) и держать базу на ней, а серваки объединить в MS-кластер с одинаково установленными/настроенными IB. Тогда у них будет общие "виртуальный" IP-адрес и DNS-имя, по которым запросы к IB-серверу пойдут на "мастер"-сервер, работающий монопольно с томом на дисковой емкости. В случае краша первого сервака запросы будут обрабатываться "слейв"-сервером, автоматичиски получившим том с базой во владение. Определенно потребуется реконнект клиентов, есть вероятность необходимости рестарта IB на "слейве" (но это не факт, кстати)... И по деньгам, и по минимизации гимора это очень "вкусное решение" (а уж то, что не придется и пальцем шевелить в сторону shadow/replication/etc. - это козырь номер раз)... With best... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2003, 15:27 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Спасибо. О кластере наши инженеры как-то не задумывались. Попробуем. Maxim S. Lee AKA Jetteim http://jetteim.tk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2003, 16:04 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Первой, как обычно, сломается именно эта "емкость" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2003, 16:21 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Hi, Jetteim! Пробуй-пробуй... У меня терминал-сервер как раз в кластере стоИт. Есс-но, ему не уперлась общая дисковая емкость - там Citrix стоит на каждом сам себе - посему она реализована на 2 HBA + 1 HDD - лишь бы кластер-мода сработала. Фикус в том, что Citrix умеет балансировать нагрузку сам - запросы от TS-клиентов приходят на "виртуальный" IP, попадают на "мастер" а уж он сам переводит "лишние" (в плане нагрузки) на "слэйв", стоЯщий с ним в одной ферме. Ясен пень - с IB так не выйдет (ну без специального middle-ware какого-нито), но доступность базы и "редундантность" :)) гарантированы... Если твои спецы забуксуют на хардвере - свистни - помогу... With best... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2003, 16:34 |
|
||
|
Online-синхронизация баз
|
|||
|---|---|---|---|
|
#18+
Hello, Roman Ignatiev! >Первой, как обычно, сломается именно эта "емкость" Вопрос номер раз: поднимите руки те, кто думает, что база данных на сервере не должна храниться на отказоустойчивом дисковом массиве? Нет таких? А жаль... А то я рассказал бы им _подробно_ - как должено быть устроено хранилище критически важных данных... "Зеркало", "десятка", "пятерка", "пятидесятка" - сами по себе (в самых разных вариациях и реализациях) и в сочетании с подстраховкой со стороны ОС - скажи мне, сколько стОят твои данные (или сколько ты готов потратить, чтобы их не потерять) - и я предложу АДЕКВАТНОЕ решение... Вопрос номер два - а с чего ты взял, что эта "емкость" сломается первой, будучи реализованной на том же качественном уровне, что и внутренние массивы stand-alone серверов??? И правда-ли, что ты думаешь, будто под "емкостью" подразумевается одиночный диск??? Помнится, я писАл про "... (как минимум, зеркальце на двух сказиках) ..." - соответственно, любая "емкость" с должным уровнем резервирования даже при возможном сбое одного (или нескольких) компонента будет продолжать функционирование... Поверь - на этих вещах я слопал не одну стаю собак, поэтому призываю не рассматривать вышеизложенное как бред обкурившегося теоретика... Все это щупато ручками в изобилии... With best... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2003, 17:10 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32301612&tid=1579768]: |
0ms |
get settings: |
12ms |
get forum list: |
22ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
187ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 534ms |

| 0 / 0 |
