|
PHP: Comprimir la salida del servidor para ahorrar ancho de banda |
| 23 de Julio de 2008 |
|
En un proyecto en el que estoy trabajando actualmente se requiere generar un XML con datos tratados, para que un código Javascript monte un grid a modo de Excel online.
El problema viene cuando la cantidad de registros se vuelve grande… En unas pruebas con registros de producción nos encontramos que el grid se demoraba mucho en mostrarse… Pusimos algunas alertas y llegamos a la conclusión que de 20 segundos que tardaba en montarse el grid, sólo 5 correspondían a la generación del XML y el resto era tráfico de red y proceso javascript.
Pero cuánto pesa el XML? Un mega y medio de XML? Y cómo lo hacemos más pequeño para generar menos tráfico y ganar tiempo? Comprimiendo el XML de salida…
Leer más »
Tag: |
|
|
| |
|
SFTPDrive: Mapeando una unidad en Windows via SSH |
| 11 de Diciembre de 2007 |
|
Pues bién, la herramienta de hoy es SFTPDrive, una sencilla herramienta (de pago) que cubre una necesidad en Windows fácilmente solucionada en Linux: el acceso cómodo a la estructura de directorios de un servidor remoto via SSH.
En Linux podemos montar casi cualquier cosa en un directorio, sea algo local (USBs, CDs, …) o remoto (Samba, NFS, …). Mi caso particular se centra en conexiones SSH. En Linux podemos usar sshfs para montar en un directorio el árbol de un servidor remoto al que tenemos acceso por SSH. En cambio, en Windows no es tan fácil.
En Windows existe esta utilidad, SFTPDrive, a la que le configuramos el acceso SSH y nos monta una unidad nueva como si de una unidad mapeada se tratase.
Leer más »
Tag: |
|
|
| |
|
netstat: Listar las conexiones abiertas |
| 19 de Octubre de 2007 |
|
En Linux, para listar las conexiones abiertas, incluso las que sólo estén escuchando un puerto sin transmitir nada, podemos usar netstat. En mi caso, usando netstat con los siguientes parámetros obtengo un listado de interfícies, estado de la conexión y PID/programa que lo ejecuta, muy útil:
netstat -tapn
Para saber el significado de los estados, consultando la Wikipedia tenemos:
- ESTABLISHED El socket tiene una conexión establecida
- SYN_SENT El socket está intentando iniciar una conexión
- SYN_RECV Una petición de conexión fue recibida por la red
- FIN_WAIT1 El socket está cerrado, y la conexión esta finalizándose
- FIN_WAIT2 La conexión esta cerrada, y el socket está esperando que finalice la conexión remota
- TIME_WAIT El socket está esperando después de cerrarse que concluyan los paquetes que siguen en la red
- CLOSED El socket no está siendo usado
- CLOSE_WAIT La conexión remota ha finalizado, y se espera que se cierre el socket
- LAST_ACK La conexión remota ha finalizado, y se espera que se cierre el socket. Esperando el acknowledgement.
- LISTEN El socket está esperando posibles conexiones entrantes
- CLOSING Ambos sockets han finalizado pero aun no fueron enviados todos los datos
- UNKNOWN El estado del socket no se conoce
Tag: |
|
|
| |
|
PHP y WDDX: Comunicación entre aplicaciones |
| 03 de Agosto de 2007 |
|
Recientemente he descubierto y usado una forma para pasar variables de una aplicación web a otra usando un formato estándar: el WDDX.
WDDX son las siglas que definen Intercambio de Datos en Webs Distribuidas (Web Distributed Data Exchange). Básicamente, es un estándar XML para el intercambio de información estructurada entre lenguajes de programación. Podemos visitar OpenWDDX para ampliar información.
Si nos centramos en PHP, tenemos que ya vienen incorporadas unas funciones para trabajar con WDDX y nos deja centrarnos en el proyecto propiamente.
En éste artículo propongo un ejemplo orientado a un Web Service para explicar su funcionamiento.
Leer más »
Tag: |
|
|
| |
|
|