Strategia Skalowania

Skalowanie - o ile powstanie taka potrzeba - należy wdrażać wg. następującej logiki:

  • Aktualne pliki klienckie (blazor, js, index, zasoby css, img) - trzymać wraz z API
  • Domena niech wskazuje na LoadBalancer, który wszystkie requesty niech przekierowuje do identycznych kopii API (tanio, gdyż liczy się głównie procesor) w zależności od obciążenia
  • Pliki klientów - każdy klon API niech ma zapięty udział sieciowy - czyli jeden serwer wyłącznie na pliki płaskie
  • Bazy - katalog tenantów niech zawiera dane nt. aktualnego serwera bazy danych, bazy trzymane na osobnych serwerach, najlepiej wyłącznie w sieci lokalnej danej serwerowni (wyłączny dostęp dla instancji API)
  • Dla ułatwienia CD/CI - konteneryzacja API
  • Między API - niezbędny Redis do cachoewania (trzymania Stanu) DbContextSettings oraz połączeń typu SignalR (jeden Redis dla wszystkich API, konfig dosłownie jednolinijkowy - zmieniamy cache z memory maszyny na redisa