SlideShare una empresa de Scribd logo
Entonamiento de
aplicaciones Web
  (Enfasis en PHP)


            Rodolfo Campos
      Joincic, 26 de Mayo de 2012

              @camposer
  Presentación disponible en 21 RedES
Agenda
   La Web y PHP
   Problemas típicos
   Soluciones típicas
   ¿Con qué se come?
   Preguntas
La Web y PHP




         Cortesía de Delta PC
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
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
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í.
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
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 clave­valor (key­value) 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í.
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
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.
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
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.
PageSpeed
   El conjunto de buenas prácticas buscan la: 
    optimización de cacheo, minimización de los 
    RTT (round­trip 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í.
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
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 camposer­techie.
                          C: Create
                          R: Retrieve/Read
                          U: Update
    CRUD           CRUD   D: Delete          CUD          R

           CRUD                                    CUD



      Maestro-Maestro                         Maestro-Esclavo
         (activa)                                (pasiva)
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.
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
Más ejemplos... ¿Con qué se
         come?
¡Muchas gracias
por su atención!


           Rodolfo Campos
     Joincic, 26 de Mayo de 2012

             @camposer
 Presentación disponible en 21 RedES

Más contenido relacionado

Similar a Entonamiento de aplicaciones Web (Enfasis en PHP)

Desarrollo en la nube
Desarrollo en la nubeDesarrollo en la nube
Desarrollo en la nube
PideCurso
 
Tecnologías para paginas Dinamicas del lado del servidor
Tecnologías para paginas Dinamicas del lado del servidorTecnologías para paginas Dinamicas del lado del servidor
Tecnologías para paginas Dinamicas del lado del servidor
Jonathan Guerrero Pacori
 
Tecnologias para paginas Web Dinamicas del lado del Servidor
Tecnologias para paginas Web Dinamicas del lado del ServidorTecnologias para paginas Web Dinamicas del lado del Servidor
Tecnologias para paginas Web Dinamicas del lado del Servidor
Jonathan Guerrero Pacori
 
Tema 1
Tema 1Tema 1
Tema 1
avalver2
 
My sql
My sqlMy sql
My sql
astrgonl
 
My Sql
My SqlMy Sql
My Sql
astrgonl
 
MySQL Team – Open Day Oracle 2013
MySQL Team – Open Day Oracle 2013MySQL Team – Open Day Oracle 2013
MySQL Team – Open Day Oracle 2013
Erik Gur
 
Tecnicas y extensiones para Java de tiempo real
Tecnicas y extensiones para Java de tiempo realTecnicas y extensiones para Java de tiempo real
Tecnicas y extensiones para Java de tiempo real
Universidad Carlos III de Madrid
 
Jdbc
JdbcJdbc
Lenguajes de programacion web
Lenguajes de programacion webLenguajes de programacion web
Lenguajes de programacion web
infobran
 
Lenguajes de programacion web
Lenguajes de programacion webLenguajes de programacion web
Lenguajes de programacion web
Colegio Agropecuario de San Carlos
 
Jdbc
JdbcJdbc
Jdbc Mysql
Jdbc MysqlJdbc Mysql
¿Que es javascript y Modulos?
¿Que es javascript y Modulos?¿Que es javascript y Modulos?
¿Que es javascript y Modulos?
DannyStevenRuizHerna
 
Jdbc lenguaje de programación
Jdbc lenguaje de programaciónJdbc lenguaje de programación
Jdbc lenguaje de programación
Eysin Lorenzo Delgado Mejía
 
Lenguaje de programacion con so
Lenguaje de programacion con soLenguaje de programacion con so
Lenguaje de programacion con so
Liliana Berenice Rosales Amezcua
 
Jdbc
JdbcJdbc
My sql ha-fina_lv2
My sql ha-fina_lv2My sql ha-fina_lv2
My sql ha-fina_lv2
Mysql Latinoamérica
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
olguisf
 
los diferentes lenguajes de programación para-la-web
 los diferentes lenguajes de programación para-la-web los diferentes lenguajes de programación para-la-web
los diferentes lenguajes de programación para-la-web
olguisf
 

Similar a Entonamiento de aplicaciones Web (Enfasis en PHP) (20)

Desarrollo en la nube
Desarrollo en la nubeDesarrollo en la nube
Desarrollo en la nube
 
Tecnologías para paginas Dinamicas del lado del servidor
Tecnologías para paginas Dinamicas del lado del servidorTecnologías para paginas Dinamicas del lado del servidor
Tecnologías para paginas Dinamicas del lado del servidor
 
Tecnologias para paginas Web Dinamicas del lado del Servidor
Tecnologias para paginas Web Dinamicas del lado del ServidorTecnologias para paginas Web Dinamicas del lado del Servidor
Tecnologias para paginas Web Dinamicas del lado del Servidor
 
Tema 1
Tema 1Tema 1
Tema 1
 
My sql
My sqlMy sql
My sql
 
My Sql
My SqlMy Sql
My Sql
 
MySQL Team – Open Day Oracle 2013
MySQL Team – Open Day Oracle 2013MySQL Team – Open Day Oracle 2013
MySQL Team – Open Day Oracle 2013
 
Tecnicas y extensiones para Java de tiempo real
Tecnicas y extensiones para Java de tiempo realTecnicas y extensiones para Java de tiempo real
Tecnicas y extensiones para Java de tiempo real
 
Jdbc
JdbcJdbc
Jdbc
 
Lenguajes de programacion web
Lenguajes de programacion webLenguajes de programacion web
Lenguajes de programacion web
 
Lenguajes de programacion web
Lenguajes de programacion webLenguajes de programacion web
Lenguajes de programacion web
 
Jdbc
JdbcJdbc
Jdbc
 
Jdbc Mysql
Jdbc MysqlJdbc Mysql
Jdbc Mysql
 
¿Que es javascript y Modulos?
¿Que es javascript y Modulos?¿Que es javascript y Modulos?
¿Que es javascript y Modulos?
 
Jdbc lenguaje de programación
Jdbc lenguaje de programaciónJdbc lenguaje de programación
Jdbc lenguaje de programación
 
Lenguaje de programacion con so
Lenguaje de programacion con soLenguaje de programacion con so
Lenguaje de programacion con so
 
Jdbc
JdbcJdbc
Jdbc
 
My sql ha-fina_lv2
My sql ha-fina_lv2My sql ha-fina_lv2
My sql ha-fina_lv2
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
 
los diferentes lenguajes de programación para-la-web
 los diferentes lenguajes de programación para-la-web los diferentes lenguajes de programación para-la-web
los diferentes lenguajes de programación para-la-web
 

Último

mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
AMADO SALVADOR
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
bendezuperezjimena
 
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
alejandromanuelve
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
AMADO SALVADOR
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Festibity
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
ValeriaAyala48
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
larapalaciosmonzon28
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
AMADO SALVADOR
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
JimmyTejadaSalizar
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
Miguel Rebollo
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
maralache30
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 

Último (20)

mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
 
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 

Entonamiento de aplicaciones Web (Enfasis en PHP)

  • 1. Entonamiento de aplicaciones Web (Enfasis en PHP) Rodolfo Campos Joincic, 26 de Mayo de 2012 @camposer Presentación disponible en 21 RedES
  • 2. Agenda  La Web y PHP  Problemas típicos  Soluciones típicas  ¿Con qué se come?  Preguntas
  • 3. La Web y PHP Cortesía de Delta PC
  • 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 clave­valor (key­value) 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 (round­trip 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 camposer­techie. 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
  • 18. Más ejemplos... ¿Con qué se come?
  • 19. ¡Muchas gracias por su atención! Rodolfo Campos Joincic, 26 de Mayo de 2012 @camposer Presentación disponible en 21 RedES