|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Всем привет! Заранее прошу тухлыми яйцами не кидать :) Firebird Embedded 2.5, приложение на Дельфи. В процессе работы необходимо загружать данные извне, решил через внешнее приложение-сканер. Все просто - в каталог прилетают файла, приложение-сканер сканирует каталог, видит файлы и грузит в базу. Приложение-сканер лежит в том же каталоге, что и основное приложение, база и fdbclient.dll. Теперь вопросы: 1) Считается ли это как многопользовательский режим и лучше поставить сервер Firebird? 2) Если перенести функционал в основное приложение параллельным потоком, то нужно открывать отдельный коннект для потока - в этом случае это тоже как многопользовательский режим и тоже лучше поставить сервер Firebird? К чему я спрашиваю - уже третий раз летит база у разных клиентов, как пускают в действие приложение-сканер. Не всегда конечно и не у всех, но такое случается. Просто база становится непригодной, даже backup/restore не может ее распознать. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 07:33 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, У меня, правда на FB 3.0 Embedded, в многопоточном высоконагруженном режиме загрузка работает как часы. Отдельные коннекты на каждый поток, никаких разрушений ни разу не наблюдалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 08:29 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, Не сразу дошло что у тебя там параллельные коннекты из разных приложений. В этом случае, для надежности, я бы поставил полноценный сервер или слил, распараллеливая, весь функционал в одно или перешел на 3.0, где все это теперь уже вроде можно настроить по человечески и для Embedded. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 08:35 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik... 1) Считается ли это как... ... ...база становится непригодной, даже backup/restore не может ее распознать. Да, FB 2.5 Embedded обеспечивает параллельный доступ к файлу базы. Т.е., несколько приложения могут одновременно работать с одним файлом базы. Однако, FireBird Embedded - это всего лишь dll, т.е. фактически - "сервер" есть часть приложения. Если приложение падает, это значит, что падает и "эмбеддед сервер", при этом файл базы запросто может оказаться в неконсистентном состоянии. То есть, если есть возможность ставить полноценный сервер - лучше ставить полноценный сервер. Однако, если клиент будет выключать комп методом "выдернул из розетки" - то и отдельный сервер, скорее всего, тоже не спасет. Да, в отдельном треде должен быть отдельный коннект. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 09:35 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Vlad F...для надежности, я бы ... перешел на 3.0, где все это теперь уже вроде можно настроить по человечески и для Embedded. Что конкретно в данной ситуации даст переход на 3.0? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 09:42 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Фэйтл Эра, Простую и надежную настройку ServerMode, это как минимум. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 09:47 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Vlad FФэйтл Эра, Простую и надежную настройку ServerMode, это как минимум. Ну так все же, какую конкретно выгоду получит ТС от перехода "2.5 -> 3.0" при использовании FB Embedded? Например - какие ненадежные настройки "Fb embedded 2.5" станут надежными, и что именно упростится для ТС? И для чего ему вдруг понадобилась настройка "ServerMode"? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 10:13 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Фэйтл Эра, Ответы на эти вопросы записаны в специальный документ, называется Release Notes. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 10:19 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Фэйтл Эра, Доступные в нем централизованные настройки комбинвции Providers+ServerMode, как минимум, страхуют от возможных расхождений данных параметров при соединении разных приложений с одной БД в Embedded режиме. Что в общем случае, чревато, как понимаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 10:37 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Vlad F, в 2.5 ServerMode для Embedded был один и его не надо было настраивать вообще. Да и Providers тоже не требовался. Другое дело что в 3.0 одну и ту же dll можно использовать и в случае необходимости мгновенно перейти на полноценный сервак просто поменяв настройки. Ну и самое главное возможности SQL в 3.0 намного ширше. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 10:52 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Симонов Денис, Это я примерно в курсе. Но в ротоколе то, ведь можно было проявить (небезопасный) вольюнтаризм?)) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:01 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Vlad F, т.обр., то, что вообще не требовало настройки для FB Embedded 2.5, стало простым и удобным в 3.0? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:05 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Фэйтл Эра, 1) я не писал про удобство, упирал в основном на большую централизованность/надежность; 2) про протокол счел возможным мимо уха пропустить? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:19 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Ого, какая полемика :) В итоге, если слить все в одно многопоточное приложение - сервер Файрберд ставить нет надобности? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:23 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik...В итоге, если слить все в одно многопоточное приложение - сервер Файрберд ставить нет надобности? Ну, если ты такой вывод после всех советов делаешь - то, конечно, не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:28 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, Надо попробовать, надо попробовать.)) Но технологически, полагаю, много проще начать с замены Embedded с двойки на тройку, не исключено, что уже тем самым будет достигнут нужный результат (там ведь внутри еще дофига чего поменялось в плане надежности). ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:31 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, откуда такой мягко говоря странный вывод. В Embedded например нет префетча записей в протоколе, само по себе вероятность угробить БД выше, ну и совместный доступ к БД куда менее эффективный, ибо осуществляется через ServerMode=classic. По мне принцип разделяй и властвуй всегда лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 11:42 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchikПросто база становится непригодной, даже backup/restore не может ее распознать. причиной такого embedded быть не может. Это либо вирус, либо что-то с диском или операционной системой. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:08 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Симонов Денис, я все понимаю, что конечно сервер надежнее, но неужели на Firebird Embedded делают только однопоточные приложения ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:10 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, 1. см. мой предыдущий ответ 2. fb 2.5 embedded может работать с одной базой из разных exe. Но про вероятные падения exe вам уже сказали, а это значит, что падает "сервер". Кроме того, эффективность таких "многопользовательских" решений на embedded под большим вопросом. В чем смысл этой псевдо-многопользовательскости? Самый дурацкий вариант - embedded в вебе из под .net или php. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:15 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, смотря что подразумевается под многопоточностью. Если вы реально делаете сервер приложений, то толку в Embedded ноль. И я сильно сомневаюсь в его эффективности для таких задач. Конечно чисто теоретически вы можете сделать некий аналог листнера firebird.exe со своим бледжэком и ..., но задача это крайне не простая. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:26 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
kdv, у меня многопользовательность - это просто разные потоки с отдельными коннектами. всем спасибо за советы, этот форум - лучший! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:27 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, многопользовательность? даже не просто многопоточностью? Тогда Embedded тут точно не в тему. Для экономии на дорогих коннектах есть пулы подключений ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:30 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
Симонов Денис, да нет... Просто kdv спросил зачем такая псевдо-многопользовательность. Я ответил что в моем случае псевдо-многопользовательность - это мои потоки с отдельными коннектами. Конечно, если физически несколько пользователей - то сервер ставится однозначно ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:38 |
|
Вопрос про одновременные коннекты к Firebird Embedded
|
|||
---|---|---|---|
#18+
aidynchik, и много их? Для чего они? Просто чтобы пользователь чего там не ждал, тогда ладно и Embedded сойдёт. Если же реально работают десяток потоков интенсивно что-то молотящих, то Embedded уже не в тему ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2019, 12:49 |
|
|
start [/forum/topic.php?fid=40&msg=39760171&tid=1560842]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
153ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
others: | 10ms |
total: | 269ms |
0 / 0 |