nagy terhelésű webes rendszerek fejlesztése

Post on 18-Dec-2014

1.278 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Nagy terhelésű webes rendszerek fejlesztésePásztor János

Mitől nagy terhelésű?

Tényleg szükség van rá?

Forrás: Rajcsányi Zoltán, partifotosok.hu

Mik az elvárások?

● Legyen magas rendelkezésre állású!

● Legyen skálázható!● Legyen nagyobb teherbírású!

Legyen magas rendelkezésre állású!Vagy mégsem?

LVS

Frontend

GFS2

DRBD

HA szoftverek

Együtt akár ilyenek is lehetnek

Legyen skálázható!Vagy mégsem?

Soft Launch„Launch early, launch crappy.”

Legyen nagyobb teherbírású!

DYNAMIC STATIC 2STATIC 1

Statikus tartalmak terjesztése

index.phpSzerver 1

login.phpSzerver 2

Munkamenetadatok

Munkamenet süti

Munkamenet süti

Munkamenet (session)

Felhasználókadatbázisa

Egyéb adatokadatbázisa

Webszerver

Feladatok bontása

Webszerver

Master

Master

Replikáció

Master-Master replika

Webszerver

Master

Slave

Replikáció

Slave

Írás

Olvasás

Olvasás

Master-Slave replika

Szolgáltatások lekapcsolása

Komplexitás

Mire lesz szükség?

Load balancer (Content Switch)

Switch

Szerver

Monitorozás

Monitorozó szoftverek

● Nagios● Munin● Monit● Collectd● NTop● Syslog-NG

Emberi tudás

Emberi tudás

● Hibakeresés● Wireshark, tcpdump, tcpflow● strace

● Erőforrás figyelés● top, ps, stb● Cachegrind

● SQL optimalizálás● Explain parancs használata● Maatkit● mysqltuner.pl

Kérdések eddig?(Még nincs vége...)

Építsünk blog szolgáltatást!

Kérdések ezzel kapcsolatban?

(Még mindig nincs vége...)

Global load balancing

CDN

● Statikus tartalmat szolgál ki● Globálisan load balance-olva● Megoldja a probléma 80-90%-át● Költséghatékony

Replikáció

MasterBudapest

SlaveUSA

● Lassú írások● Kötegelten célszerű megoldani● Hibakezelés kötelező

Adategységek mozgatása

● Jól skálázódik● Jó felhasználói élményt nyújt (gyors írások)● Több munka lefejleszteni● Csak bizonyos alkalmazások esetén működik

USA data node Budapest data nodeFelhasználó adatai

belépéskor

További olvasmányok● Andrew S. Tannenbaum, Albert S. Woodhull –

Operációs rendszerek (tervezés és implementáció)● Petrényi József – TCP/IP Alapok● Yahoo Developer Network - Best Practices for

Speeding Up Your Web Site● Adam Charnock – The Hitchhikers Guide to PHP

Load Balancing● Pásztor János – Nagy terhelésű rendszerek

fejlesztése (Weblabor)● David Heinemeier Hansson – The secret to making

money online

Még kérdések?(Most van vége.)

Képek

● http://www.wireshark.org/● http://kcachegrind.sourceforge.net/● http://www.monit.org/● http://www.munin.org/● http://www.nagios.org/● http://www.canihazcheezburger.com/● http://www.flickr.com/photos/djackmanson/3729849415/● http://www.flickr.com/photos/43235804@N04/4425128655● http://www.flickr.com/photos/gibbons/2294375187/

Jövő hétenSimon Bence: Objektum orientált programozás PHP nyelven

(második rész)

Akik segítettekBarabás Réka (DotRoll), Hirling Endre (DoclerWeb), Schmidt

Zoltán (Duodecad), Rajcsányi Zoltán (partifotosok.hu)

Linkshttp://www.doclerholding.com/

http://www.facebook.com/doclerakademiahttp://www.slideshare.net/janoszen

top related