Как лучше связать (чтобы они с собой взаимодействовали в обе стороны) : ASP.net (Web Service) и простой Windows Service (желательно без HTTP и без REST)
Конечно я понимаю что можно чтото через БД чтото HttpRequest-ами отправлять но хотелось бы узнать как ещё можно...
Смежный вопрос: как сделать чтобы например AJAX на Web странице использовал Windows Service с минимальными задержками.
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Как лучше связать (чтобы они с собой взаимодействовали в обе стороны) : ASP.net (Web Service) и простой Windows Service (желательно без HTTP и без REST) VYR>Конечно я понимаю что можно чтото через БД чтото HttpRequest-ами отправлять но хотелось бы узнать как ещё можно...
VYR>Смежный вопрос: как сделать чтобы например AJAX на Web странице использовал Windows Service с минимальными задержками.
VYR>Заранее спасибо!
ну в http/2 + grpc задержки меньше чем старом http плюс на сераилизацию меньше CPU тратится
а в http/3 еще меньше задержки на хендшейке.
а что бы в обе стороны взаимодействовали это ортогональный вопрос. Из коробки это есть в gRPC, WCF, SingnalR и прочих Remoting-ах, с ограничениями.
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Как лучше связать (чтобы они с собой взаимодействовали в обе стороны) : ASP.net (Web Service) и простой Windows Service (желательно без HTTP и без REST) VYR>Конечно я понимаю что можно чтото через БД чтото HttpRequest-ами отправлять но хотелось бы узнать как ещё можно...
VYR>Смежный вопрос: как сделать чтобы например AJAX на Web странице использовал Windows Service с минимальными задержками.
VYR>Заранее спасибо!
Можно RabbitMQ использовать или аналогичный брокер сообщений.
А если объем данных не большой и работать это будет в одной сети, то вообще на сокетах.
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Как лучше связать (чтобы они с собой взаимодействовали в обе стороны) : ASP.net (Web Service) и простой Windows Service (желательно без HTTP и без REST)
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Как лучше связать (чтобы они с собой взаимодействовали в обе стороны) : ASP.net (Web Service) и простой Windows Service (желательно без HTTP и без REST) VYR>Конечно я понимаю что можно чтото через БД чтото HttpRequest-ами отправлять но хотелось бы узнать как ещё можно...
VYR>Смежный вопрос: как сделать чтобы например AJAX на Web странице использовал Windows Service с минимальными задержками.
VYR>Заранее спасибо!
Для межпроцессорного взаимодействия в Windows можно использовать WCF сервисы и протокол net.pipe.
----
"Ответить на вопрос — значит согласиться с правильностью его постановки.", Карстен Бредемайер
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Как лучше связать
Зависит от среды. если виднос и локальная сеть то 1) wcf+pipe или tcp. 2) общая бд. (на мой взгляд равноценные варианты).
база может быть как классическая, так и кафка какая-нибудь.
если более сложная сеть, можно websocket — потому что http потому-что постоянное соединение(не будет задержек с запросами).
Вообщем все зависит от фантазии.
Еще это прям сильно надо? не усложнит ли это проект без необходимости? может быть если требуется интенсивное взаимодействие поместить все в один процесс?
asp.net core умеет backgroundservice и singleton. service worker умеет запускать webhost.
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Как лучше связать (чтобы они с собой взаимодействовали в обе стороны) : ASP.net (Web Service) и простой Windows Service (желательно без HTTP и без REST) VYR>Конечно я понимаю что можно чтото через БД чтото HttpRequest-ами отправлять но хотелось бы узнать как ещё можно...
Все зависит от того что ты собрался передавать и какие к тому требования. Самый простой и безгеморный способ — поднять в винсервисе asp.net. Заодно получишь возможность делать к нему хелсчеки и собирать прометеевские метрики.
Если вот прям совсем по перфу не проходит — смотри в сторону gRPC.
Если и этого мало — тогда пайпы и рукопашный протокол.
VYR>Смежный вопрос: как сделать чтобы например AJAX на Web странице использовал Windows Service с минимальными задержками.
Тут совсем уже без вариантов — поднимать в винсервисе аспнет, сам сервис выставлять через Reverse Proxy.