Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Зачем нужны многозвенки ?


Страницы:   1 2 3 4 5 6

Juice ©   (2005-10-28 19:16:00) 

Это серьезный вопрос, я без шуток :)


Piter   (2005-10-31 11:35:00) [61]

Anatoly Podgoretsky ©   (31.10.05 9:14) [46]
Ты не представляешь, сколько таких прослоек


откуда такая уверенность?

Reindeer Moss Eater ©   (31.10.05 8:22) [45]
Piter, стек протоколов по которым ты общаешся с сервером - это тоже отдельная программа


стек протоколов - это программа? :)

Я знаю о промежуточных звеньях.

По-моему, звено - это программа, так сказать фильтр, ТВОЯ программа, которая стоит между непосредственно базой данных и клиентским приложением.

То, о чем ты говоришь - НЕ ТВОИ программы, поэтому и не являются звенов ТВОЕЙ цепи.

Если бы ты изобрел для какой-то базы данных некое аппаратное устройство - то это тоже было бы звеном твоей цепи.

А иначе что такое многозвенка?

Опять же рассмотрим программу, о которой ты упоминал - сидит на порту на сервере, преобразует данные и пеерправляет на порт сервера.

И в каком случае ее можно считать звеном, а?

Если она значит просто сжимает трафик - это значит не многозвенка, ок.

А если она допустим удаляет символы перевода строки #13#10, которые ошибочно посылает клиент (ну вот такое решение сделали) - то это звено?

А если она расширяет SQL, допустим поддерживает комманду LIMIT X, которая ограничивает число возвращаемых результатов в SELECT'е - то это как, звено уже?

А если эта программа реализует некий язык программирования, что-то типа хранимых процедур (допустим, сервер хранимые процедуры не поддерживает) - то это уже звено?

А если она каким-то образом бизнесс логику применяет - это звено?

Где грань?

Я уже ответил, что звено - это любая ТВОЯ программа между сервером и клиентом. И не важно что она делает. Имхо, так.

По умолчанию, трехзвенка вообще ничего не делает, просто пропускает данные.

Вполне может быть другое определение - слушаю.


Polevi   (2005-10-31 11:14:00) [62]

ктож его на сервер пустит :)


Anatoly Podgoretsky   (2005-10-31 11:00:00) [63]

Пусть задает вопрос используя толстый клиент :-)


Polevi   (2005-10-31 10:57:00) [64]

автор сабжа задал вопрос используя тонкий клиент многозвенной системы


Anatoly Podgoretsky   (2005-10-31 09:14:00) [65]

Piter ©   (30.10.05 22:18) [35]
Ты не представляешь, сколько таких прослоек, пока сигнал от клиента дойдет до сервера, но это не дает основания называть это многозвенкой, это понятие логическое, а не физическое.


Reindeer Moss Eater   (2005-10-31 08:22:00) [66]

Piter, стек протоколов по которым ты общаешся с сервером - это тоже отдельная программа.
И маршрутизатор стоящий между вами это то же отдельная программа (даже несколько)
Только все это не звенья многозвенки в том понимании в каком о ней говорят в этом форуме.
Иначе с таким же успехом розетка rj45 становится звеном многозвенной цепи.


Piter   (2005-10-31 01:02:00) [67]

Reindeer Moss Eater ©   (30.10.05 23:57) [36]
Да например шлюз, работающий на уровне TCP/IP


да, но это ведь отдельная программа, верно? Верно...

Это и есть как бы звено ТВОЕЙ ЦЕПОЧКИ. Третье звено :)

Reindeer Moss Eater ©   (30.10.05 23:57) [36]
Либо я начну утверждать что любой коммутатор/свитч/маршрутизатор между сервером и клиентом это тоже звено многозвенки


если бы ты в процессе написания базы сделал бы маршрутизатор - то это имхо и было бы звеном, несомненно.

Reindeer Moss Eater ©   (30.10.05 23:57) [36]
Нету у многозвенных приложений задачи экономии трафика. Нету и все


нету и все. Хех... Нету и все...

Авторитетно! Ничего не скажешь :)
Это тебе Билли Гейтс сказал?

Reindeer Moss Eater ©   (31.10.05 0:13) [39]
Ну а я говорю, что трехзвенка не решает проблемы тонких каналов сама по себе


САМА ПО СЕБЕ трехзвенка, имхо, вообще никаких проблем не решает :)


Zacho   (2005-10-31 00:49:00) [68]

Reindeer Moss Eater ©   (31.10.05 0:39) [41]
Обрывы и плохие каналы - они не обязательно медленные каналы.


Вот и консенсус :) Похоже, мне сразу нужно было указать только ненадёжные каналы, не приплетая медленные, и спора бы не было :)

Reindeer Moss Eater ©   (31.10.05 0:40) [42]
Я знаю для чего она предназначена и активно её испорьзую сам.


Да я, собственно, это не столько тебе предлагал, сколько остальным интересующимся.


Reindeer Moss Eater   (2005-10-31 00:40:00) [69]

