Liberalización de los nombres de dominio en Internet

Aún cuando todavía no me he recuperado de la resaca del 0 a 3 ante Rusia, no quería dejar pasar la oportunidad de comentar la liberalización de las extensiones de dominio (TLD) acordada ayer por la ICANN y que entrará en vigor a partir del primer semestre de 2009.

Este es el camino necesario para poder seguir manteniendo el sistema de nombres ante el crecimiento exponencial que mantiene el registro de nombres en Internet. Si lo unimos a que las direcciones IP disponibles con IPv4 escasea y que IPv6 pondría una reserva de direcciones IP disponibles casi ilimitada (pasaríamos de 32 a 128 bits), el futuro está claro: liberalización de TLD y tecnologia IPv6.

Por una parte la liberalización de TLD dejaría la puerta abierta al registro de casi cualquier frase como por ejemplo: necesito.amor, soy.informatico o camino.de.santiago. Con esto se solucionarían los quebraderos de cabeza de quien quiere lanzar un nuevo proyecto empresarial que actualmente obliga a pasarse horas buscando un nombre disponible y adecuado a sus necesidades, pudiendo registrar algo.mimarca.

En el otro extremo estaría ver que es lo que ocurriría con las actuales extensiones de dominio tradicionales (.com, .net, .org, .es, etc). ¿Seguirán manteniendo su valor?

Symbian el inicio de una plataforma libre

Que Nokia tenia una posición estratégica dentro de Symbian no era ningún secreto, y que además necesitaba hacer algo para frenar la entrada de Google (Android) en el negocio móvil, tampoco. La compra del 52% restante de Symbian no ha sido más que la conclusión lógica de lo que debería haber pasado.

Pero no todo son buenas noticias para Nokia, convertir Symbian en la Fundación Symbian y liberar su código bajo una licencia Eclipse no serán más que nuevos quebraderos de cabeza para Nokia. Enrique Dans hace una reflexión bastante interesante sobre el gigante de la tecnologia móvil, si quiere que funcione tendrá que hacer una apuesta clara y decidida por es liberalización para que a su alrrededor se forme una verdadera comunidad de desarrollo y se propicien nuevas oportunidades de negocio.

Firefox 3 y el Download Day


El próximo 17 de junio es la fecha elegida para el lanzamiento de Firefox 3, aunque muchos lo vengamos utilizando desde la versión beta. Aprovechando la ocasión se intentará batir un nuevo record Guinnes de descargas de un mismo software en 24 horas.

De momento en web del Download Day hay 1.106.624 personas en todo el mundo que se han comprometido a hacer la descarga ese día. Por paises, a la cabeza se sitúa Estados Unidos con 181.857 personas comprometidas, en Europa lleva la delantera Polonia con 79.607 y en España hay un total de 37.735.

Jornadas sobre Software Libre en Coruña

La asociación cultural olholivre celebra en A Coruña unas jornadas sobre Software Libre durante esta y la próxima semana. Las charlas y talleres se celebrarán en dos emplazamientos: la CSA Atreu y la Casa das Atochas, ambas en MonteAlto.

Pincha para ampliar

Primera PHP Barcelona Workshop

Para el próximo 7 de junio de 2008, el grupo de programadores PHP de Barcelona han organizado la primera PHP Barcelona Workshop.Tal y como comentan ellos mismos tras la pasada Barcelona PHP Conference se habían quedado con ganas de algo más práctico y han organizado este conjunto de talleres de PHP.
Los talleres estarán dedicados a:

  • Construir una pequeña red social con Symfony
  • Trabajar con motores de workflow
  • internacionalización de proyectos PHP
  • VIM como IDE para PHP
  • Modernizar páginas con AJAX
  • Seguridad y Site-Cross-Scripting (XSS)

Desde la organización del evento se recomienda llevar un portatil con conexión wifi, soporte FTP, SMB o NFS, editor de código PHP, cliente SSH, cliente MySQL y navegador web.
La PHP Barcelona Workshop se celebrará en el Citilab de Cornellá y el aforo es de 200 personas. El precio de la asistencia es de 5 € por persona, un coste totalmente simbolico si tenemos en cuenta que se incluye la asistencia y comida.
El próximo sábado, entre las 9:30 y las 20:00 estaré completamente dedicado a PHP asistiendo a los talleres. A pesar de ser un evento totalmente recomendable, tengo una pequeña pega, por la mañana es necesario decidir a que taller queremos asistir entre dos propuestas, y a mi personalmente me gustaría asistir a ambas.

Instalar eAccelerator

