npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

mom-corte-consistente

v1.0.10

Published

Servicio de corte consistente para una arquitectura mom (message-oriented middleware).

Downloads

7

Readme

Corte Consistente

Servicio de corte consistente para una arquitectura mom (message-oriented middleware). Se trata de una implimentacion del algoritmo de instantanea de Chandy-Lamport, para determinar estados globales. Registra un conjunto de estados de procesos y canales, tal que el estado global sea consistente.

alt text

Caso de estudio

Aqui https://github.com/poximan/mama_node hay caso de estudio completo que implementa este modulo.

Parametros

param 1 = {Object mom-bus-comunic} instancia de bus para gestion de eventos. Ver https://www.npmjs.com/package/mom-bus-comunic

param 2 = {entero} cantidad de confirmaciones externas para fin corte consistente.

param 3 = {[Object]} Estado actual del servidor. Es el arreglo de valores en memoria dinamica.

param 4 = {Function} llamada a funcion de persistencia del negocio.

param 5 = {Funtion} llamada a funcion de publicacion usada en middleware (ver https://www.npmjs.com/package/mom-nucleo).

Modo de uso

Alta corte consistente

var corte_consistente = require("mom-corte-consistente")(
  bus,
  corte_resp_esperadas,
  [estado_actual_servidor],
  funcionPersistencia,
  funcionPublicar
);

Con esto se solicita una instancia de modulo corte consistente. No tiene dependencias con el negocio.

Corte en proceso

corte_consistente.corteEnProceso();

Funcion de consulta para saber si esta ejecutandose (o no) un corte consistente. Retorna V o F.

Solicitud de corte

corte_consistente.iniciarCorte();

Ofrece servicio de iniciar corte consistente.

socket del monitor

corte_consistente.sockRespuesta(socket);

Funcion de entrada al modulo, para setear quien es el socket abierto entre el servidor del negocio (del que forma parte) y el concentrador/monitor. Esta informacion sera util cuando desee reportar un fin de corte consistente al monitor.

registrar operacion

corte_consistente.registrar(msg_mom);

Funcion para guardar el canal de entrada en la medida que van llegando los nuevos mensajes al middleware durante un corte consistente. Cuando se reciben todas las respuestas esperadas, esta funcion finaliza el proceso de corte y reporta el resultado.