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




Вниз

Базы данных и модемные соединения 


Alexandr   (2001-12-07 08:58) [0]

Люди, почитал я тут ваши треды и сабжу. И вот что хочу заметить
Не используйте никогда двухзвенку при модемном соединении - за%%%хаетесь. Эта связка абсолютно не подходит по идеологии.
Можно использовать
1) MIDAS
2) BSS, Taxxi Communicator (www.demo.ru)
3) Terminal Server
4) WEB и даже E-mail
и пр. варианты трехзвенок.



Ura   (2001-12-07 10:36) [1]

Alexandr ©
Раскажи кто будет проверять права входа при коннекте, при использованиее мидас.
И как решить проблему упаковки тогда?
SQL -> Zip -> Client connekte-> Client Server -> Unzip -> SQL ?
Теряется элемент транзакции...



sender   (2001-12-07 12:44) [2]

Кто-нибудь объяснит за счет чего трехзвенка может глобально сократить сетевой трафик
Ведь передается тот же объем данных как и в обыкновенном клиент - сервере.



NLO   (2001-12-07 12:46) [3]

а в чем собственно проблема



Ura   (2001-12-07 13:03) [4]

Sender
При Мидасе можно самому более гибко управлять данными.



Romkin   (2001-12-07 13:04) [5]

2sender
1. Данные передаются более плотно (в двоичном пакете, а не в строках)
2. Отсутствует передача служебной информации (транзакции, и тд) - ее много
3. и тд
Результат: есть форма, открывающая семь таблиц (ну надо было...), стандарт трафика между клиентом и сервером приложений - 28К, между сервером приложений и IB (через BDE) - 1.2 Mb/. Через IBX должно быть меньше, но не мерил
2Ura
Права на вход при коннекте обычно проверяет WinNT, это обычное удаленное соединение. А дальше соединяешся с сервером и передаещь ему имя пользователя/пароль (можно для IB, можно свой, по которому сервер найдет пароль для базы). Проблем нет. При использовании SocketServer легко пишется перехватчик пакетов, в котором делай, что хочешь (PGP, LZW, ;-)))



Mick   (2001-12-07 13:29) [6]

Если данные и передаются в двоичном виде то стало быть мопед их жмет меньше чем в варианте со строками



Ura   (2001-12-07 13:30) [7]

Romkin ©
Ты лучше напиши кто отследит обрыв связи и завершение транзакции. И кокова должна быть скорость- у нас в ТЗ сейча заявлено связь село(глухое)-> город.
Я думаю сейчас писать на сокетах или на мидасе или просто слиент-сервер.
Обмен данных от 1 до 10 метров? Мораль - надо дробить... Или загнемся каждый раз сначало...



Romkin   (2001-12-07 14:00) [8]

2Mick
Верно, я привел чистый размер, SQL сжимается эдак на 80-90%,
MIDAS - 40 иногда 60% но выигрыш все равно на порядок
2Ura приготовся к крикам "Программа не работает/модем не включается/не могу соединится (это убрали звук, а телефон не работает - линия полетела) и тд
Лучше всего интранет-технологии: ставишь интернет-сервер, и удаленные клиенты работают из браузера. Там путей много - WebMIDAS, ASP, IBPerl, ISAPI и тд. Реализовать можно практически все, даже работу с графикой.
Клиент-сервер только в крайнем случае, за соединение по MIDAS придется платить - $499 per server, но при нормальном проекте это мало, избежать этого можно, используя SocketServer, но его придется переписать



Mick   (2001-12-07 14:06) [9]

Два сервера и зашедуленная репликация в таких случаях помогает больше.



Ura   (2001-12-07 14:12) [10]

Romkin ©
Поподробнее о intanet.
Это получится HTML->PHP?->BD_Local->PHP?->DB_Server?
Кто ответит за подтверждение приема данных? Самому писать?



Alexandr   (2001-12-07 14:16) [11]

2Mick:
А репликация по можемному соединению
Это думаешь просто?
Да может оказаться посложнее трехзвенки.

А что скорость?
для MIDAS
Все таблицы хранятся локально;
обновлять с сервера можно по таблице(запросу) или по строке в таблице(запросе);
связь с сервером как в cachedUpdates-выплюнул, дождался ответа от сервера, что все нормально и все...
для Terminal Server, baikonur, WEB
вообще клиенту только интерфейс передается- проблем никаких.
Посмотрите, все-таки, в сторону www.demo.ru.
А канал в этом случае вообще может быть чуть ли не 2400бит



Ura   (2001-12-07 14:17) [12]

Mick
Серваки разные IB, MySQL - local, Oracle - server
Может их можно поженить через ... ?



Romkin   (2001-12-07 14:22) [13]

