![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как работать с удалённой БД? [D7, IB6.x]
keymaster © (2003-06-05 15:33:00)1)
Есть Инет. в Инете есть Сервер. На Сервере стоит Interbase
на том же Сервере, находиться база данных(gdb)
2)
Есть комп, подсоединён к инету. На нём программа для работы с базой. Вопрос: КАК? т.к. я не имею об это м никакого понятия.
Буду благодарен как за советы, так и за полезные ссылки.
Sergey Masloff (2003-06-09 22:06:00) [1]Reindeer Moss Eater (09.06.03 11:14)
>Трехзвенка никогда не решала и не решает проблему тонкого >канала. У нее совсем другая задача.
Еще как решала. У нас несколько тысяч пользователей работает (ну полторы-две уж точно), так что мне можешь не рассказывать. По крайней мере тем что позволяет применять компрессию передаваемых данных. И частично снимается проблема обновлений которые все же по сети гонять нужно.
Reindeer Moss Eater (2003-06-09 11:14:00) [2]Трехзвенка никогда не решала и не решает проблему тонкого канала. У нее совсем другая задача.
Nucl (2003-06-09 10:31:00) [3]По IP адресу конектишься к серваку, строка коннекта будет что-то вроде 173.233.243.12:/var/db/kadastr/kadastr.gdb
базу лучше дерьжать на юнихе, фаерволишь порт 3050 и все ок.
и никаких серверов приложений не нужно.
я для хождения использую FIB компоненты - рулез для интербейза
Sergey Masloff (2003-06-07 23:07:00) [4]MsGuns ©
>Если БД ТОЛЬКО ЧИТАЕТСЯ (ну, % на 99,9), то метод "локалки" (п.3050) канает на ура.
Посмотри SQL-монитором что делает IB-клиент при работе. А еще лучше посмотреть трафик по каналу. Что видим - МАССУ очень коротких сеансов обмена (ну там обмен метаданными). Когда это в локальной сети это незаметно по времени, но когда начинаются обращения к сети будут ОЧЕНЬ СЕРЬЕЗНЫЕ тормоза на каждый Prepare и на многое другое. В случае сервера приложений этот трафик остается в локальной сети.
MsGuns (2003-06-06 20:37:00) [5]Опять и котлеты и мух в одну тарелку ?
Если БД ТОЛЬКО ЧИТАЕТСЯ (ну, % на 99,9), то метод "локалки" (п.3050) канает на ура. Если же надо типа вводить офигенными порциями, то что мешает использовать буферизацию (и совсем не обязательно трехзвенку) ?
Anatoly Podgoretsky (2003-06-06 20:11:00) [6]Desdechado © (06.06.03 16:31)
Причины по которым так делать не стоит я знаю, вопрос был про дыры.
NickBat (2003-06-06 16:35:00) [7]Работать с удаленной базой лучше через ВЕБ интерфейс.
Desdechado (2003-06-06 16:31:00) [8]2 Anatoly Podgoretsky © (05.06.03 16:37)
прямое присоединение к удаленному серверу на слабых каналах к хорошему не приводит - и соединение порваться легко может (а после восстановления надо все сначала делать, что не сохранил), и траффик может канал загрузить так, что кофе пить у компа ведрами можно. Да много еще тонкостей
Sergey Masloff (2003-06-05 22:11:00) [9]keymaster ©
>Как написать сервер приложений?
Руками+головой. Сервер приложений это достаточно широкое понятие вообще-то. Ну посмотри примеры MIDAS из поставки Delphi например. Но это только один из очень многих вариантов.
keymaster (2003-06-05 21:24:00) [10]Повторю вопрос:
Как написать сервер приложений?
Sergey Masloff (2003-06-05 17:21:00) [11]Anatoly Podgoretsky © (05.06.03 16:37)
>И мне интересно, что у ИБ большие дыры в этом плане?
Не знаю. Так как и без дыр это способ тупиковый то работать так не пытался (ну, если честно, пытался в юные годы ;-))))
Хотя навскидку можно попробовать создать EXTERNAL TABLE из одного столбца CHAR(1) и соответсвенно побайтово туда вписать что угодно. Например файл MY_SUPER_VIRUS.exe ;-) Или MY_EVIL_UDF.dll в которой UDF которая в свою очередь гадит что-то. Вобщем, придумать можно многое.
keymaster (2003-06-05 16:51:00) [12]Мне интересен П1.
Но не знаю как реализовать.
Никогда не писал серверов приложений...
Anatoly Podgoretsky (2003-06-05 16:37:00) [13]И мне интересно, что у ИБ большие дыры в этом плане?
Почему не стоит это мне ясно.
Sandman25 (2003-06-05 16:06:00) [14]Возможно, вообще не стоило упоминать пункт 3.
Danilka (2003-06-05 16:03:00) [15]Sergey Masloff (05.06.03 15:57)
Я бы после этих слов точно попробовал п3. Просто из интереса - какие могут быть проблемы.
:))
Sergey Masloff (2003-06-05 15:57:00) [16]keymaster ©
1) Пишешь сервер приложений. Ставишь его на компьютер на сервере. Работаешь с сервером приложений по HTTP
2) Пишешь WEB-интерфейс к базе. Работаешь по HTTP из браузера
3) (но учти-это садомазохизм) открываешь на сервере 3050 порт и работаешь как в локалке. Сразу скажу-так делать нельзя. Описывать почему слишком долго. Поверь, проблем которые огребешь при таком способе будет на два порядка больше чем выгоды от кажущейся простоты.