Slide 1

Slide 1 text

Symfony 2 w chmurze Wojciech Sznapka PHPCon 2012

Slide 2

Slide 2 text

Cześć!

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

Własny serwer?

Slide 5

Slide 5 text

http://www.flickr.com/photos/n8foo/135743809/

Slide 6

Slide 6 text

http://www.flickr.com/photos/waferboard/5321533361/

Slide 7

Slide 7 text

http://weknowmemes.com/2012/01/dont-worry-im-from-tech-support/

Slide 8

Slide 8 text

A może jednak chmura?

Slide 9

Slide 9 text

http://www.flickr.com/photos/74029863@N06/7164908986/in/pool-73183316@N00/

Slide 10

Slide 10 text

Zwirtualizowane Środowisko Serwerowe

Slide 11

Slide 11 text

PAA S

Slide 12

Slide 12 text

IAA S

Slide 13

Slide 13 text

Skalowalne wertykalnie

Slide 14

Slide 14 text

Skalowalne horyzontalnie

Slide 15

Slide 15 text

Płatne za aktualne wykorzystanie

Slide 16

Slide 16 text

Zarządzane przez API

Slide 17

Slide 17 text

Gotowe do użycia usługi

Slide 18

Slide 18 text

FAKTY

Slide 19

Slide 19 text

http://aws.amazon.com/economics/

Slide 20

Slide 20 text

http://aws.typepad.com/aws/2012/04/amazon-s3-905-billion-objects-and-650000-requestssecond.html

Slide 21

Slide 21 text

https://github.com/languages/PHP

Slide 22

Slide 22 text

https://github.com/symfony/symfony

Slide 23

Slide 23 text

Przypadki użycia infrastruktury w chmurze

Slide 24

Slide 24 text

#1 Startup

Slide 25

Slide 25 text

#2 Aplikacja biznesowa

Slide 26

Slide 26 text

#3 Load Peak

Slide 27

Slide 27 text

#4 Batch processing

Slide 28

Slide 28 text

#5 Data Storage

Slide 29

Slide 29 text

Jak pisać w Symfony2 pod chmurę?

Slide 30

Slide 30 text

Nie zapisuj niczego lokalnie!

Slide 31

Slide 31 text

#1 Pliki użytkownika

Slide 32

Slide 32 text

Upload na współdzielony storage (S3)

Slide 33

Slide 33 text

Dostęp do flesystemu przez Gaufrette

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

#2 Sesje

Slide 36

Slide 36 text

Muszą być przechowywane w bazie

Slide 37

Slide 37 text

\Symfony \Component \HttpFoundation \SessionStorage \PdoSessionStorage

Slide 38

Slide 38 text

Opis użycia: cookbook na symfony.com

Slide 39

Slide 39 text

#3 Logi

Slide 40

Slide 40 text

Synchronizacja logów pomiędzy serwerami

Slide 41

Slide 41 text

rsync

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

Centralny logger

Slide 44

Slide 44 text

syslogd

Slide 45

Slide 45 text

#4 Baza Danych

Slide 46

Slide 46 text

Wykorzystanie mechanizmu Master/Slave

Slide 47

Slide 47 text

\Doctrine \DBAL \Connections \MasterSlaveConnection

Slide 48

Slide 48 text

#5 Praca Lokalna

Slide 49

Slide 49 text

Konfguracja confg_dev.yml

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

Zalety Symfony2 w chmurze?

Slide 52

Slide 52 text

Pod warunkiem nie zapisywania lokalnie

Slide 53

Slide 53 text

Symfony2 jest Cloud friendly

Slide 54

Slide 54 text

Symfony2 w połączeniu z chmurą jest elastyczne2

Slide 55

Slide 55 text

Aplikacje są gotowe do obsługi wzmożonego ruchu

Slide 56

Slide 56 text

Mamy możliwość optymalizacji kosztów infrastruktury

Slide 57

Slide 57 text

Możemy wybrać fzyczną lokalizację data center

Slide 58

Slide 58 text

Skupiamy wysiłek na programowaniu, zamiast na administrowaniu

Slide 59

Slide 59 text

Nie ma róży bez kolców

Slide 60

Slide 60 text

Koszty wydają się być wysokie

Slide 61

Slide 61 text

Przy braku doświadczenia z AWS istnieją pułapki

Slide 62

Slide 62 text

Aplikacja i dane są hostowane poza lokalizacją klienta

Slide 63

Slide 63 text

Vendor Lock-in

Slide 64

Slide 64 text

Skomplikowane architektury wymagają doświadczenia

Slide 65

Slide 65 text

A więc?

Slide 66

Slide 66 text

http://humaneconomics.blog.com/2012/01/23/36/

Slide 67

Slide 67 text

Dziękuję! https://joind.in/7181

Slide 68

Slide 68 text

No content

Slide 69

Slide 69 text

Wojciech Sznapka [email protected] blog.sznapka.pl @sznapka @wowo