Czy możesz osiągnąć zero przestojów dzięki Magento2?

15

Jeśli masz nowy moduł i musisz uruchomić setup:upgrade, to nie widzę sposobu na zero przestojów. Zawsze będzie to 10-20 sekund w dół, ponieważ musisz zaktualizować bazę danych. A może coś mi brakuje?

Nawet jeśli wdrażasz w innym folderze, a następnie po wygenerowaniu wszystkich plików symlinkujesz środowisko na żywo do tego folderu, nadal musisz dbać o bazę danych.

Claudiu Creanga
źródło

Odpowiedzi:

2

Zastanawiam się, w jakim środowisku pracujesz, w którym 10-20 sekund, a nawet kilka minut przestoju byłoby przełomem. Oczywiście to nie jest idealne, ale muszę sobie wyobrazić, że to dość niewielka cena do zapłacenia, zwłaszcza jeśli wdrażasz w godzinach poza szczytem.

Dokumentacja programisty M2: Wdróż Magento do produkcji . W tym piśmie dokumenty są rzadkie i zawierają link do zewnętrznego problemu GitHub w celu dyskusji. Jednak te oficjalne dokumenty są dobrym miejscem, aby mieć na oku.

Mój zespół bada użycie Capistrano do rozmieszczenia M2. Jeszcze nie zdecydowaliśmy się na końcowy proces, ale prosta wyszukiwarka Google („capistrano magento 2”) pokazuje, że wiele osób eksperymentuje z tym samym.

Wreszcie istnieją różne schematy, takie jak wdrażanie niebiesko-zielone, które mają również na celu zminimalizowanie przestojów. W szczególności niebiesko-zielony przypomina posiadanie serwera pomostowego, ale w krytycznym momencie aktualizujesz DNS, aby wskazywał z niebieskiego na zielony, zmieniając zielony na żywy, a niebieski w „pomostowy”. Przy następnym wdrożeniu niebieski ponownie włącza się. W ten sposób przestoje są teoretycznie zerowe, a zmiany następują tak szybko, jak propaguje się zmiana DNS.

nshiff
źródło
dzięki za przydatne linki. DNS nigdy nie propaguje wystarczająco szybko. Trzymałbym się dowiązania folderów. Wdrożenia w godzinach poza szczytem są ryzykowne. Poza szczytem czas zasadniczo byłby bardzo wcześnie rano lub bardzo późno w nocy. Jeśli jesteś małą firmą, możesz nie mieć wystarczającej liczby pracowników.
Claudiu Creanga
1
Naprawdę nie rozumiem, jak niebiesko-zielony może tutaj działać, nie wymagając wszelkiego rodzaju synchronizacji baz danych, co wydaje się ryzykowne. Problem polega na tym, że instalacja modułu wymaga aktualizacji bazy danych.
Rich S
@RichS W przypadku oprogramowania synchronizacja nie stanowi problemu. Ale tak, może być trudne, aby uniknąć utraty zamówień lub innych danych klientów - zobacz źródło, które podłączyłem. Zaleca używanie tego samego db. Ponownie, wracając do założenia pytania, kiedy 10 minut przestoju naprawdę będzie problemem? Najpierw szukałem nietechnicznego rozwiązania, takiego jak wdrażanie o 2 nad ranem, zanim wprowadzę niepotrzebną złożoność.
nshiff