Published at DZone with permission of Trisha Gee, author and DZone MVB. (source)
On Sunday I gave my very first workshop on the Disruptor. The aim was to give people some hands-on coding experience using the syntax. Because time was limited (you can't get people to build an entire application architecture in 2.5 hours) the example is somewhat contrived, and needs a big leap to make it into a proper application context. But the workshop should:
- Give an overview of the Disruptor
- Show how to create a simple one producer, one consumer example.
- Show how to wire up a parallel event handler
- Show how to how (and why) to create a diamond dependency graph.
- Extrapolate beyond these very simple examples to something closer to a real world architecture.
If you want to work through the examples yourself, start with com.mechanitis.towerdefense.TowerDefence. The starting point code for the workshop is in package com.mechanitis.towerdefense. com.mechanitis.towerdefense1 shows a solution to exercise one, com.mechanitis.towerdefense2 to exercise 2 and so forth. The final package, com.mechanitis.towerdefense4, has some different towers you can play with to see the effects. They don't really show anything special about the Disruptor, but they were fun to write and are interesting to play with.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)