|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
kaktus1983Подключение к каждой БД одинаково по времени длится 30-45 сек. А сколько времени длится подключение из ISQL? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 01:16 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
kaktus1983 Softologic, Полностью поддерживаю ваше мнение, Fib+ отличные компоненты, и я даже не знаю альтернатив, несмотря на то, что они уже долго не поддерживаются. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 01:21 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
dennis-r kaktus1983 Softologic, Полностью поддерживаю ваше мнение, Fib+ отличные компоненты, и я даже не знаю альтернатив, несмотря на то, что они уже долго не поддерживаются. Сейчас у меня ровно такая же картина маслом. Прям один в один. Оглядываясь с ужасом на легаси-проекты с сотней датасетов в датамодуле, приходишь к полному переосмысливанию подхода. Теперь она сводится к написанию своей многопотоковой модели фреймворка, но с использованием асинхронно-событийных компонент (для работы с почтой, sip-телефонией, БД в облаке и пр.). И таки да, "велосипедить" свой MVC как то тоже вынуждает общая ситуация. P.S: Однако, подытожу - новичкам сразу в MVC и во всякие многопоточные, да асинхронно-событийные модели все равно нырять рановато - это уже открытое море практически, пусть "в лягушатнике поплавают" для начала :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 01:35 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Внезапно: fbclient. Можно подумать, что ты каждый раз для выполнения какого-нить запроса всю эту цепочку апишных вызовов пишешь. Ага, ага... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 10:16 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
IBExpertМожно подумать, что ты каждый раз для выполнения какого-нить запроса всю эту цепочку апишных вызовов пишешь. Нет, я халявлю, сокращая цепочку до одного isc_dsql_exec_immed2(). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 12:15 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov IBExpertМожно подумать, что ты каждый раз для выполнения какого-нить запроса всю эту цепочку апишных вызовов пишешь. Нет, я халявлю, сокращая цепочку до одного isc_dsql_exec_immed2().Одно дело системная утилита и обертка настроечная для оной, другое софтина кучей гуя, чтоб обслуживать торговлю, например, или медицину. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 12:38 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyдругое софтина кучей гуя, чтоб обслуживать торговлю, например, или медицину. В чём другое? Выше уже упоминались всякие зубодробительные аббревиатуры, где в слое доступа к БД простые запросы, в слое гуя простые контролы, а между ними ходят объекты бизнес-логики, складываемые из запросов на одном конце и раскладываемые по контролам на другом. Да, сначала кажется, что это гораздо сложнее и дольше, но в конечном итоге получается одинаково. Хотя да, кое-как работающий прототип класса фишфака проще сляпать... как фишфак и сляпан, собственно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 12:44 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Нет, я халявлю, сокращая цепочку до одного isc_dsql_exec_immed2(). Да не свисти, даже для этого есть смысл написать простейшую обертку, а не прописывать десяток параметров каждый раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 14:36 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
IBExpertдаже для этого есть смысл написать простейшую обертку, а не прописывать десяток параметров каждый раз. С учётом переползания на новое API у меня есть обёртки для транзакции, статуса и статического буфера. Этого достаточно чтобы код свёлся к database->execute или openCursor. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 14:47 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov у меня есть обёртки для транзакции, статуса и статического буфера. Вот теперь верю. И пафосное "я пишу на голом апи" превращается в банальное "у меня собственные обертки только для необходимого мне функционала". ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 14:56 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
IBExpertпафосное "я пишу на голом апи" превращается в банальное "у меня собственные обертки только для необходимого мне функционала". Обёртка для транзакции это полэкрана, в основном занятые фигурными скобками, а для остального у меня собственные реализации, ибо от того, что "в коробке" меня тошнит. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 15:18 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov от того, что "в коробке" меня тошнит. "Ты просто не умеешь их готовить" (с) Разработчик, способный за разумное время написать свои обертки Database/Transaction/Query над фбшным АПИ, тем более способен настроить фибы и получить от них нужный результат. Вплоть до физического выпиливания ненужного и вредного, по его мнению. И времени у него на это уйдет существенно меньше, чем на изобретение собственного велосипеда. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 17:31 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Это у Димы пунктик такой - у FIBPlus есть фатальный недостаток - их написал не он. (с) Так что надо относиться с пониманием. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 17:35 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Мне всё равно кто их написал, но в них в принципе нет двух вещей, которые я считаю важными для "софтины кучей гуя, чтоб обслуживать торговлю, например, или медицину": 1) Background fetch, который должен устранить тормоза на прокрутке грида; 2) Сброс кэша записей на диск, из-за чего они известны своим "out of memory". PS: В файердаке их тоже нет. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 18:30 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Мне всё равно кто их написал, но в них в принципе нет двух вещей, которые я считаю важными для "софтины кучей гуя, чтоб обслуживать торговлю, например, или медицину": 1) Background fetch, который должен устранить тормоза на прокрутке грида; 2) Сброс кэша записей на диск, из-за чего они известны своим "out of memory". PS: В файердаке их тоже нет. А в Унидаке (и прочих даках) от Деварта? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 19:01 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Нигде нет. Потому что архитектура DB VCL была создана для Windows 3, где мнопоточности не было в принципе, и с тех пор не пересматривалась. PS: А кэш резал-сета на диске был в BDE, но с тех пор это потерянная технология. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 19:04 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov 1) Background fetch, который должен устранить тормоза на прокрутке грида; Dimitry Sibiryakov 2) Сброс кэша записей на диск, из-за чего они известны своим "out of memory". ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 19:07 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Нигде нет. Потому что архитектура DB VCL была создана для Windows 3, где мнопоточности не было в принципе, и с тех пор не пересматривалась. Если это так, почему вам не запилить свои даки, с конкретным конкурентным преимуществом, актуальным ныне ? И будет эдакий пассивный доход в итоге. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 19:08 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Я же, кажется, русским по белому сказал, что главная проблема на этом пути - архитектура VCL... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 19:29 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Я же, кажется, русским по белому сказал, что главная проблема на этом пути - архитектура VCL... Вы из Великих. А они знают альтернативные пути, я полагаю :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 19:32 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Имхо. По-быстрому какое-нибудь говно (одноразовая программа) накодить - лучше фиблюсов как бы и нет. По-быстрому объяснить студенту, как говнокодить с фаербердом, показать редактируемый датасет с раздельными транзакциями - тоже фиблюс. ... А из своего старого кода редактируемые датасеты практически удалены, используются три компонента: TpFIBDataBase, TpFIBTransaction да TpFIBQuery, да и то не в "чистом" виде, а класс-обертка либо интерфейс. То есть, пофиг уже, что импользовать - фибы, айбиикс или уибы, или вообще самопальщину как у ДС... Но вот новичкам без волшебных DAC-ов не обойтись, вернее, они не станут использовать фаерберд без простых и доступных "драйверов"... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 21:48 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
SoftologicА они знают альтернативные пути, я полагаю :) Ну так вон выше же ясно написано что это за альтернатива: микро-обёртки для нужного функционала и полное игнорирование db-aware куска. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 22:15 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov ...и полное игнорирование db-aware куска. Да был бы он попроще, этот кусок. Наследник TCustomDataSource (источник данных гридов от DevEx, "режим провайдера") написать свой - работы требуется от нескольких минут, а справиться со всеми абстрактными загибами дельфийского TDataSet - скучать начинаешь уже на этапе изучения. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2021, 22:31 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov 1) Background fetch, который должен устранить тормоза на прокрутке грида; Я сейчас местами в качестве грида использую широко известный в узких кругах VirtualTreeView. На данный момент пока в основном потоке использую подгрузку данных из БД ровно того количества записей, которые помещаются в видимые пределы контрола VT + несколько записей до и несколько после (что то вроде кэша в памяти получается). В этом мне помогает событие OnAfterPaint. В общем, я подгружаю ровно то, что хочет видеть пользователь, и немного еще. В общем, оно и так не тормозило никогда доселе (выкачать с сервака 20-50 записей единовременно не проблема), но в идеале мне ничего не мешает эту подгрузку засунуть в другой поток. Чтоб уж наверняка все было максимально "антифризно" и мягко. P.S: Поскольку порядок узлов мне известен, мне не составит труда вычислить первый и последний видимые узлы: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9.
Ну а дальше, вычислить несколько предшествующих и последующих - дело техники. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 01:39 |
|
Слишком долгое подключение и выполнение первого запроса.
|
|||
---|---|---|---|
#18+
Softologic На данный момент пока в основном потоке использую подгрузку данных из БД ровно того количества записей, которые помещаются в видимые пределы контрола VT + несколько записей до и несколько после (что то вроде кэша в памяти получается). В этом мне помогает событие OnAfterPaint. В общем, я подгружаю ровно то, что хочет видеть пользователь, и немного еще. Короче, это нечто похожее на "Background fetch, без тормозов на прокрутке грида" для меня решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 02:48 |
|
|
start [/forum/topic.php?fid=40&msg=40106528&tid=1559904]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
161ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
others: | 240ms |
total: | 520ms |
0 / 0 |