Страница 1 из 2

Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 14:00:13
mirk
Synapse и lnet уже давно не обновляются, TSocketServer помечен DEPRECATED :cry:
Какую библиотеку лучше использовать для сетевого взаимодействия?

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 14:14:25
Vadim
mirk писал(а):Какую библиотеку лучше использовать для сетевого взаимодействия?

Для начала нужно составить список задач, которые должна выполнять библиотека. Причём задачи должны быть чётко сформулированы, без неоднозначности толкования. Искренне надеюсь, что цель "взаимодействия" у Вас уже точно так же чётко сформулирована. ;-) И лишь только после этого можно подбирать себе библиотеку, которая выполняет все поставленные задачи. Или спросить здесь, если Вы такой не нашли. ;-)

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 14:26:58
mirk
Как минимум хочется TCP и UDP сервер с клиентом.
Ну и было бы замечательно увидеть поддержку TLS.

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 14:41:57
Vadim
Synapse отлично подходит. И хотя там в классах явного слова "server" нет, но его сокет может как передавать данные, так и слушать какой-нибудь порт. Причём и TCP и UDP...

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 14:56:34
mirk
Synapse находится в анабиозе.
Хочется использовать то, что развивается и поддерживается.

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 15:00:38
Vadim
mirk писал(а):Synapse находится в анабиозе.

Это не тоже самое, что и "не работает". Надеюсь Вы это понимаете?

Добавлено спустя 2 минуты 20 секунд:
mirk
На всякий случай, по поводу термина "развивается". :-D В подавляющем большинстве случаев - это исправление обнаруженных косяков. Какие-то новые, принципиальные вещи при этом появляются крайне редко. ;-)

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 15:04:43
alexs
mirk писал(а):Synapse находится в анабиозе.

В нём просто всё работает.

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 15:41:29
mirk
Vadim писал(а):На всякий случай, по поводу термина "развивается". :-D В подавляющем большинстве случаев - это исправление обнаруженных косяков. Какие-то новые, принципиальные вещи при этом появляются крайне редко. ;-)

Прошло более 6 лет с последнего релиза - даже крайне редкие вещи уже становятся актуальными.
А если наткнешься на баг, то что делать?

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 15:51:31
Vadim
mirk писал(а):А если наткнешься на баг, то что делать?

Сообщите сюда, обсудим что с багом делать.
Хочу только предупредить - говорить надо конкретно, а то вот Вы пока только капризничаете. :-) Библиотека Synapse то работает и работает нормально. Вы ведь пока что ни одного бага там не нашли, не так ли? Следовательно, исправлять там ничего не нужно.Следовательно, о каком тогда развитии может идти речь, в какую сторону развиваться? ;-)

Добавлено спустя 12 минут 8 секунд:
На всякий случай:
Кое какие изменения в коде Synapse происходят здесь:
https://sourceforge.net/p/synalist/code ... ree/trunk/

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

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 16:24:55
mirk
Vadim писал(а):Следовательно, исправлять там ничего не нужно.Следовательно, о каком тогда развитии может идти речь, в какую сторону развиваться?

Да вот например поддержка авторизации SNMPv3 уже вполне актуальна. Так же интересна фича с HTTP редиректами. А если бы еще интерпритировался JS - вообще сказка. Можно еще вспомнить про поддержку других протоколов (как минимум SCTP).

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 16:40:59
Vadim
mirk
Попробуйте через sf.net связаться с разработчиком.

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 18:14:42
mirk
Можно ли в Synapse сделать многопоточный TCP сервер?
Т.е. чтобы под каждое соединение создавался отдельный поток.

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 18:56:32
Vadim
mirk писал(а):Можно ли в Synapse сделать многопоточный TCP сервер?
Т.е. чтобы под каждое соединение создавался отдельный поток.

Неправильная формулировка. :-D
Не в Synapse, а с помощью Synapse. Многопоточное приложение опирается на TThread (если Вы, конечно, не любитель низкоуровневой организации потоков :-) ), а в пакете этот класс ни разу не упоминается. Значит Вам нужно создать свой класс, куда включаете класс из Synapse и класс TThread. Современный TThread вообще позволяет работать с потоком не создавая переменную этого типа. Так что в принципе всё просто. Естественно при главном условии, которое я уже Вам озвучивал в своём первом посте. ;-)

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 30.08.2018 19:07:17
Ichthyander
mirk писал(а):Можно ли в Synapse сделать многопоточный TCP сервер?
Т.е. чтобы под каждое соединение создавался отдельный поток.

https://forum.lazarus.freepascal.org/in ... 024.0.html

Re: Библиотека для сетевого взаимодействия

СообщениеДобавлено: 31.08.2018 09:43:40
mirk
Vadim писал(а):Неправильная формулировка. :-D
Не в Synapse, а с помощью Synapse.

Нормальная формулировка.
Если Synapse не позволяет этого делать, то это не делает формулировку неправильной :lol:

Ichthyander писал(а):https://forum.lazarus.freepascal.org/in ... 024.0.html

Спасибо, похоже на то что мне надо.
Только слегка переусложнено.