Wpis z mikrobloga

Mirki mam pytanie z zakresu #oprogramowanie #programowanie, #csharp

Chciałbym sobie zrobić chat na #websocket w formie API, tak aby front obsługiwał angular.
W sumie działa mi to wszystko jak trzeba, tylko chciałbym żeby ten kod wyglądał w miarę sensownie.
Na chwilę obecną jest middleware, który przyjmuje połączenia, oczekuje na transmisje i wysyła do wszystkich podłączonych użytkowników. Ale trochę mi to nie pasi, bo, mam wrażenie, że jest to zrobione trochę na pałę.

Jak powinna wyglądać taka aplikacja z punktu widzenia architektury?
Czy połączenia powinien obsługiwać taki middleware czy powinien być wydzielony odpowiedni serwis w warstwie infrastruktury? Tak jak np. jest serwis odpowiedzialny za użytkowników, gdzie są metody od rejestracji itp, tak w serwisie czatu powinny być obsługiwane połączenia?
Czy może oba rozwiązania powinny być ze sobą powiązane?
Czy da się zrobić tak, aby websockety były obsługiwane tylko, że tak powiem przy odpytywaniu konkretnego kontrollera? Bo na chwilę obecną middleware jest jakby globalny dla całej aplikacji, a chciałbym aby wiadomości na czat były obsługiwane tylko i wyłączenie kiedy front wysyła request na konkretny routing.

#netcore
  • 3