Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];

Вниз

Компоненты FIBPlus   Найти похожие ветки 

 
AlexG ©   (2004-07-06 14:02) [0]

Где можно найти русскую документацию по этим компонентам? А то возникают проблемы, а по английской долго находится ответ...
Например, компонент FIBTransaction нужен всего один для всех датасетов или их нужно несколько? Или это зависит от задачь приложения?


 
Johnmen ©   (2004-07-06 14:27) [1]

Зависит от задач. Как правило достаточно 2. Одна читающая, др. пишущая.


 
AlexG ©   (2004-07-06 14:59) [2]

А как ты определяешь их назначение? С помощью TPB?


 
Johnmen ©   (2004-07-06 15:02) [3]

В смысле "назначение" ?


 
Koala   (2004-07-06 15:04) [4]

"Мир Interbase", 2-е издание (А. Ковязин, С. Востриков)
Там они описаны и примеры есть


 
AlexG ©   (2004-07-06 15:14) [5]

Johnmen ©  
Ты сказал: один для чтения, другой для записи... Вот эти назначения я и имею ввиду. Или они ничем не отличаются, кроме функциональности?


 
Johnmen ©   (2004-07-06 15:22) [6]

>AlexG ©   (06.07.04 15:14) [5]

Одна (транзакция - она) :)
Оба компонента FIBTransaction идентичны. Но ты, как разработчик, в уме их разделяешь - эта для чт., а эта - для зап.
Напр. в компоненте FIB+ TpFIBDataSet можно видеть свойства, указывающие на чит.тр-ию и пиш.тр-ию.


 
Koala   (2004-07-06 15:28) [7]

http://www.ibase.ru/devinfo/ibtrans.htm
по поводу транзакций


 
AlexG ©   (2004-07-06 15:48) [8]

Koala
Спасибо за ссылку.

Johnmen ©
Да-да, я это и имел ввиду... ?)


 
тихий вовочка ©   (2004-07-06 19:05) [9]

Одна для записи, одна для чтения? А если у меня MDI-приложение и клиент запустит сразу не только просмотр справочника, но и добавление заказа, и прайс править захочет, и параллельно начнет пополнять справочник? Или вы имели в виду, что на каждый Dataset по 2 транзакции?


 
GanibalLector ©   (2004-07-06 23:22) [10]

2 тихий вовочка
не...На все приложение


 
Sergey Masloff   (2004-07-06 23:29) [11]

тихий вовочка ©   (06.07.04 19:05) [9]
Не понял твой пример. Какая разница MDI не MDI. Он что одновременно на 2 разные кнопки сохранить жмет? Так это тогда нужно малтитред приложение и на минимум двухпроцессорной машине. И то клиентская библиотека в очередь поставит сохранения твои. Так что не паникуй - 2 транзакции хватит всегда. А в 80% случаев хватит и одной.


 
GanibalLector ©   (2004-07-07 01:14) [12]

> А в 80% случаев хватит и одной.
Во-во...Согласен.


 
jack128 ©   (2004-07-07 01:48) [13]


> > А в 80% случаев хватит и одной.
> Во-во...Согласен.
да ну вас.. Одна транзакция на чтение - другая на запись - отныне и присна и во веки веков  :-))


 
Deniz ©   (2004-07-07 06:23) [14]

"Ноги, крылья, главное хвост" (с)
Для любого приложения(99%) -> 3(три) транзакции:
1. Длинная читающая.
2. Короткая пишущая.
3. Отчетная читающая.
Одной не хватит, т.к. при таком подходе придется либо CommitRetaining+Refresh делать либо переоткрывать все DataSet"ы, и еще, такая транзакция более нагружает сервер чем read_only.
Двух не хватит, потому как для отчетов, особенно очень длинных, нужна транзакция типа SnapShot и желательно тоже read_only.
А в некоторых редких случаях необходимо более 1 пишущей.


 
Sergey_Masloff   (2004-07-07 09:02) [15]

jack128 ©   (07.07.04 01:48) [13]
Deniz ©   (07.07.04 06:23) [14]
Господа, вспомните все проекты с IB которые вы видели. Подумайте возникали ли в них проблемы с lock conflict или падением производительности сервера связанные с накомплением версий записей при использовании 1 транзакции для всего. Если вы ответите на эти 2 вопроса объективно то вы согласитесь со мной и GannibalLector про 80%.


 
jack128 ©   (2004-07-07 11:35) [16]


> сервера связанные с накомплением версий записей при использовании
> 1 транзакции для всего
дело не в этом а в необходимости переоткрывать все DataSet"ы после коммита. Разве что CommitRetaining, но на старых серверах он тоже приводит к ощутимым тормозам. А если на полуторке, то можно конечно и так.. Но уж коли мы говорим о FIBPlus, то лично мне не напряжно кинуть 2 компонента на датамодуль вместо одного ;-)


 
Deniz ©   (2004-07-07 14:05) [17]

> jack128 ©   (07.07.04 11:35) [16]
> Но уж коли мы говорим о FIBPlus, то лично мне не напряжно кинуть 2 компонента на датамодуль вместо одного ;-)

Так вроде и я про это, тем более что никакого лишнего кода(как в BDE/IBX) писать не надо FIB+ сами все делают, просто выставил параметры всем транзакциям и подключай к ним DataSet"ы, ну может на пару десятков "кликов" больше будет, зато работа по правильному :-)


 
Koala   (2004-07-07 16:10) [18]

статья по работе с 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
_________________



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.036 c
6-1085630866
Wital
2004-05-27 08:07
2004.08.01
учет трафика


4-1087814076
Users
2004-06-21 14:34
2004.08.01
CreateFile для привода CD


1-1090251416
Alex-21
2004-07-19 19:36
2004.08.01
TRegistry


14-1090037247
banderas
2004-07-17 08:07
2004.08.01
Молю о помощи !!!


14-1089979029
pavel_pavel
2004-07-16 15:57
2004.08.01
Билли





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский