Quiero aprender el Disruptor framework. ¿Quién puede darme un ejemplo de helloworld que pueda ejecutarse en el método principal con el lenguaje de programación Java?Disruptor helloworld ejemplo
Respuesta
Aquí hay un ejemplo simple y ejecutable de cómo usar la biblioteca Disruptor. El ejemplo se escribe utilizando la versión 2.10.4 de la biblioteca Disruptor.
https://github.com/trevorbernard/disruptor-examples
También he Cruz-registrado en este tema: The simplest and actual example code of LMAX Disruptor
Aquí uno más de mi lado. Intenté un ejemplo de disruptor usando librerías Lmax de código abierto.
Creo que la idea detrás del uso del disruptor lmax (no las partes internas del disruptor) es crear un despachador de mensajes y registrar el oyente del evento como un consumidor.
Crea un disruptor, especificando el tipo de mensaje.
Disruptor<Message> disruptor = new Disruptor<Message>(Message.EVENT_FACTORY, 2048, exec);`
crea un controlador
final EventHandler<Message> handler = new EventHandler<Message>() {
// event will eventually be recycled by the Disruptor after it wraps
public void onEvent(final Message event, final long sequence, final boolean endOfBatch) throws Exception {
Integer value = event.getMsg();
if(value % 10000 == 0){
System.out.println("ValueEvent: " + value + " Sequence: " + sequence);
double timeINnanos = (System.nanoTime()-startTime);
double timetaken = (timeINnanos/1e9);
System.out.println("Time Taken till now in sec " + timetaken);
}
}
};
manejador de Registro con el disruptor
disruptor.handleEventsWith(handler);
Start que disruptor y pasar el buffer circular regresado a su productor
RingBuffer<Message> ringBuffer = disruptor.start();
Producer producer = new Producer(ringBuffer);
código completo se puede encontrar aquí Github link
te sugeriría que echar un vistazo en el directorio de prueba en el código LMAX LMAX Source Code Test Directory. En mi opinión, es la mejor fuente para todo tipo de cosas que puedes hacer con el LMAX. Por el simple ejemplo, eche un vistazo en el siguiente enlace Simple Example
También sugeriría que eche un vistazo a la DSL examples.
- 1. activo MQ - HelloWorld ejemplo excepción
- 2. Obteniendo el ejemplo de CodeIgniter HelloWorld para trabajar
- 3. mongoose web server helloworld program
- 4. Scala el .Net HelloWorld
- 5. El código de ejemplo más simple y efectiva de LMAX disruptor
- 6. ¿Cómo se debe usar Disruptor (Disruptor Pattern) para construir sistemas de mensajes del mundo real?
- 7. Fallo al ejecutar HelloWorld cocos2dx
- 8. Eclipse - HelloWorld - ¿Error de Android?
- 9. HelloWorld no puede ejecutarse bajo dalvikvm
- 10. ¿Por qué "git push helloworld + master: master" en lugar de solo "git push helloworld"?
- 11. Cómo compilar Helloworld con el código fuente de Android
- 12. No se pudo encontrar la clase principal HelloWorld
- 13. Ejemplo e introducción de Hadoop Hello World
- 14. ejemplo
- 15. Problemas con el ejemplo del mundo hola funcionamiento de cherrypy
- 16. ¿Por qué mi función HelloWorld no está declarada en este ámbito?
- 17. compresibilidad Ejemplo
- 18. multiprocesamiento.Pool ejemplo
- 19. ejemplo reinicio
- 20. Ejemplo de'instanceof'
- 21. ejemplo WeakHashMap
- 22. Ejemplo NSSpeechRecognizer
- 23. NSOutlineView ejemplo
- 24. Disruptor.NET ejemplo
- 25. Python Cut Ejemplo
- 26. simple C++ hash_set ejemplo
- 27. GWT CustomScrollPanel ejemplo
- 28. Node.js - EJS ejemplo
- 29. Ejemplo 2D con OpenGL
- 30. Ejemplo de Android JSoup
Ver [El código de ejemplo más simple y efectiva de LMAX disruptor] [1]. [1]: http://stackoverflow.com/questions/9168602/the-simplest-and-actual-example-code-of-lmax-disruptor – Heri