// to choose the name of the created thread.
ExecutorService executor = Executors.newSingleThreadExecutor();
// we initialize the asynchronous cluster. We don't need transactions (NoTransactionManager) and allow all
// events to be handled concurrently (FullConcurrencyPolicy).
Cluster asyncCluster = new AsynchronousCluster("async", executor, new FullConcurrencyPolicy());
// and we initialize a simple cluster
Cluster standardCluster = new SimpleCluster("simple");
// to make sure Listeners are assigned to their respective cluster, we create a number of selectors that we
// combine into a single ClusterSelector using a CompositeClusterSelector