![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 4 Dołączył: 17.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, chciał bym zaczerpnąć więcej wiedzy na temat pracy w dużych zespołach nad produktami. Dokładniej chodzi workflow zarówno od strony organizacyjnej (tutaj dość łatwo można znaleźć coś w internetach) jak i od strony technicznej (no i tutaj coś konkretnego znaleźć jest cieżko).
Jeśli chodzi o organizacje to tutaj mamy dość prosty i popularny gitflow: http://nvie.com/posts/a-successful-git-branching-model/ [moze jakieś inne polecicie?] Natomiast od strony technicznej, wygląda to dużo trudniej. Środowiska produkcyjne, testowe i preprodukcyjne są raczej proste, natomiast środowiska developerskie są nieco trudniejszą sprawą. Do głowy przychodzi mi vagrant lub VPSy. Problemem jest natomiast skala. Jeśli zespół jest 5 osobowy i mamy ze 2 produkty, to jest to tylko 10 środowisk na serwerach lub ściągamy developerom te 2 produkty na lokalny sprzęt. Natomiast jeśli programistów jest 50 a produktów 20, to mamy 1000 środowisk developerskich do ogarnięcia lub musimy lokalnie ściągnąć 20 produktów co wiązać się będzie ze sporym wydatkiem na sprzęt. Jak żyć? jak ktoś ma własne doświadczenia to chętnie je przeczytam, dobrą literaturą też nie pogardzę. Nie musi być koniecznie po polsku. Z góry przepraszam, jeśli temat był poruszany. Używałem szukajki ale nic nie znalazłem związanego z tym zagadnieniem. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Cytat Do głowy przychodzi mi vagrant lub VPSy. Problemem jest natomiast skala. Jeśli zespół jest 5 osobowy i mamy ze 2 produkty, to jest to tylko 10 środowisk na serwerach lub ściągamy developerom te 2 produkty na lokalny sprzęt. Docker to the rescue. Środowisko dev na którym pracuje ma postawionych 8 "maszyn" (kontenerów), działa to dobrze nawet na laptopie. Kwestia tego aby przesiąść się na linuksa. Różnicy pomiędzy środowiskami prawie nie ma, z wyjątkiem produkcyjnej wersji, gdzie każdy kontener jest na osobnej maszynie. Konfiguracja jest prawie ta sama, różni się niektórymi zmiennymi środowiskowymi (wiadomo), postawienie środowiska developerskiego, to kwestia wykonania komendy docker-compose up -d i poczekania aż stosowne obrazy się pobiorą (coś ala vagrant). Jeżeli do wszystkich kontenerów jest stosowany jeden system, to wszystko ładnie się uruchamia. 2-3 sekundy na wystartowanie 8 kontenerów (mongodb, redis, nodejs x3, nginx, php, haproxy). Wcześniej pracowaliśmy na vagrancie, ale kiedy przyszło nam testować klastrowanie niektórych usług, zaczęło być niefajnie, a ludzie na laptopach zaczęli płakać. Aktualnie siedzimy na maszynach za jakieś ~2.5 tyś zł (razem z monitorami), a docker śmiga aż miło. Nawet odpalenie i 100 kontenerów nie będzie żadnym wyzwaniem. Więc porównanie z vagrantem jest spore. Dzięki temu mogę odpalić lokalnie konfigurację produkcyjną, i sprawdzić czy mongodb lub redis w klastrze będą działać. Im dalej w ten temat się zagłębiam, tym bardziej nie chce wracać do vagranta lub windowsa. Cholera nawet CI mamy postawione jako kontener, który buduje kontenery (incepcja). Tak na szybko tutaj masz przykład jak to mniej więcej wygląda u mnie: https://www.airpair.com/docker/posts/effici...-docker-compose z tą różnicą, że nie używamy submodułów, bo ich aktualizacja jest problematyczna. Ten post edytował by_ikar 21.01.2016, 08:38:32 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 16:14 |