martes, 10 de septiembre de 2013

Colas de Tarea o Colas de Mensaje

En nuestro actual escenario donde estamos rodeados del famoso "Big Data" requeríamos de una forma de poder controlar el flujo de información que por su gigantesca proporción no podía ser trasladada de un solo golpe, he hay cuando un concepto viejo para mucho llega a solucionar un problema real del nuestro presente, las colas.... si esas ese tipo de estructura de datos que nos enseñaron en la universidad donde el primero que entraba era el primero en salir. 

Bajo el control FIFO podemos tener el control de las tareas o mensajes pueden ser cualquier cosa que podamos enviar a una cola, en la actualidad existen muchas herramientas especializadas en este tipo de trabajos una de ellas RabbitMQ, o Rabbit Message Queue. Cola de Mensajes en español, pero también existe otro tipo de soluciones creadas en diferentes lenguajes de programación como Kestrel que mezcla de Scala, Ruby y Shell lo que permite algo muy avanzado y que actualmente es usado por foursquare, también tenemos ActiveMQ de la Apache Foundation, pero como para mi siempre debemos llegar al origen les mostrare un ejemplo donde implementar una cola de tareas o mensajes en JavaScript útil para cuando necesitemos realizar ejecuciones de funciones que a su ves tienes llamadas Ajax y estas a su ves están obligadas a ser sincronizadas. bueno aquí se los dejo.

    var cola = [];
    cola.push(funcion1);
    cola.push(function2);
    cola.push(function3);
    cola.push(function4);
    cola.push(finalfunction);
    var u = 0;
    var estados = ['function1','function2','function3','function4','finalfunction'];
    while (cola.length > 0) {
     console.log(u+' '+estados[u]);
      (cola.shift())();
     ++u;
    }


Una forma mas sencilla de entender el procedimiento.

No hay comentarios:

Publicar un comentario

Sigueme