Archiwa autora: Marcin Dryka

Deployment przy pomocy capifony

Całkiem niedawno pisałem o Deployment przez FTP. Największą zaletą tego rozwiązania jest to, że działa. Ale nie jest ono idealne – trwa bardzo długo. Najlepszym sposobem aktualizacji aplikacji opartej o Symfony 2 w tej chwili to capifony. Capifony to zbiór skryptów capistrano przeznaczonych dla aplikacji napisanych w Symfony (zarówno 1.x jak i 2).

Deployment przez FTP

Oczywiste jest, że najlepszym sposobem zainstalowania aplikacji na serwerze klienta jest skorzystanie z Capifony. Nie zawsze jednak jest tak różowo. Szczególnie przy tanich hostingach opcja dostępu przez SSH nie jest dostępna. Nawet jeśli taki hosting ma dostęp przez SSH, może na nim brakować np. rsync. Wtedy jedyną możliwością zainstalowania aplikacji jest protokół FTP. Chyba najgorsza z możliwych opcji. Każda zmiana wiąże się z ręcznym wrzucaniem plików do odpowiednich katalogów. Zmora.

Beanstalk w Symfony2

Beanstalk to bardzo prosta i szybka kolejka wiadomości. Jest świetnym rozwiązaniem, aby wykonywać długo trwające żądania użytkownika (do tego został zresztą zaprojektowany).  Doskonałym przykładem kiedy powinno się użyć kolejki wiadomości, to np. masowe wysyłanie wiadomości do użytkowników systemu (e-mail, sms). Pojedyncza operacja wysłania wiadomości do użytkownika nie jest złożona i zajmuje najwyżej kilka sekund. Jednak przy wysyłaniu wiadomości do kilkuset tysięcy użytkowników, czas obsługi żądania jest zbyt długi, żeby ktokolwiek w rzeczywistości mógł wykonać treść żądania przed zakończeniem połączenia HTTP. Oczywiście można kolejki obchodzić na różne sposoby (crond, pooling bazy danych). Pytanie tylko w jakim celu utrudniać sobie życie?  Komunikacja z serwerem kolejek beanstalk odbywa się poprzez TCP i wymianę danych ASCII, a do komunikacji powstała cała masa bibliotek w wielu językach programowania.  

Web do kwadratu – polski projekt OpenSource oparty na Symfony2

Projekt webdokwadratu ma na celu przedstawić osoby odpowiedzialne za kształt polskiego Internetu (tak, do nich te pretensje, że jakiś blog nie działa, albo, że gdzieś się czegoś nie da ;-). Projekt ciekawy z wielu względów. M. in. możemy zobaczyć tych ludzi, którzy przyczynili się do rozwoju sieci, a przy okazji poznać czym się interesują, zaklikać do nich na twitterze czy facebooku.

Dostęp do kontenera dependency injection z klasy repository

Użycie KnpPaginatorBundle do stronicowania rekordów jest bardzo dobrym pomysłem. Jednak pokazany w dokumentacji przykład jest zapisany w kontrolerze. Zapewne spora część osób wolałaby pobieranie danych z bazy danych zawrzeć w plikach modelu. W tym wypadku w pliku repository dla danego entity. Problem jest z dostępem do serwisu paginatora – domyślnie kontener DI nie jest dostępny z klasy repozytorium.  

Symfony2 Launch Party

W Gliwicach, przy siedzibie XSolve odbyło się całkiem udane Launch Party. Był grill z kiełbaskami, piwo i paluszki :-) Michał Pipa opowiadał o powstaniu projektu Symfony2 i przekonywał, że Symfony2 „rządzi„. Po prezentacji pozostało trochę czasu na piłkarzyki i rozmowy o projektach. Pojawiło się sporo osób, a dla tych, których nie było fotorelacja:

Symfony2 launch party też w Polsce!

W czwartek 28.07 swoją premierę będzie miała druga wersja frameworka Symfony! Spontaniczna akcja na blogu Symfony2 zaowocowała również organizacją imprezy w Polsce. Zapraszamy wszystkich związanych z Symfony, PHP na spotkanie przy grillu w siedzibie XSolve.