4. Problemas típicos
Posible solución
Problema Específica de PHP
específica
Lenguaje
APC Sí
interpretado
Demasiados accesos
Memcached No
a BBDD
Servidores de
aplicaciones Varnish
No
ofreciendo CDN
contenidos estáticos
Páginas (resultado
final HTML) PageSpeed No
mejorables
Replicación activa o
Crecimiento limitado
pasiva No
de BBDD
NoSQL
5. Problemas típicos
Posible solución
Problema Específica de PHP
específica
Lenguaje
APC Sí
interpretado
Demasiados accesos
Memcached No
a BBDD
Servidores de
aplicaciones Varnish
No
ofreciendo CDN
contenidos estáticos
Páginas (resultado
final HTML) PageSpeed No
mejorables
Replicación activa o
Crecimiento limitado
pasiva No
de BBDD
NoSQL
6. APC
Según php.net: “La APC, o caché alternativa de
PHP (por sus siglas en inglés), es un código de
operación de caché libre y abierto para PHP. Su
objetivo es el de proporcionar un marco robusto,
libre y abierto para optimizar código de PHP
intermedio mediante el almacenamiento en
caché“
Artículo en 21 RedES aquí.
7. Problemas típicos
Posible solución
Problema Específica de PHP
específica
Lenguaje
APC Sí
interpretado
Demasiados accesos
Memcached No
a BBDD
Servidores de
aplicaciones Varnish
No
ofreciendo CDN
contenidos estáticos
Páginas (resultado
final HTML) PageSpeed No
mejorables
Replicación activa o
Crecimiento limitado
pasiva No
de BBDD
NoSQL
8. Memcached
Según el sitio oficial es: “Un sistema distribuido de
cacheo de objetos en memoria, libre, de código abierto,
de alto rendimiento y de naturaleza genérica, pensado
para acelerar aplicaciones web dinámicas, aliviando la
carga en Bases de Datos (BBDD)”.
Es un almacén en memoria de clavevalor (keyvalue) de
pequeños trozos de datos arbitrarios (cadenas de
caracteres, objetos) extraídos de BBDD, llamadas a API,
o fragmentos de páginas”
Artículo en 21 RedES aquí.
9. Problemas típicos
Posible solución
Problema Específica de PHP
específica
Lenguaje
APC Sí
interpretado
Demasiados accesos
Memcached No
a BBDD
Servidores de
aplicaciones Varnish
No
ofreciendo CDN
contenidos estáticos
Páginas (resultado
final HTML) PageSpeed No
mejorables
Replicación activa o
Crecimiento limitado
pasiva No
de BBDD
NoSQL
10. Varnish y CDN
Según la documentación oficial de Varnish: “es
un acelerador de aplicaciones Web. Su misión es
colocarse enfrente de Servidores Web y cachear
su contenido”.
Artículo de Varnish en 21 RedES aquí.
Vale, no hablarás de CDN (Content Delivery
Network), pero dime al menos para qué sirve...
Wikipedia tiene un gráfico que nos viene como
anillo al dedo.
11. Problemas típicos
Posible solución
Problema Específica de PHP
específica
Lenguaje
APC Sí
interpretado
Demasiados accesos
Memcached No
a BBDD
Servidores de
aplicaciones Varnish
No
ofreciendo CDN
contenidos estáticos
Páginas (resultado
final HTML) PageSpeed No
mejorables
Replicación activa o
Crecimiento limitado
pasiva No
de BBDD
NoSQL
12. PageSpeed
Es un proyecto de Google con varios
componentes que buscan optimizar el
rendimiento de páginas Web.
Yo voy a hablarles del módulo para Apache
HTTP Server, mod_pagespeed, que
automáticamente reescribe páginas y recursos
relacionados para mejorar su rendimiento.
PageSpeed reescribe los recursos servidos por el
Apache siguiendo un conjunto de
buenas prácticas.
13. PageSpeed
El conjunto de buenas prácticas buscan la:
optimización de cacheo, minimización de los
RTT (roundtrip times), minimización de la
sobrecarga de peticiones, minimización del
tamaño de la carga útil del paquete (payload),
optimización de la representación (rendering) en
el navegador y optimización para móviles
Artículo en 21 RedES aquí.
14. Problemas típicos
Posible solución
Problema Específica de PHP
específica
Lenguaje
APC Sí
interpretado
Demasiados accesos
Memcached No
a BBDD
Servidores de
aplicaciones Varnish
No
ofreciendo CDN
contenidos estáticos
Páginas (resultado
final HTML) PageSpeed No
mejorables
Replicación activa
Crecimiento limitado
o pasiva No
de BBDD
NoSQL
15. Replicación activa-pasiva y
NoSQL
Cuando no consigo imágenes que me convenzan
en Google, me toca hacer estos horribles
gráficos :)
Ejemplo replicación pasiva (maestro>esclavo)
con MySQL en camposertechie.
C: Create
R: Retrieve/Read
U: Update
CRUD CRUD D: Delete CUD R
CRUD CUD
Maestro-Maestro Maestro-Esclavo
(activa) (pasiva)
16. Replicación activa-pasiva y
NoSQL
Vale la pena echarle un ojo a la solución Maestro
Maestro de Percona (MySQL ”envenenao”)
XtraDB.
Y acerca de NoSQL, que no estaba en el
temario... Les dejo la definición de Martin
Fowler, no encuentro una mejor :)
¿Not Only SQL o NO SQL? En todo caso,
almacenan objetos y la mayoría se valen de
operaciones MapReduce para procesar datos.
Súper útil en esquemas BigData.
17. Me perdí, ubicame en el mapa,
dame un ejemplo...
Podría ir a una CDN
En este ejemplo son
Servidores de Aplicaciones
Java, pero si fuese PHP,
Podríamos Instalar APC!!
Cortesía de Letsgetdugg