Bevezetés

Befejeződött

A Tailwind Traders mérnökeként megtanulta, hogy vállalata egy új webhelyet tervez elindítani, amely tőzsdei információkat nyújt az ügyfeleknek. Nemrég egy gyakornok munkatárs létrehozott egy webhelyprototípust az új alkalmazáshoz, a vezető mérnök pedig Önt kérte fel, hogy fejlessze tovább a megoldást. Ön úgy szeretné módosítani az alkalmazást, hogy az automatikusan frissíteni tudja a tőzsdei árfolyamokat, de biztosítani szeretné, hogy az ügyfél és a kiszolgáló között csak akkor történjen kommunikáció, ha a kiszolgálón megváltoznak az adatok.

Prototípus-architektúra

A kiszolgáló prototípusa 2 funkcióval rendelkezik:

Függvénynév Trigger típusa Leírás
getStocks Azure Cosmos DB A kiszolgáló feladata az adatbázis készlettáblájából származó összes adat beolvasása és az adatok HTTP-válaszban való visszaadása, amikor az ügyfél kéri.
setPrice Időzítő Az adatbázis adatainak módosítására szolgáló függvény egy időzítő-eseményindítón fut. Ez egy háttérrendszer módosításainak fogadását szimulálja.

Prototípusként a gyakornok egy időzítő funkcióval szimulálta a részvénycsatornát, amely percenként frissül. Az ügyfél webhelye 5 másodpercenként kéri le az összes állományt az /api/getStocks API-végpontról, hogy közel valós idejű adatokat jelenítsen meg. Ez az ügyfélkérés nem hatékony. Ahelyett, hogy lekérte volna az adatokat a kiszolgálóról, hatékonyabb lenne, ha a kiszolgáló leküldi az új részvényinformációkat.

Elvégzendő feladatok

Ebben a modulban a következőkkel foglalkozunk:

  • A prototípus futtatása: Tekintse meg az ügyfélalkalmazást, amely rendszeres időközönként lekérdezi a kiszolgálót az összes részvényre vonatkozóan
  • Az alkalmazás fejlesztése: Kiszolgáló nélküli Azure Functions-alkalmazás implementálása a csatlakoztatott ügyfelek módosításainak közvetítéséhez a SignalR Service használatával közel valós idejű frissítéseket hozhat létre.
  • Frissítse az ügyfél JavaScript-webalkalmazását, hogy csatlakozzon a SignalR-hez az üzenetek lekéréséhez és megjelenítéséhez.