View
802
Download
2
Category
Preview:
DESCRIPTION
Charla de Matías Montes titulada "Optimización y Escalabilidad" en las Primeras Charlas del Grupo PHP Argentina
Citation preview
2. Quin soy yo? Matas Montes (Barbazul) Developer @ SemExpert [email_address] YO ElePHPant 3. De que estamos hablando?
4. Escalabilidad:[...] es la propiedad deseable de un sistema, una red o un proceso, que indica su habilidad para extender el margen de operaciones sin perder calidad, o bien manejar el crecimiento continuo de trabajo de manera fluida, o bien para estar preparado para hacerse ms grande sin perder calidad en los servicios ofrecidos. Fuente: Wikipedia 5. De qu hablamos realmente? 6. El modelo 3-tier YO $ $ $ 7. Crear sistemas escalables
8. Conocer las limitaciones 9. Conocer los recursos 10. Monitorear y medir el crecimiento 11. Optimizar, siempre optimizar 12. Estudiar para bombero 13. Cuatro cuadrantes de una web app Fuente: Flaptor No escala Pocos usuarios Escala Pocos usuarios No escala Muchos usuarios Escala Muchos usuarios Popularidad Escalabilidad HEAVEN 14. Estrategias para crear sistemas escalables 15. Escalabilidad Vertical
16. Escalabilidad Horizontal
17. Webservers
18. Mirroring 19. CDNs BBDDs
20. Sharding 21. La estrategia del NO
22. NO uses el server 23. NO uses cualquier recurso limitado siempre que puedas evitarlo 24. Herramientas (algunas nomas) 25. APC
26. Cache de datos en memoria (local) 27. Permite manejar un pool de datos persistente entre pedidos 28. Los datos se guardan como Bytecode 29. El acceso es mediante clave-valor 30. Ideal para NO usar la base 31. Memcached
32. Soporta multiples servidores (divide y venceras) 33. Los datos se guardan serializados como strings 34. Permite zipear los datos para optimizar el espacio 35. Incluye un handler de sesiones 36. Sphinx
37. Permite trabajar con tablas InnoDB 38. Algunos features interesantes como stopwords, ranking, proximidad de terminos, etc. 39. Soporta indices distribuidos 40. 100% PHP 41. Soporte para MySQL, PostgreSQL y XML 42. Todavia se queda atras de soluciones basadas en Lucene (como Solr o Houndr) tanto en escalabilidad como en features 43. Gearman
44. Las tareas se pueden monitorear o realizar asincrnicamente 45. Permite liberar la carga del server y dar respuestas mas rapido 46. Para seguir leyendo Yslow! http://developer.yahoo.com/yslow/ Page Speed http://code.google.com/speed/page-speed/ Web Scaling: http://www.webscalingblog.com/ MySQL Performance: http://www.mysqlperformanceblog.com/ APC: http://php.net/manual/en/book.apc.php Memcached: http://memcached.org/ Sphinx: http://www.sphinxsearch.com/ Solr: http://lucene.apache.org/solr/ Hounder:http://hounder.org/ Gearman: http://gearman.org/ 47. Dudas? Reclamos?
Recommended