|
Репликация?
|
|||
---|---|---|---|
#18+
Требуется web-приложение через которое клиенты производят ввод данных. На основе этих данных должен производиться некоторый расчет, формирование учетных регистров и отчетов. Клиенты не могут сами производить расчет и формирование отчетов (бизнес-требование). Данные должны проверяться/анализироваться операторами на стороне организации предоставляющей услуги. После того как данные от клиента проверены, они становятся актуальными для расчетов, формирования регистров и отчетов. В момент расчетов, формирования регистров и отчетов может значительно увеличиваться нагрузка на сервер БД (scalable middle-tier есть, но он проблемы не решает с нагрузкой не сервер БД). Требуется обеспечить нормальную работу клиентов, связанную с наполнением БД данными в моменты пиковой нагрузки, не связанной непосредственно с действиями клиентов. Решение пока видится только одно (кроме как требования к железу все время увеличивать) - два сервера БД с репликацией баз данных. Может у кого то есть другие идеи? или такая схема наиболее оптимальная в данном случае? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 10:01 |
|
Репликация?
|
|||
---|---|---|---|
#18+
Насколько БД участвует в обслуживании ввода данных? Может быть, будет удобнее в "моменты пиковой нагрузки" накапливать введенные данные на middle-tier с последующим фоновым добавлением в БД? СУБД, я так понимаю, не Oracle? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 15:12 |
|
Репликация?
|
|||
---|---|---|---|
#18+
softwarerМожет быть, будет удобнее в "моменты пиковой нагрузки" накапливать введенные данные на middle-tier с последующим фоновым добавлением в БД нет, такой кеш держать не реально, тем более ввод растягивается на несколько дней, а проверяется, анализируется и подтверждается оператором вся порция. ... нет не ORACLE, MSSQL и на каждого клиента своя база. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 15:50 |
|
Репликация?
|
|||
---|---|---|---|
#18+
Роман Дынникнет, такой кеш держать не реально, тем более ввод растягивается на несколько дней, а проверяется, анализируется и подтверждается оператором вся порция. Стоп, подождите. Я говорю не о кэше на все время ввода, а о кэше на время пиковой нагрузки. Надеюсь, пиковая нагрузка не растягивается на несколько дней? Роман Дынники на каждого клиента своя база. А базы разных клиентов по бизнесу пересекаются? Может быть, будет удачнее масштабировать, линейно увеличивая количество серверов БД? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 18:20 |
|
Репликация?
|
|||
---|---|---|---|
#18+
softwarerСтоп, подождите. Я говорю не о кэше на все время ввода, а о кэше на время пиковой нагрузки. Надеюсь, пиковая нагрузка не растягивается на несколько дней? как это контролировать и переключать? или вы об очередях сообщений? А базы разных клиентов по бизнесу пересекаются? Может быть, будет удачнее масштабировать, линейно увеличивая количество серверов БД? Не пересекаются. По поводу увеличения кол-ва серверов - тоже сомнения, по-большей части они , мне кажется, будут простаивать и увеличение их количества экономически получается невыгодным и в обслуживании дорогим. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 20:16 |
|
Репликация?
|
|||
---|---|---|---|
#18+
Роман Дынниккак это контролировать и переключать? Да собственно как угодно. Хотя бы взведением в БД флажка "идут тяжелые расчеты"; AS в начале транзакции проверяет этот флажок, и если что, тормозит на пять минут операции с БД. Роман Дынникили вы об очередях сообщений? Как вариант. О реализации я не думал, исключительно о принципе. Роман ДынникПо поводу увеличения кол-ва серверов - тоже сомнения, по-большей части они , мне кажется, будут простаивать .... А каковы примерно параметры "пиковой нагрузки"? (для одного клиента - сколько она будет длиться и как часто случаться?) Я просто не совсем понимаю ситуацию, при которой с одной стороны нагрузка достаточно редка, чтобы пиковые нагрузки не пересекались, с другой стороны сочетание пиковой нагрузки с обычной создает проблему производительности, с третьей при обычной нагрузке железо простаивает, а с четвертой при этом сделать N более дешевых железяк не получится. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 20:27 |
|
Репликация?
|
|||
---|---|---|---|
#18+
Может организовать 2 сервера и настроить log shipping (терминология MS SQL) между ними? 1 сервер - ОЛТП - данные вводятся туда с него раз в 10 минут снимаются бэкапы транзакшен-лога 2 сервер - сервер отчётов - данные только на чтение раз в 10 минут туда приходит транзакшен лог - соответственно "отстаёт" от боевого на 10 минут. В общем случае, это гораздо более простое решение чем настройка репликации или кэширование на уровне приложения ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 20:51 |
|
Репликация?
|
|||
---|---|---|---|
#18+
То есть standby в терминологии Oracle? Да, это вариант. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2006, 20:53 |
|
|
start [/forum/topic.php?fid=33&msg=34165490&tid=1549228]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
152ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 252ms |
0 / 0 |