Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring integration, сокеты и многопоточность / 5 сообщений из 5, страница 1 из 1
10.01.2017, 11:22
    #39381295
ivanra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring integration, сокеты и многопоточность
Необходимо подготовить сервис, который будет слушать определенный сокет, читать из него строки и выдавать в ответ другие строки. Строки pascal-формата (ByteArrayLengthHeaderSerializer).
Подготовлена такая конфигурация:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
	<bean id="javaSerializer"
		class="org.springframework.integration.ip.tcp.serializer.ByteArrayLengthHeaderSerializer" />
	<bean id="javaDeserializer"
		class="org.springframework.integration.ip.tcp.serializer.ByteArrayLengthHeaderSerializer" />
	<int-ip:tcp-connection-factory id="server"
		type="server" port="2000" deserializer="javaDeserializer" serializer="javaSerializer" />
	<int-ip:tcp-inbound-channel-adapter
		id="inbound-adapter" connection-factory="server" channel="tcpInbound" />
	<int:channel id="tcpInbound" />
	<!-- должен быть метод StringToString -->
	<int:service-activator input-channel="tcpInbound" ref="someService" method="processCommand" />
	<bean id="someService" class="ru.super.puper.Service" />


Вопросы к знатокам:
- будет ли такой сокет-сервер многопоточным (вроде должен быть). Соответственно, надо принимать меры, чтобы ru.super.puper.Service был thread safe.
- хочется, чтобы было некое подобие сессии. Клиент подключается, происходит некая инициализация, затем идет несколько команд processCommand(String input), и отключение. Чтобы сохранялся контекст от подключения до отключения, типа сессии в сервлете. Возможно ли?
...
Рейтинг: 0 / 0
10.01.2017, 11:31
    #39381307
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring integration, сокеты и многопоточность
ivanra,
ivanraбудет слушать определенный сокет
а зачем на таком низком уровне?
ServerSocket ss = new ServerSocket(port);
...
Рейтинг: 0 / 0
10.01.2017, 11:36
    #39381314
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring integration, сокеты и многопоточность
ivanra- хочется, чтобы было некое подобие сессии. Клиент подключается, происходит некая инициализация, затем идет несколько команд processCommand(String input), и отключение. Чтобы сохранялся контекст от подключения до отключения, типа сессии в сервлете. Возможно ли?Т.е. готовое TCP-соединение вас не устраивает и хочется навернуть что-то сверху?
А зачем?
...
Рейтинг: 0 / 0
10.01.2017, 11:48
    #39381329
ivanra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring integration, сокеты и многопоточность
Обратите внимание: вопрос по Spring integration .
Да, можно 100500-й раз использовать ServerSocket и там рулить самостоятельно соединениями и потоками. Но тут весь бойлеркод отдан Spring, программируется только 1 класс ru.super.puper.Service , занимающийся исключительно бизнес-логикой
...
Рейтинг: 0 / 0
10.01.2017, 12:43
    #39381381
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring integration, сокеты и многопоточность
ivanraОбратите внимание: вопрос по Spring integration .
если у вас распределённые приложения (на разных машинах) + распределённые транзакции, тогда вроде
springframework.jms.core.JmsTemplate
набитые решения.
Т.е. Spring integration + XTA+ActiveMQ+Event driven
"А теперь всё это должно взлететь)"
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring integration, сокеты и многопоточность / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]