JavaRush /Blog Java /Random-PL /Małe sztuczki z Heroku
Игорь
Poziom 40
Киев

Małe sztuczki z Heroku

Opublikowano w grupie Random-PL
Wyobraźmy sobie sytuację. Ukończyłeś kurs JavaRush, odbyłeś staż online i masz swój pierwszy projekt na platformie Heroku PaaS . Wysyłasz CV i zaczynasz chodzić na rozmowy kwalifikacyjne. I na jednym z nich poproszą Cię o pokazanie projektu (albo będą chcieli go szybko obejrzeć jeszcze przed rozmową kwalifikacyjną, klikając link w CV). Przeglądarka zostanie otwarta, a ładowanie witryny zajmie dużo czasu. Tak, można wytłumaczyć, że to darmowe Heroku i tak to działa, ale wrażenie jest zepsute. W tym artykule postaramy się zrozumieć przyczyny tego zachowania i metody jego zwalczania.
Małe sztuczki z Heroku - 1
Zacznijmy od koncepcji godzin hamowni . Zgodnie z dokumentacją , godziny Dyno to zasadniczo czas działania Twojej aplikacji/aplikacji wyrażony w godzinach/miesiącu. Zaraz po zarejestrowaniu darmowego konta otrzymujesz 550 godzin miesięcznie. Po przeprowadzeniu prostych obliczeń na jedną aplikację otrzymujemy około 17 godzin dziennie. To nie wystarczy. Dlatego łączymy kartę kredytową w Ustawieniach konta - Rozliczenia i zyskujemy kolejne 450 darmowych godzin (już 32 godziny dziennie). Ten problem został rozwiązany. Jest jeszcze jeden. Powyższy dokument stwierdza również, że aplikacja będzie „uśpiona na hamowni” , jeśli nie będzie wykonywana przez 30 minut. W Internecie istnieją trzy główne podejścia:
  1. Regularnie (na przykład raz na 5 minut) wysyłaj żądania do aplikacji z poziomu samej aplikacji.

    Przy użyciu JavaScript wyglądałoby to tak:

    var http = require("http");
    setInterval(function() {
        http.get("http://<your app name>.herokuapp.com");
    }, 300000); // every 5 minutes (300000)
  2. Skorzystaj z zewnętrznych witryn pingujących, które będą sprawdzać Twoją witrynę w określonych odstępach czasu.

    Przykładami takich stron są Pingdom , Uptime Robot , Kaffeine i inne. Zasada jest prosta. Wchodzimy, rejestrujemy się (jeśli to konieczne), wskazujemy witrynę i przedział czasowy oraz stosujemy ustawienia.

  3. Użyj dodatku Heroku Newrelic Wtyczka ta przeznaczona jest do monitorowania i powiadamiania o awariach witryny, ale jako przydatny „efekt uboczny” zapobiega zasypianiu aplikacji. Zdecydowałem się na tę metodę, która moim zdaniem jest najpiękniejsza. Opiszę to bardziej szczegółowo.

    Aby zainstalować dodatek, kliknij ten link i kliknij przycisk „Zainstaluj nowy Relic APM” . W oknie, które zostanie otwarte, musisz wybrać plan taryfowy i nazwę aplikacji, do której zostanie zastosowany ten dodatek.

    Małe sztuczki z Heroku - 2

    Następnie naciśnij przycisk „Udostępnij dodatek” .

    Po instalacji New Relic będzie dostępny na stronie ustawień aplikacji na liście zainstalowanych dodatków.

    Małe sztuczki z Heroku - 3

    Kliknij link, a zostaniesz przeniesiony na stronę ustawień dodatku.

    Przejdź do zakładki „Syntetyki” i kliknij przycisk „Dodaj nowy”.

    Małe sztuczki z Heroku - 4

    W oknie, które zostanie otwarte, w sekcji „Wprowadź szczegóły” podaj dowolną nazwę monitora i adres strony, którą będziemy monitorować. W opcji „Wybierz lokalizacje monitorowania” wybieramy lokalizację, z której będzie sprawdzana witryna .

    Częstotliwość kontroli podajemy w „Ustaw harmonogram” (ustawiam na 15 minut), a adres e-mail do powiadomień w „Otrzymuj powiadomienia”.

    Po skonfigurowaniu wszystkich ustawień nie zapomnij kliknąć przycisku „Utwórz monitor”.

Voila, monitor został stworzony i teraz Twoja aplikacja będzie działać 24/7 i nie zawiedzie w najważniejszym momencie :)
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION