"Alexey Popov" wrote ...
Khorsun Vlad wrote:

Тут всего то надо нормально специфицировать транспортный протокол на уровне 
сокета.

   Протокол - и всё ? Ты или оптимист, или бла-бла-бол :)

Давай конкретнее. Например, net клиент юзает напрямую сокет. При этом он 
придерживается некоторого протокола. Так?
Что ещё надо кроме спецификации протокола?

   Почитай src/remote/interface.cpp и src/jrd/why.cpp. На пальцах - клиент
поддерживает свои списки аттачей\тр-ций\запросов\курсоров\блобов, кеширует
результаты выборки, поддерживает представление XSQLDA\XSQLVAR и т.п.

Сделать один раз это нормально и написание клиента для любой платформы будет 
очень простым.

   Займёшься ?

Если говорить о новой платформе, что смысла реализовывать ib api нет. Достаточно написать датасеты, которые напрямую будут работать по сокету с сервером. Это вполне посильная задача для тех, кому это действительно понадобится.

   Это ключевые слова "кому это действительно понадобится".
Есть такие ? Ау, где вы ?!

В идеале надо бы ещё в gds32.dll транспортный уровень абстрагировать с целью 
дать возможность задавить свой транспорт.

   Задавить мы и так могём :) Вопрос в другом, как обычно - смысл где ?
Или ради красоты всё ? :)

Смысл в том что в современном мире хочется больших извращений. Голый TCP, предоставляемый стандартно, не всегда подходит. Например, FB, как часть большого програмно-аппаратного комплекса, хотелось бы больше интегрировать и адаптировать к обстановке. Люди бывают юзают SSH, но это покрывает лишь малую часть всех задач.

   Ничё не понял. О каком конкретном транспорте идёт речь ?

А, ещё мелочь забыл - сетевой сервер сам поднимет
твой новый транспорт ?

Естественно на сервере должна ответная сторона стоять. Например HTTP сервер, 
транслирующий запросы по локальному протоколу к FB.

   См выше про "ау".

   Я вот чего не пойму - ты просто пофантазировать вышел (я совсем не
против, сам грешен) или для чего это всё было написано ?

--
Хорсун Влад

Ответить