2012-02-04 14 views
5

He leído en Jonathan Oliver .NET EventStore biblioteca, y debo decir que el concepto me atrae mucho: tener una simple biblioteca de no dependencias que no sea intrusiva y solo se centre en el origen del evento, dejando un Mucha libertad al elegir tecnologías para bases de datos, mensajes, etc.¿Hay un puerto Java o equivalente de la biblioteca EventStore?

Mi pregunta: ¿Hay algo similar también disponible en el mundo de Java? Sé que hay todo tipo de marcos relacionados con CQRS, como Axon y Jdon, pero eso no es solo una fuente de eventos ... ¿Alguien que trabaje en un puerto sencillo, tal vez?

Respuesta

1

No conozco ninguno que exista. Al mismo tiempo, no sería terriblemente difícil escribir uno. La parte más difícil para mí al escribir EventStore fue llegar al modelo correcto. Tuve dos lanzamientos privados/internos dentro de mi empresa, y luego dos lanzamientos públicos antes de quedar realmente satisfecho con cómo resultaron las cosas. También hay algunos puertos de Ruby y otros idiomas, y generalmente tardan unas horas en escribirse porque los autores copian el modelo. Si toma el mismo enfoque, no veo por qué no podría escribir el suyo en unas pocas horas.

+0

Gracias por esa respuesta. Encontré los siguientes puertos hasta ahora: [nodeEventStore] (http://kaba-cceac.github.com/nodeEventStore/) en JavaScript, y [euston-eventstore] (https://github.com/leemhenson/euston-eventstore) en Ruby. Si alguien sabe más: lo agradecería. –

-1

En teoría, podría admitir mensajes, pero parece que actualmente solo admite bases de datos.

Usar JDBC no es una gran imposición y se puede ajustar a sus necesidades con bastante facilidad. Si quieres simplicidad, usaría JDBC.

Si desea admitir JMS (mensajería) solo usaría eso (con un servicio de adaptación a cualquier base de datos que quiera usar) Esto le brinda una interfaz estándar impulsada por eventos para todos los tipos de mensajes (y cualquier base de datos que conecte para)

+0

¿Podría explicar cómo responde esto a mi pregunta? No lo entiendo ... La biblioteca de EventStore simplemente permite a uno enviar eventos a un almacén de datos, tener un enlace llamado commit (y en ese enlace uno podría enviar un mensaje en una cola), y leer esos eventos desde el almacén de datos. Simplemente estoy buscando un código Java equivalente. –

+0

Así que quiere JDBC estándar Y JMS estándar. Combinaría los dos en una clase de ayuda simple, así que solo puede decir insert (XXX, YYY, ZZZ) para que se inserte en la base de datos y active un mensaje con los mismos detalles. Podría sacar algunos ejemplos de la web si lo desea. ;) –

+0

O te malinterpreto por completo o al revés. Supongo que conoce la biblioteca [EventStore] (https://github.com/joliver/EventStore/), o al menos el concepto de [event sourcing] (http://www.martinfowler.com/eaaDev/EventSourcing) .html) (ver descripción breve en la página de Wikipedia ['Diseño impulsado por dominio']) (https://en.wikipedia.org/wiki/Domain-driven_design#Relationship_to_other_ideas))? –

Cuestiones relacionadas