![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Компоненты FIBPlus
AlexG © (2004-07-06 14:02:00)Где можно найти русскую документацию по этим компонентам? А то возникают проблемы, а по английской долго находится ответ...
Например, компонент FIBTransaction нужен всего один для всех датасетов или их нужно несколько? Или это зависит от задачь приложения?
Koala (2004-07-07 16:10:00) [1]статья по работе с FibPlus
часть 1 http://www.devrace.com/ru/fibplus/articles/detail.php?ID=1163
часть 2 http://www.devrace.com/ru/fibplus/articles/detail.php?ID=1166
часть 3 http://www.devrace.com/ru/fibplus/articles/detail.php?ID=1168
часть 4 http://www.devrace.com/ru/fibplus/articles/detail.php?ID=1170
часть 5 http://www.devrace.com/ru/fibplus/articles/detail.php?ID=1172
_________________
Deniz (2004-07-07 14:05:00) [2]> jack128 © (07.07.04 11:35) [16]
> Но уж коли мы говорим о FIBPlus, то лично мне не напряжно кинуть 2 компонента на датамодуль вместо одного ;-)
Так вроде и я про это, тем более что никакого лишнего кода(как в BDE/IBX) писать не надо FIB+ сами все делают, просто выставил параметры всем транзакциям и подключай к ним DataSet'ы, ну может на пару десятков "кликов" больше будет, зато работа по правильному :-)
jack128 (2004-07-07 11:35:00) [3]
> сервера связанные с накомплением версий записей при использовании
> 1 транзакции для всего
дело не в этом а в необходимости переоткрывать все DataSet'ы после коммита. Разве что CommitRetaining, но на старых серверах он тоже приводит к ощутимым тормозам. А если на полуторке, то можно конечно и так.. Но уж коли мы говорим о FIBPlus, то лично мне не напряжно кинуть 2 компонента на датамодуль вместо одного ;-)
Sergey_Masloff (2004-07-07 09:02:00) [4]jack128 © (07.07.04 01:48) [13]
Deniz © (07.07.04 06:23) [14]
Господа, вспомните все проекты с IB которые вы видели. Подумайте возникали ли в них проблемы с lock conflict или падением производительности сервера связанные с накомплением версий записей при использовании 1 транзакции для всего. Если вы ответите на эти 2 вопроса объективно то вы согласитесь со мной и GannibalLector про 80%.
Deniz (2004-07-07 06:23:00) [5]"Ноги, крылья, главное хвост" (с)
Для любого приложения(99%) -> 3(три) транзакции:
1. Длинная читающая.
2. Короткая пишущая.
3. Отчетная читающая.
Одной не хватит, т.к. при таком подходе придется либо CommitRetaining+Refresh делать либо переоткрывать все DataSet'ы, и еще, такая транзакция более нагружает сервер чем read_only.
Двух не хватит, потому как для отчетов, особенно очень длинных, нужна транзакция типа SnapShot и желательно тоже read_only.
А в некоторых редких случаях необходимо более 1 пишущей.
jack128 (2004-07-07 01:48:00) [6]
> > А в 80% случаев хватит и одной.
> Во-во...Согласен.
да ну вас.. Одна транзакция на чтение - другая на запись - отныне и присна и во веки веков :-))
GanibalLector (2004-07-07 01:14:00) [7]> А в 80% случаев хватит и одной.
Во-во...Согласен.
Sergey Masloff (2004-07-06 23:29:00) [8]тихий вовочка © (06.07.04 19:05) [9]
Не понял твой пример. Какая разница MDI не MDI. Он что одновременно на 2 разные кнопки сохранить жмет? Так это тогда нужно малтитред приложение и на минимум двухпроцессорной машине. И то клиентская библиотека в очередь поставит сохранения твои. Так что не паникуй - 2 транзакции хватит всегда. А в 80% случаев хватит и одной.
GanibalLector (2004-07-06 23:22:00) [9]2 тихий вовочка
не...На все приложение
тихий вовочка (2004-07-06 19:05:00) [10]Одна для записи, одна для чтения? А если у меня MDI-приложение и клиент запустит сразу не только просмотр справочника, но и добавление заказа, и прайс править захочет, и параллельно начнет пополнять справочник? Или вы имели в виду, что на каждый Dataset по 2 транзакции?
AlexG (2004-07-06 15:48:00) [11]Koala
Спасибо за ссылку.
Johnmen ©
Да-да, я это и имел ввиду... ?)
Koala (2004-07-06 15:28:00) [12]http://www.ibase.ru/devinfo/ibtrans.htm
по поводу транзакций
Johnmen (2004-07-06 15:22:00) [13]>AlexG © (06.07.04 15:14) [5]
Одна (транзакция - она) :)
Оба компонента FIBTransaction идентичны. Но ты, как разработчик, в уме их разделяешь - эта для чт., а эта - для зап.
Напр. в компоненте FIB+ TpFIBDataSet можно видеть свойства, указывающие на чит.тр-ию и пиш.тр-ию.
AlexG (2004-07-06 15:14:00) [14]Johnmen ©
Ты сказал: один для чтения, другой для записи... Вот эти назначения я и имею ввиду. Или они ничем не отличаются, кроме функциональности?
Koala (2004-07-06 15:04:00) [15]'Мир Interbase', 2-е издание (А. Ковязин, С. Востриков)
Там они описаны и примеры есть
Johnmen (2004-07-06 15:02:00) [16]В смысле "назначение" ?
AlexG (2004-07-06 14:59:00) [17]А как ты определяешь их назначение? С помощью TPB?
Johnmen (2004-07-06 14:27:00) [18]Зависит от задач. Как правило достаточно 2. Одна читающая, др. пишущая.