W jednej aplikacji używam assets pipeline i mam bardzo wkurzający problem przy deployach. Po update_code wykonuje się rake assets:precompile. I wszystko było by fajnie gdyby nie to, że ten krok zajmuje 12 minut O_o Ta sama komenda wykonana na serwerze przez ssh zajmuje niecałe 2. Wydaje mi się, że jedyna różnica między dwoma sytuacjami to sposób wykonania komendy (net::ssh vs manualnie w sesji ssh), ale może coś pomijam?
Po usunięciu drugiego serwera z capistrano (używamy 2 serwerów, jeden jest używany jako backup i kopia pierwszego, żeby w razie jakiejś awarii ruch został tam przełączony) assets:precompile wykonał się w lekko ponad 100 sekund, czyli tyle ile powinno… zna ktoś na tyle capistrano, żeby podpowiedzieć co może być przyczyną?
(W ogóle przepraszam Cię bardzo, ale uśmiechnąłem się na myśl o tym, że Drogomir ma jakiś problem z ficzerem Rails 3.1. Przestało mi być głupio z powodu moich przejść z asset pipeline przy deploymencie )
Co do samego problemu, to serwery nie są w żaden sposób połączone, sprawdzę jutro czy to nie jest tak, że to z jakiegoś dziwnego powodu idzie przez te 12 minut na backupie, a capistrano pokazuje tylko ten czas jako wolniejszy. Używam standardowych recipes, ale własnych też próbowałem.
To jest kod napisany przez Josha, nie będę się wypowiadał o jego jakości Wystarczyło śledzić jak wyglądało jego wprowadzanie, tzn. Josh to napisał, zostawił, a później José, Aaron i Santiago głównie się męczyli z poprawianiem milijona bugów (łącznie z tym, że np. digest był inny na innych wersjach rubiego, co według autora jest akceptowalne). Jakby to ode mnie zależało, to bym w ogóle to przesunął na 3.2
[quote=Matthias]Ja bym takie rzeczy zostawił dla siebie i ich na forum nie wypowiadał.
Jak to mówią, we własne gniazdo się nie sra.[/quote]
Wiesz, Drogomir pracuje z fajnymi ludźmi, którzy nie strzelą focha jak się im powie “ten codebase jest chujowy”. Nawet więcej, pracuje z ludźmi którzy się z tym zgodzą i sami zaproponują refaktoryzację w pierwszym luźniejszym okresie.
Żółtodzioba od profesjonalisty różni ilość błędów, jakie jeden i drugi popełnił. A stosunek do popełnionych przez siebie błędów różni stagnację od
progresu.
[quote=Matthias]@drogus
Jezusmaria.
Ja bym takie rzeczy zostawił dla siebie i ich na forum nie wypowiadał.
Jak to mówią, we własne gniazdo się nie sra.[/quote]
Nie rozumiem.
To tak jakbyś próbował zatuszować to, że railsy 2 miały kiepską architekturę Mogę oczywiście mówić, że wszystko jest wspaniale, nikt nie ma problemów z assets pipeline i że nie było z tym żadnych problemów przed releasem (żeby zobaczyć jak było naprawdę wystarczy być na bieżąco z projektem, tzn. przeglądać commity i issues). Tylko po co? Używam assets pipeline bo to fajny feature, ale wystarczy spojrzeć na twittera czy nawet na znajomych programistów - prawie każdy miał z tym jakieś problemy. Po prostu nie podoba mi się sposób jego wprowadzenia.
Jednym słowem, nie rozumiem dramy
UPDATE:
Żeby sprostować, bo mogło to być zrozumiane trochę inaczej niż chciałem. Nie uważam, że Josh jest kiepskim koderem, jest ode mnie na pewno dużo lepszy i zrobił dla railsów niesamowicie dużo (wystarczy spojrzeć na ilość jego commitów). Po prostu nie podoba mi się sposób implementacji i sposób wprowadzenia assets pipeline.