Hello all,
I'm currently trying to pick a thesis topic, preferably using Java. :)
There are cases exists, when a full-blown Java EE stack is a bloatware. You don't use many things, you don't need such tight replication, etc.
If you choose to go on a lightweight route, you can use Spring, Guice or any other IoC framework, you can use some nice features, such as DI (with Spring even more, as they've been wrapping everything in they taste), but let's set you want replication, and load-balancing on an application level. What are your options? So here's what I think: what about a cluster-aware IoC framework, where you could do something like:
@Inject @ClusterSynchronize private ConcurrentMap map;
and those method calls would be spread over the cluster, so effectively one could achieve data-replication on a field level.
or what about someting like:
@Inject @LoadBalanced private BlockingQueue queue;
Adding ad-hoc clustering into the mix (using multicast addresses/broadcasting), and implementing these features would allow any single application to scale effectively.
What are your thoughts? Would this will be a good topic?