которые могут подробно и аргументированно объяснить зачем нужна 3-х звенка

Я знаю для чего она предназначена и активно её испорьзую сам.


Reindeer Moss Eater   (2005-10-31 00:39:00) [70]

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


Zacho   (2005-10-31 00:35:00) [71]

Reindeer Moss Eater ©   (31.10.05 0:13) [39]
Ну а я говорю, что трехзвенка не решает проблемы тонких каналов сама по себе


Полностью согласен.

> Reindeer Moss Eater ©   (30.10.05 16:21) [29]
> Это заблуждение

А вот с этим - нет. Проблемы обрывов решает ? Решает. Так в чём же заблуждение ?

Но, в общем, я не имею особого желания спорить на эту тему. Как уже говорил, сам я этим занимался давно и подробности плохо помню.
А если есть желание пообщаться с людьми, которые могут подробно и аргументированно объяснить зачем нужна 3-х звенка именно для решения проблем тонких каналов - стоит спросить в e.p.i, там такие люди есть. Да и здесь, возможно, найдутся. Вот, Сергей Маслов, например.


Reindeer Moss Eater   (2005-10-31 00:13:00) [72]

В основном, с помощью 3-х звенки решаются проблемы с обрывами соединения.

Ну а я говорю, что трехзвенка не решает проблемы тонких каналов сама по себе.
Никакого противоречия.


Reindeer Moss Eater   (2005-10-31 00:12:00) [73]

Вот более конкретный пример сжатия данных в двузвенной системе:

1.Рабочая станция с клиентом Оракла 172.1.1.1
2.Сервер Оракл 172.1.1.2

На клиента ставим сервис, который слушает порт 1522 и все что выслушает там жмет и посылает на тот же порт хоста 172.1.1.2
На 172.1.1.2 такой же сервис все что принял с 1522 расжимает и посылает в порт 1521 локальной машины, а все что прочитал оттуда шлет сжимая обратно на порт 1522 хоста 172.1.1.1

Клиент Оракла настраивается на localhost порт1522

Получили в итоге:
двузвенная Клиент-серверная система со сжатием потока данных.


Zacho   (2005-10-31 00:11:00) [74]

Reindeer Moss Eater ©   (30.10.05 21:56) [34]

Дело не только и не столько в компрессии. В основном, с помощью 3-х звенки решаются проблемы с обрывами соединения. Я же специально написал "медленным и ненадёжнымканалам (например, dial-up)."


Reindeer Moss Eater   (2005-10-30 23:57:00) [75]

Да например шлюз, работающий на уровне TCP/IP.
Он ни малейшего понятия не имеет ни о сервере БД ни о клиенте.
И он не может считаться звеном многозвенной системы.
Он просто жмет поток и все.
Либо я начну утверждать что любой коммутатор/свитч/маршрутизатор между сервером и клиентом это тоже звено многозвенки.

Нету у многозвенных приложений задачи экономии трафика. Нету и все.
Никогда не было таких задач.

А все что вы прикручиваете к своим трехзвенным системам точно так же прикручивается к двузвенным.


Piter   (2005-10-30 22:18:00) [76]

Reindeer Moss Eater ©   (30.10.05 21:56) [34]
Можно привести пример и чисто программного решения компрессии в двузвенных приложениях


например???

Если сама база данных не поддерживает компрессии?

По любому будешь ставить некую прослойку, разве нет? А это и суть есть трехзвенка.


Reindeer Moss Eater   (2005-10-30 21:56:00) [77]

Компрессия данных в трехзвенных приложениях - это не фича непосредственно трехзвенки.
Я, например, могу соединиться диалапом с сервером БД и у меня в двузвенном приложении будет компрессия данных. Мопед будет жать их.
Это только один пример.
Можно привести пример и чисто программного решения компрессии в двузвенных приложениях.


Reindeer Moss Eater   (2005-10-30 21:49:00) [78]

Допустим в приложении есть форма с гридом.
Если приложение двузвенное, на клиента в грид приедет Х байт данных.
Если приложение трехзвенное, в грид приедет примерно то же самое кол-во данных.

Вы скажете, что в трехзвенках у вас нет гридов?
Я скажу что и в двухзвенке гриды не обязательны.

Вы скажете, что прикрутили компрессию данных в трехзвенке?
Я скажу, что и к двухзвенке прикрутить можно.

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


Piter   (2005-10-30 21:37:00) [79]

Sergey Masloff   (30.10.05 21:24) [31]

а каким образом используете для этой цели? Как я написал? Или чего еще?


Sergey Masloff   (2005-10-30 21:24:00) [80]

Reindeer Moss Eater ©   (30.10.05 16:21) [29]
>>Главное, что 3-х звенка с успехом используется именно для решения >части >проблем тонких каналов.

>Это заблуждение

...А мужики то и не знают ;-) Мы вот пользуем для этой цели именно. Уже много лет ;-))) Вроде полет нормальный. Просто не знали что оно не для этого ;-)


Страницы:   1 2 3 4 5 6

Наверх

Титульная страница Поиск, карта сайта Написать письмо