Что значит подтверждение приема? По-моему, это проблема интернет-сервера, принимать запросы и отсылать страницы с результатом.
Хорошо работает связка ASP -> ADO -> OLEDB -> IB6 (IIS), IBPerl не пробовали, но скоро будем. Для PHP не знаю, как подсоединится к серверу
кстати, репликация это хорошая идея, но практически приходится делать репликатор вручную



Mick   (2001-12-07 14:22) [14]

На одном конце работает сервис, который по запросу с другого конца проволоки делает файлы для репликации потом жмет их превращая в пакет. Далее этот пакет по каналу хоть в 2400 тянется на другую сторону (реализуйте докачку - будет докачка). Сервис на этой стороне рапаковывает все и сливает в местный сервер (пусть даже и отличный от того что на другом конце).
Все это из реальной жизни.



Alexandr   (2001-12-07 14:23) [15]

не забывайте, что для модемной связи основным свойством является внезапный обрыв связи и ненормированно неустойчивый траффик.
И от этого необходимо отталкиваться.
все двухзвенки тут загнутся (точнее загнуться юзеры).
А правльно сделанные трехзвенки, даже не почувствуют кратковременного затыка или даже разрыва.



Alexandr   (2001-12-07 14:25) [16]

2Mick
Ага, только это односторонняя репликация. Это самый простейший случай.
Не надо обобщать...



Mick   (2001-12-07 14:27) [17]

А препятствия к двусторонней репликации по такой схеме в чем?



Alexandr   (2001-12-07 14:37) [18]

дык в синхронизации данных.
Это очень сложная и серьезная тема.
Ей посвящено немало трудов.
И в общем случае двусторонняя автоматическая позрачная репликация между несколькими серверами нереализуема.
В каждом случае Будут свои ограничения, проблемы которые сможет решить только администратор, свои (иногда значительные) накладные расходы в базе данных (даже специально спроекированной с учетом репликации)



Ura   (2001-12-07 14:53) [19]

Синхронизатор писать самому - прибив его или к итранет или к своим прогам!
А не очень хочеться... Будем думать.



Alexandr   (2001-12-07 14:55) [20]

думай думай.
Я все сказал



Ura   (2001-12-07 15:37) [21]

Всем спасибо. Подыму тему недели через 2-3... После первых попыток.
Поделюсь впечатлениями...



marat   (2001-12-10 07:12) [22]

Мы вот используем трехуровневую архитектуру для нашего проекта.
Получается очень даже хорошо!!!

1. Сервер базы данных с возможностью хранения метаданных.
В качестве СУБД используется Interbase или Oracle.
Стандартная клиентская программа взаимодействует с СУБД на основе SQL запросов.

2. Сервер приложений обеспечивает базовый функционал работы с типами объектов,
коллекциями объектов, документами и отчетами.
Система содержит ряд встроенных типов объектов и может быть расширена.
Но основе имеющих типов объектов могут быть созданы коллекции объектов.
Реализован специальный набор встроенных объектов, таких как документы и отчеты,
которые имеют более расшиеренный набор возможностей.

3. Стандартная клиентская программа (Object Explorer) используется в
любых прикладных приложениях и обеспечивает единный интерфейс пользователя.
Клиентская программа обеспечивает возможность просматривать иерахический список объектов,
добавлять, удалять и редактировать.
В ней нет кода специфичного для какого либо прикладного приложения.
Реализован многочисленный набор представлений таких как:
- Таблица объектов
- Документ
- Столбчатая диаграмма
- Универсальный редактор объекта (Object inspector)
- HTML/XML просмотрщик для отображения отчетов и печатных форм документов.
- и другие представления

3.1. Клиентская программа взаимодействует с сервером приложением,
на основе HTTP протокола (через интеренет).
Это позволяет организовать удаленную работу любого пользователя хоть с другого континента.
"Доступность программы в любое время в любом месте".

3.2. Для обеспечения секретности доступа реализован метод шифрования/дешифрования пакетов данных
передаваемых по каналам Internet. В алгоритмах шифрования/дешифрования использованы надежные
алгоритмы (симметричные/несиметричные) с большой длиной ключей
что обеспечивает хорошую защиту передаваемой информации.

3.3. Реализована механизм для установки и обновления клиентской программы Download Manager.
Эта программа выполнено как специальное окно в которой находится список задач и во время запуска
выполняется сравнение версии программы находящейся у клиента и последней версии на сервере ...

ну и т.д. ...... продолжать можно долго




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




Наверх





Память: 0.77 MB
Время: 0.063 c
14-28538          Внук                  2001-11-12 17:09  2002.01.10  
Internet Explorer 6.0


1-28474           Delphig               2001-12-22 02:32  2002.01.10  
Подсветка синтексиса? Например в HTML редакторе.


3-28410           Don                   2001-12-07 16:01  2002.01.10  
Вывод текста в заголовке StringGrid-а вертикально


4-28558           Viking                2001-11-08 19:44  2002.01.10  
Сворачивание окна


3-28444           Kozhanov              2001-12-07 12:57  2002.01.10  
Как