Successfully reported this slideshow.

Performance Now! Was tun bei Besucherspitzen?

0

Share

1 of 18
1 of 18

Performance Now! Was tun bei Besucherspitzen?

0

Share

Download to read offline

Performance Now! Was tun bei Besucherspitzen? von Martin Reichard, LOTUM, am 7. Februar 2011 beim 7. Webmontag.talk in Manhheim.

Performance Now! Was tun bei Besucherspitzen? von Martin Reichard, LOTUM, am 7. Februar 2011 beim 7. Webmontag.talk in Manhheim.

More Related Content

Related Audiobooks

Free with a 14 day trial from Scribd

See all

Performance Now! Was tun bei Besucherspitzen?

  1. 1. Performance Now!<br />Was tun bei Besucherspitzen?<br />Performance Now!<br />
  2. 2. Ich<br />Martin Reichard<br />CEO & Head of Technology<br />28 Jahre alt<br />Informatik: FH Gießen und Uni Karlsruhe<br />reichard@lotum.de<br />@Mart_out<br />
  3. 3. LOTUM<br /><ul><li> Seit 2006
  4. 4. Bad Nauheim
  5. 5. Schueler.CC
  6. 6. Revolution</li></li></ul><li>Schueler.CC<br />Zweitgrößtes deutsches Schülernetzwerk<br />Über 2 Mio. angemeldete Schüler<br />Von Reichweite her in Top10 der deutschen Websites (laut IVW)<br />
  7. 7. Situation<br /><ul><li> Website
  8. 8. plötzlicher Besucheransturm
  9. 9. Server überlastet
  10. 10. Website langsam</li></ul>=><br />http://www.flickr.com/photos/72969187@N00/248272298/<br />http://www.flickr.com/photos/lynac/321100379/<br />
  11. 11. Voraussetzungen<br /><ul><li>MySQL
  12. 12. PHP
  13. 13. noch kein ausgereiftes Server-Cluster</li></li></ul><li>Oh mein Gott! Was soll ich machen?!<br /><ul><li>Don‘t Panic!
  14. 14. Überblick verschaffen
  15. 15. kein purer Aktionismus (wie z.B. Micro-Optimierungen)</li></ul>http://www.flickr.com/photos/lifeontheedge/416514144/<br />
  16. 16. InnoDB statt MyIsam<br /><ul><li>mysql> SHOW PROCESSLIST;
  17. 17. häufig „locked“?</li></ul>=> evtl. InnoDB statt MyIsam<br />
  18. 18. my.cnf<br /><ul><li>max_connections = ?
  19. 19. innodb_buffer_pool_size = ?</li></ul>(RAM sollte sinnvoll ausgenutzt werden)<br /><ul><li>innodb_flush_log_at_trx_commit = 0
  20. 20. innodb_flush_method = O_DIRECT</li></li></ul><li>Query-Optimierung<br />mysqldumpslow /var/log/mysql/mysql-slow.log | less<br />Oder besser:<br />
  21. 21. Query-Optimierung: Indizes<br />mysql> SELECT COUNT(*) FROM wm_tip WHERE Goals_Team1=1;<br />+----------+<br />| count(*) |<br />+----------+<br />| 1092778 | <br />+----------+<br />1 row in set (0.87 sec)<br />mysql> EXPLAIN SELECT COUNT(*) FROM wm_tip WHERE Goals_Team1=1;<br />+----+-------------+---------+------+------------------+------------------+---------+-------+---------+-------------+<br />| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |<br />+----+-------------+---------+------+------------------+------------------+---------+-------+---------+-------------+<br />| 1 | SIMPLE | wm_tip | ALL | NULL | NULL | NULL | NULL | 3029244 | Usingwhere | <br />+----+-------------+---------+------+------------------+------------------+---------+-------+---------+-------------+<br />1 row in set (0.02 sec)<br />
  22. 22. Query-Optimierung:<br />weitere Möglichkeiten<br /><ul><li> direkte Optimierung
  23. 23. Caching (z.B. mit memcache)</li></ul>$memcache = new Memcache;<br />$memcache->connect('localhost', 11211);<br />$memcache->set('key', $variable, false, 60);<br />$get_result = $memcache->get('key');<br />
  24. 24. Webserver<br />http://www.flickr.com/photos/swift/315996596/<br />
  25. 25. Webserver<br /><ul><li>OpCode-Caching
  26. 26. APC, eAccelerator, Xcache
  27. 27. http://en.wikipedia.org/wiki/List_of_PHP_accelerators</li></ul>http://www.flickr.com/photos/renaissancechambara/2288556895/<br />
  28. 28. Webserver: Sessions<br /><ul><li>Sessions in Memcache ablegen
  29. 29. einfach php.ini anpassen</li></ul>session.save_handler = memcachesession.save_path="<memcache_server>:11211?persistent=1&weight=1&timeout=1&retry_interval=15"<br />
  30. 30. Auf lange Sicht<br /><ul><li> Umfassendes Monitoring
  31. 31. Skalierbares Serversystem
  32. 32. Replikation / Sharding
  33. 33. Sphinx / SolR
  34. 34. NoSQL
  35. 35. Individuelle Technologien
  36. 36. Cloud?
  37. 37. ...</li></li></ul><li>lotum.de<br /><ul><li> Spannende Aufgaben
  38. 38. gute (und nette) Kollegen
  39. 39. viel Freiheit
  40. 40. viel Spaß</li></ul>Fragen?<br />
  41. 41. lotum.de<br /><ul><li> Spannende Aufgaben
  42. 42. gute (und nette) Kollegen
  43. 43. viel Freiheit
  44. 44. viel Spaß</li></ul>Fragen?<br />

×