Медленная работа с БД через интернет из клиентского прилож.
Модератор: kdv
Медленная работа с БД через интернет из клиентского прилож.
Здравствуйте уважаемые форумчане,
Возникла следующая проблема:
появилась необходимость работы с БД (FireBird 2) чрез интернет. Пока база стояла в локальной сети - все было нормально, а теперь операции (INSERT/SELECT/UPDTE) из клиентского приложения (IBX) выполняются безбожно долго.
Если существуют какие либо способы оптимизации как на стороне клиента как сервера подскажите пожалуйста, а то что то совсем тяжко работать.
Возникла следующая проблема:
появилась необходимость работы с БД (FireBird 2) чрез интернет. Пока база стояла в локальной сети - все было нормально, а теперь операции (INSERT/SELECT/UPDTE) из клиентского приложения (IBX) выполняются безбожно долго.
Если существуют какие либо способы оптимизации как на стороне клиента как сервера подскажите пожалуйста, а то что то совсем тяжко работать.
Прошу прощение но не все понял.WildSery писал(а):Сжатие данных, широкий канал, жёсткая оптимизация пересылаемых туда-сюда данных, кэширование на клиенте. И "выбор ползателей" - терминалка.
Значит что касается канала, кэширования изменений - понятно.
Что касается сжатия данных, жесткой оптимизации, и последнее - можно хотя бы чуточку поподробнее чтобы примерно понять куда плыть.
У тебя вообще через как подключено - VPN? Сжатие данных - ZeBeDe кажись это делает.
Оптимизация - это я про запросы и работу клиента. Скажем, вместо select * from table делать только select first 5 * from table (сколько для начального показа надо), подгружать только необходимое. Никаких лишних данных или вычисляемых сервером полей (если есть возможность), только то, без чего не обойтись.
Терминальный сервер ресурсов сети ест мало, и это удобный способ работать через интернет на удалённом сервере.
Есть и ещё вариант - клиента делать с веб-мордой. Тебе не подойдёт, поскольку как я понял, уже готовое приложение, перепись отнимет много ресурсов.
Оптимизация - это я про запросы и работу клиента. Скажем, вместо select * from table делать только select first 5 * from table (сколько для начального показа надо), подгружать только необходимое. Никаких лишних данных или вычисляемых сервером полей (если есть возможность), только то, без чего не обойтись.
Терминальный сервер ресурсов сети ест мало, и это удобный способ работать через интернет на удалённом сервере.
Есть и ещё вариант - клиента делать с веб-мордой. Тебе не подойдёт, поскольку как я понял, уже готовое приложение, перепись отнимет много ресурсов.
Совершенно верно VPN. Про ZeBeDe поглядим. Насчет веба конечно поздновато, приложение готово. Начет оптимизации подумаем. Но что самое интересное довольно большую нагрузку дают INSERT и UPDATEWildSery писал(а):У тебя вообще через как подключено - VPN? Сжатие данных - ZeBeDe кажись это делает.
Оптимизация - это я про запросы и работу клиента. Скажем, вместо select * from table делать только select first 5 * from table (сколько для начального показа надо), подгружать только необходимое. Никаких лишних данных или вычисляемых сервером полей (если есть возможность), только то, без чего не обойтись.
Терминальный сервер ресурсов сети ест мало, и это удобный способ работать через интернет на удалённом сервере.
Есть и ещё вариант - клиента делать с веб-мордой. Тебе не подойдёт, поскольку как я понял, уже готовое приложение, перепись отнимет много ресурсов.
Ну вобщем то да, хотя попробую разделить запросы на вставку и рефреш меседжами шоб понять точно на че грешить.WildSery писал(а):Рефреш грида? (перезапрос данных, т.е.)connor74 писал(а):довольно большую нагрузку дают INSERT и UPDATE
И ещё хотел бы уточнить:
- может ли замедлять работу предположим транзакции с корявыми параметрами?
- может ли ускорить работу FIBPlus?
Смотря еще какие данные вставляешь - может ты большие блобы гоняешь?connor74 писал(а): Ну вобщем то да, хотя попробую разделить запросы на вставку и рефреш меседжами шоб понять точно на че грешить.
например с параметром waitconnor74 писал(а): И ещё хотел бы уточнить:
- может ли замедлять работу предположим транзакции с корявыми параметрами?
не знаю, какой функционал в IBX сейчас, а FIBPlus позволяет рефрешить изменяемую строку без перезапроса всего набораconnor74 писал(а): - может ли ускорить работу FIBPlus?