Upload
wojciech-sznapka
View
480
Download
0
Embed Size (px)
DESCRIPTION
„Chmura” - chwytliwe słowo kluczowe, uwielbiane przez marketingowców, ale też wielka szansa dla programistów i architektów, aby sprostać wysokiemu obciążeniu i zoptymalizować koszty infrastruktury serwerowej. W prezentacji pochylę się nad kilkoma scenariuszami uruchamiania aplikacji w chmurze, wyeksponuję punkty, które muszą być dostosowane aby system działał poprawnie w takim środowisku i pokaże jak radzić sobie z tym przy użyciu frameworka Symfony2. Przedyskutujemy również sposoby deploymentu zarówno prostych aplikacji, jak i tych, które działają pod wielkim obciążeniem, które wymagają złożonej architektury.
Citation preview
Symfony 2 w chmurze
Wojciech Sznapka PHPCon 2012
Cześć!
Wojciech Sznapka
Software Architect w XSolve
Zend Certified Engineer od 2010
Symfony Framework od 2008
PHP od 2004
Web development od 2001
POZA TYM: hokej na lodzie, windsurfing, narty, kryminały
Własny serwer?
http://www.flickr.com/photos/n8foo/135743809/
http://www.flickr.com/photos/waferboard/5321533361/
http://weknowmemes.com/2012/01/dont-worry-im-from-tech-support/
A może jednak chmura?
http://www.flickr.com/photos/74029863@N06/7164908986/in/pool-73183316@N00/
Zwirtualizowane Środowisko Serwerowe
PAAS
IAAS
Skalowalne wertykalnie
Skalowalne horyzontalnie
Płatne za aktualne wykorzystanie
Zarządzane przez API
Gotowe do użycia usługi
FAKTY
http://aws.amazon.com/economics/
http://aws.typepad.com/aws/2012/04/amazon-s3-905-billion-objects-and-650000-requestssecond.html
https://github.com/languages/PHP
https://github.com/symfony/symfony
Przypadki użycia infrastruktury w chmurze
#1 Startup
#2 Aplikacja biznesowa
#3 Load Peak
#4 Batch processing
#5 Data Storage
Jak pisać w Symfony2 pod chmurę?
Nie zapisuj niczego lokalnie!
#1 Pliki użytkownika
Upload na współdzielony storage (S3)
Dostęp do flesystemu przez Gaufrette
#2 Sesje
Muszą być przechowywane w bazie
\Symfony \Component \HttpFoundation \SessionStorage \PdoSessionStorage
Opis użycia: cookbook na symfony.com
#3 Logi
Synchronizacja logów pomiędzy serwerami
rsync
Centralny logger
syslogd
#4 Baza Danych
Wykorzystanie mechanizmu Master/Slave
\Doctrine \DBAL \Connections \MasterSlaveConnection
#5 Praca Lokalna
Konfguracja confg_dev.yml
Zalety Symfony2 w chmurze?
Pod warunkiem nie zapisywania lokalnie
Symfony2 jest Cloud friendly
Symfony2 w połączeniu z chmurą jest elastyczne2
Aplikacje są gotowe do obsługi wzmożonego ruchu
Mamy możliwość optymalizacji kosztów infrastruktury
Możemy wybrać fzyczną lokalizację data center
Skupiamy wysiłek na programowaniu, zamiast na administrowaniu
Nie ma róży bez kolców
Koszty wydają się być wysokie
Przy braku doświadczenia z AWS istnieją pułapki
Aplikacja i dane są hostowane poza lokalizacją klienta
Vendor Lock-in
Skomplikowane architektury wymagają doświadczenia
A więc?
http://humaneconomics.blog.com/2012/01/23/36/
Dziękuję!https://joind.in/7181