w najciemniejszych chwilach, kiedy upadek z wyborów Trumpa wywołuje największy strach, pamiętaj o Ameryce, która zawsze - i zawsze będzie nas uszczęśliwiać: fakt, że możemy głosować.
Rozwiązywanie niewidocznych problemów z skalowaniem za pomocą Serverless i MongoDB
Odkąd inżynieria oprogramowania stała się zawodem, staramy się służyć użytkownikom na całym świecie. Wraz z tym pojawia się kwestia skalowania i jak go rozwiązać. Wielokrotnie te myśli o powiększaniu naszego oprogramowania do niewyobrażalnych rozmiarów są przedwczesne i niepotrzebne.
Stało się to czymś zupełnie innym, wraz z pojawieniem się architektur bezserwerowych i dostawców usług typu back-end-as-a-service. Teraz nie mamy problemów z powiększaniem skali, ale raczej jak skalować nasze połączenia z bazą danych bez tworzenia dużych obciążeń.
Mając ograniczony wgląd w infrastrukturę, niewiele możemy zrobić poza napisaniem solidnego, wydajnego kodu i użyciem odpowiednich narzędzi, aby złagodzić ten problem.
Albo to jest? ??
Jak działają bazy danych bez serwera?
Dzięki tradycyjnemu serwerowi Twoja aplikacja połączy się z bazą danych podczas uruchamiania. Całkiem logiczne, prawda? Pierwszą rzeczą, którą robi to jest podłączenie do bazy danych za pomocą łańcucha połączenia, a dopiero po wykonaniu tej czynności reszta aplikacji zostanie zainicjowana.
Serverless obsługuje to trochę inaczej. Kod zostanie uruchomiony po raz pierwszy tylko po uruchomieniu funkcji. Oznacza to, że zarówno inicjalizacja połączenia z bazą danych, jak i interakcja z bazą danych podczas tego samego wywołania funkcji.
Przeprowadzanie tego procesu za każdym razem, gdy uruchomiona jest funkcja, byłoby niewiarygodnie nieefektywne i czasochłonne. Z tego powodu deweloperzy bez serwera używają techniki nazywanej łączeniem połączeń, aby utworzyć połączenie z bazą danych tylko podczas pierwszego wywołania funkcji i ponownie użyć go dla każdego kolejnego połączenia. Teraz zastanawiasz się, jak to jest możliwe?