One of the projects that the UK team has recently been involved with is an online gaming project which has involved the architecture, design and implementation of an online Poker application. There are a number of interesting things about this project.
Firstly, the original application was designed and semi-implemented using Coherence and Java. Midway during this we had an opportunity to present an alternative architecture using GigaSpaces. The project team eventually decided to move away from Coherence and proceed with a GigaSpaces build. Why ?
- Technically the team had developed the application with Coherence and were using the command pattern.
- When developing with Coherence the team had to write quite a lot of non-business code (plumbing) related to concurrency and multithreading. This kind of code requires higher skill levels, is difficult to get absolutely right, and more importantly is hard to maintain.
- The alternative architecture with GigaSpaces avoided having to do this by using <a href="http://www.gigaspaces.com/wiki/display/XAP66/Messaging+and+Ev
ents" target="_blank">polling and event containers that provide configurable concurrency out of box.
- What did this mean ? It lowered the skillsets required and enabled team members to concentrate on writing the business logic of their application, which after all is the what you want to be concentrating on when building any application. This not only meant development was simpler, but time-to-market was quicker
- The team also had the confidence that even when scaling out and up the “plumbing” would not need re-writing, debugging or tweaking.
- Lastly, the whole application was able to be developed against Amazon EC2 with no upfront licensing cost. The EC2 Cloud also enabled for early testing of scale and load.
The actual application will be deployed in an internal data centre offshore and the team will have confidence that the combination of GigaSpaces XAP and GigaSpaces cloud support will ensure they have a reliable, tested, real-time scalable gaming application.
Do you always post articles like this?