Estructura Líder/Trabajador en Erlang

Erlang es muy bueno para programación distribuida, y paralela, y concurrente, así mismo se hace muy simple la creación de servidores, tal y como he mostrado en entradas anteriores (servidor UDP y servidor TCP), pero nos queda una tipo de comportamiento que es algo complejo llevar a la práctica. Me refiero al paradigma de Maestro-Esclavo.

Leer más =>>

UUID: Identificador Único Universal

Últimamente, cada más sistemas, y cada más sitios emplean algo llamado UUID, cuyas siglas vienen a decir: Universally Unique ID; aunque suene algo arrogante, el cálculo de un UUID casi que podríamos decir que garantiza el que sea único. Es más, su grado de colisión es tan bajo que si lo colocásemos como identificador de clave primaria de una tabla que alberga elementos recogidos aleatoriamente de otras tablas de bases de datos de todo el mundo, que hayan empleado este tipo de dato, garantizamos que no habrá repetidos.

Suena excitante, pero...

Leer más =>>

Cassandra: la NoSQL de Facebook

Tras haber visto Riak un poco más de cerca, ahora le toca el turno a Cassandra. Esta base de datos NoSQL fue desarrollada en el seno de Facebook, como una de sus 7 tecnologías clave. En 2008 fue donada a Apache y desde entonces su popularidad ha ido creciendo cada vez más.

Leer más =>>

Riak: Revisando y Practicando

Después de la introducción que hice ya hace unos meses sobre la teoría en la que se fundamenta esta base de datos, me he dispuesto a someterla a unas pruebas de funcionamiento, para así aprender a manejar de forma apropiada esta herramienta.

Leer más =>>

No, Erlang no es eso

Vale, después de leer varios artículos que llevan a lo mismo, intentar meter la orientación a objetos en Erlang (y como estos otros ejemplos más que no citaré de momento).

Leer más =>>

Go: El lenguaje de Google

Hace un par de años que escuché que Google trabajaba en un lenguaje, y hace poco que ya había visto la luz una versión estable, la primera. ¿La has probado ya? ¡Demos un repaso!

Leer más =>>

Erlang: Servidores Concurrentes TCP

Para la programación de elementos que requieran concurrencia, Erlang, es una de las mejores elecciones que se puede tomar. El hecho de construir servidores UDP con los mecanismos que nos ofrece OTP es algo trivial, muy simple de conseguir, tal y como se puede ver en este otro artículo, pero la cosa se complica, cuando lo que queremos obtener es una conexión, o un conjunto de conexiones concurrentes para TCP.

Leer más =>>

Clean Code: para ser mejor programador

Dando un repaso a mi biblioteca he vuelto a topar con un libro que me llamó la atención antaño, leí aunque muy por encima y, hoy dándole otro repaso he pensado, ¡qué razón tiene!

Leer más =>>

Erlang: Servidores UDP

Una de las grandes potencias de Erlang es su capacidad para construir servidores. A través de OTP, esta tarea se convierte en algo tan sencillo, que asombra ver con qué pocas líneas de código se crea un servidor.

Leer más =>>

Charla: Gestión de Llamadas con Erlang/OTP

Este será el título de la charla, dentro de la erlounge de mañana, que daré en la Universidad Complutense de Madrid, organizado por el grupo de usuarios de Erlang de Madrid. Hace tiempo que no doy una charla y la verdad, ya lo echaba de menos, sobretodo de este tema que me tiene tan motivado últimamente.

Leer más =>>

¿Qué es el Código Ravioli?

Leyendo un documento sobre Erlang, en el que introduce el concepto de módulos parametrizados, encuentro un aviso que dice (traducido): cuidado con el código Ravioli. Por lo que llego a preguntarme... ¿qué es el código Ravioli?

Leer más =>>

V8: Extendiendo PHP

Hace prácticamente un año escribí un artículo denominado Spidermonkey: extendiendo PHP, donde comentaba como emplear Spidermonkey para poder emplearlo como lenguaje de extensión a un núcleo sencillo hecho en PHP.

Leer más =>>