entonamiento de aplicaciones web (enfasis en php)

Post on 05-Jul-2015

1.084 Views

Category:

Technology

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Entonamiento de aplicaciones Web(Enfasis en PHP). Agenda:- La Web y PHP- Problemas típicos- Soluciones típicas

TRANSCRIPT

Rodolfo CamposJoincic, 26 de Mayo de 2012

@camposerPresentación disponible en 21 RedES

Entonamiento de aplicaciones Web

(Enfasis en PHP)

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

Problema Posible solución específica

Específica de PHP

Lenguaje interpretado

APC Sí

Demasiados accesos a BBDD

Memcached No

Servidores de aplicaciones ofreciendo contenidos estáticos

VarnishCDN No

Páginas (resultado final HTML) mejorables

PageSpeed No

Crecimiento limitado de BBDD

Replicación activa o pasivaNoSQL

No

Problemas típicos

Problema Posible solución específica

Específica de PHP

Lenguaje interpretado

APC Sí

Demasiados accesos a BBDD

Memcached No

Servidores de aplicaciones ofreciendo contenidos estáticos

VarnishCDN No

Páginas (resultado final HTML) mejorables

PageSpeed No

Crecimiento limitado de BBDD

Replicación activa o pasivaNoSQL

No

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

Problema Posible solución específica

Específica de PHP

Lenguaje interpretado

APC Sí

Demasiados accesos a BBDD

Memcached No

Servidores de aplicaciones ofreciendo contenidos estáticos

VarnishCDN No

Páginas (resultado final HTML) mejorables

PageSpeed No

Crecimiento limitado de BBDD

Replicación activa o pasivaNoSQL

No

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

Problema Posible solución específica

Específica de PHP

Lenguaje interpretado

APC Sí

Demasiados accesos a BBDD

Memcached No

Servidores de aplicaciones ofreciendo contenidos estáticos

VarnishCDN No

Páginas (resultado final HTML) mejorables

PageSpeed No

Crecimiento limitado de BBDD

Replicación activa o pasivaNoSQL

No

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

Problema Posible solución específica

Específica de PHP

Lenguaje interpretado

APC Sí

Demasiados accesos a BBDD

Memcached No

Servidores de aplicaciones ofreciendo contenidos estáticos

VarnishCDN No

Páginas (resultado final HTML) mejorables

PageSpeed No

Crecimiento limitado de BBDD

Replicación activa o pasivaNoSQL

No

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

Problema Posible solución específica

Específica de PHP

Lenguaje interpretado

APC Sí

Demasiados accesos a BBDD

Memcached No

Servidores de aplicaciones ofreciendo contenidos estáticos

VarnishCDN No

Páginas (resultado final HTML) mejorables

PageSpeed No

Crecimiento limitado de BBDD

Replicación activa o pasivaNoSQL

No

Replicación activa-pasiva yNoSQL

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.

Maestro-Maestro(activa)

Maestro-Esclavo(pasiva)

CUD R

CUD

CRUDCRUD

CRUD

C: CreateR: Retrieve/ReadU: UpdateD: Delete

Replicación activa-pasiva yNoSQL

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...

Cortesía de Letsgetdugg

En este ejemplo sonServidores de AplicacionesJava, pero si fuese PHP,Podríamos Instalar APC!!

Podría ir a una CDN

Más ejemplos... ¿Con qué se come?

¡Muchas graciaspor su atención!

Rodolfo CamposJoincic, 26 de Mayo de 2012

@camposerPresentación disponible en 21 RedES

top related