Una de las formas de mejorar el rendimiento de un servidor con páginas web en PHP es la instalación de un sistema cache como módulo del intérprete de PHP instalado en el servidor. El uso de estos sistemas puede mejorar el rendimiento del servidor entre un 20% y un 50%. Entre los sistemas más populares que podemos encontrar se encuentran Zend Optimizer, IonCube o eAccelerator.
Vamos a centrarnos en éste último y veremos como instalarlo paso a paso sobre un servidor Linux desde los fuentes. Para poder compilar correctamente eAccelerator debes tener instalado phpize, en Fedora puedes obtenerlo usando yum install php-devel, en Debian apt-get install php-dev.
Lo primero es descargar el paguete correspondiente a la última versión de eAccelerator (en este caso la 0.9.5.3). Podemos elegir descargarlo en .tar.bz2 o .zip, usaremos el .tar.bz2 y lo descargamos, descomprimimos y entramos en el directorio:

wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2
tar jvxf eaccelerator-0.9.5.3.tar.bz2
cd eaccelerator-0.9.5.3

Una vez dentro del directorio, vamos a empezar a compilar los fuentes. Si sólo tienes un intérprete de PHP instalado (suele ser lo más habitual) puedes ejecutar:

phpize
./configure
make

En caso de tener más de una instalación deberás indicar donde se encuentra la que quieres usar. Sustituye la ruta en la primera línea (/usr/php) por aquella donde tengas instalado PHP:

PHP_PREFIX="/usr/php"
$PHP_PREFIX/bin/phpize
./configure –enable-eaccelerator=shared –with-php-config=$PHP_PREFIX/bin/php-config
make

Realizado esto ya tenemos el módulo preparado para su instalación, ejecutamos:
make install
Una vez terminada la instalación se nos mostrará la ruta donde se ha copiado el módulo del eAccelerator que debemos configurar en el php.ini, si todo ha ido bien debes tener algo como esto:

Installing shared extensions:    /usr/lib/php/modules/20080501/

Ahora debemos indicar en el php.ini nuestro nuevo módulo para que sea cargado con el intérprete. Abrimos el php.ini, si no sabes donde está localizado ejecuta phpinfo(). Editamos el archivo y buscamos una sección llamada "Dynamic Extensions". Buscamos una directiva llamada extension_dir y la definimos con la ruta donde guardamos las extensiones:

extension_dir = "/usr/php/modulos/"

A continuación agregamos las siguientes líneas que incluyen el nombre del módulo y su configuración:

extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

Guardamos el php.ini y ahora debemos crear el directorio temporal que usará eAccelerator, definido en la configuración que acabamos de agregar al php.ini como eaccelerator.cache, este directorio debe tener permisos de escritura:

mkdir /tmp/eaccelerator/
chmod 777 /tmp/eaccelerator/

Termidamo esto ya tenemos eAccelerator intalado en nuestro servidor. Sólo falta reiniciar apache para que la nueva configuración tenga efecto.

Calcular el tiempo de carga de una página en PHP

Es posible que deseemos conocer el tiempo de carga de una página en PHP, entre otras cosas por saber si está tardando demasiado tiempo en mostrarse al usuario, una de las reazones más frecuentes para que el usuario abandone la web y busque el resultado en otro sitio.

Al principio del documento debemos calcular el tiempo en el momento que comienza a cargarse la página, para ello colocamos el siguiente código:

<?php
// Inicio del documento
// Calculamos segundos y microsegundos desde Epoch Unix
$tiempo = microtime();
// Separamos en un array el tiempo en segundos y en microsegundos
$tiempo = explode(» «,$tiempo);
// Sumamos segundos y microsegundos
$tiempo_inicial = $tiempo[0] + $tiempo[1];
?>

Al final de la página, volvemos a calcular el tiempo en ese momento y calculamos la diferencia entre ambos, imprimiendo el resultado por pantalla.

<?php
// Fin del documento
$tiempo = microtime();
$tiempo = explode(» «,$tiempo);
// Calculamos en tiempo al final del documento
$tiempo_final = $tiempo[0] + $tiempo[1];
// Calculamos en tiempo de carga
$tiempo_carga = $tiempo_final – $tiempo_inicial;
// Redondeamos el valor del flotante a tres decimales
$tiempo_carga = round($tiempo_carga,3);
echo «Pagina generada en {$tiempo_carga} segundos»;
?>

Con esto ya tendríamos calculado el tiempo de carga de una página en PHP. Esto puede ser de gran utilidad para generar tiempos de carga y enviar el resultado a un log o hacer que nos envíe un correo si se supera un determinado tiempo de carga.