ASP.NET Core i aplikacja giełdowa

0

Hej, w ramach projektu na uniwersytecie zamierzam napisać aplikację umożliwiającą zabawę w inwestora. Wstępnie założyłem jakich technologii chciałbym używać, czyli ASP.NET Core do backendu i Angulara po stronie klienta. Nie jestem jednak doświadczonym programistą i pomimo tygodni spędzonych nad szukaniem odpowiednich narzędzi, niektóre problemy trochę mnie przerastają nawet na etapie koncepcji.
Podstawą do działania aplikacji jest dysponowanie aktualnymi kursami. Te mogę zdobyć przy pomocy różnych API i tu pojawia się pytanie, czy poprawnym rozwiązaniem jest regularne (np. co minutę) odpytywanie zewnętrznych API przez moje własne API, zapisywanie odpowiedzi w bazie danych i wreszcie odsyłanie informacji do klientów poprzez subskrypcję i aktualizowanie strony?
Ponadto niektóre API umożliwiają użycie websocketów:
https://finnhub.io/docs/api#websocket-price
O ile w przypadku odpytywania tego API są pewne limity (np. 60/h), o tyle nie jestem pewien jak działają tutaj websockety i czy np. nie można by użyć SignalRa do komunikacji pomiędzy zewnętrznym API, moim serwerem i klientem.
Prosiłbym o chociaż delikatne nakierowanie mnie na poprawne rozwiązanie

0
Harney Lou napisał(a):

Ja się nie znam na dotnetach, ale... ;-)

Hej, w ramach projektu na uniwersytecie zamierzam napisać aplikację umożliwiającą zabawę w inwestora. Wstępnie założyłem jakich technologii chciałbym używać, czyli ASP.NET Core do backendu i Angulara po stronie klienta.

Skoro to taki projekt, to może zamiast Angulara zainteresuj się Blazorem?
Wszystko będziesz miał ładnie w .NET :)

Nie jestem jednak doświadczonym programistą i pomimo tygodni spędzonych nad szukaniem odpowiednich narzędzi, niektóre problemy trochę mnie przerastają nawet na etapie koncepcji.
Podstawą do działania aplikacji jest dysponowanie aktualnymi kursami. Te mogę zdobyć przy pomocy różnych API i tu pojawia się pytanie, czy poprawnym rozwiązaniem jest regularne (np. co minutę) odpytywanie zewnętrznych API przez moje własne API, zapisywanie odpowiedzi w bazie danych i wreszcie odsyłanie informacji do klientów poprzez subskrypcję i aktualizowanie strony?

Lepiej by było subskrybować informacje o zmianie kursu, zamiast sprawdzać je co chwilę.

Ponadto niektóre API umożliwiają użycie websocketów:

No właśnie, przy użyciu WS subskrypcje i powiadamianie masz w pakiecie...

https://finnhub.io/docs/api#websocket-price
O ile w przypadku odpytywania tego API są pewne limity (np. 60/h), o tyle nie jestem pewien jak działają tutaj websockety

Zapewniają dwukierunkową komunikację client-server.
A więc twój serwer może subskrybować informacje o zmianie kursu z zewnętrznego API, a twoi klienci mogą subskrybować informacje o zmianie kursu na twoim serwerze.
Aczkolwiek w przypadku Blazora (czyli piszesz sobie klienta przy pomocy Blazor zamiast Angulara) to jest jeszcze łatwiejsze, ponieważ tam de facto działa SignalR i robi to trochę automagicznie.

i czy np. nie można by użyć SignalRa do komunikacji pomiędzy zewnętrznym API, moim serwerem i klientem.

A jakże, można.

1 użytkowników online, w tym zalogowanych: 0, gości: 1