Media & Entertainment
An Online Gaming Platform for Tournaments and Player Communities
A UK software company commissioned a tournament application, multilingual website and CMS, with architecture designed for a large player base.

- Client
- UK software company
- Core components
- Tournament, website and CMS
- Architecture
- 2 dedicated architects
- Player scale
- Hundreds of thousands targeted
Client & project requirements
A tournament platform with multilingual access
The client was an emerging software design and development company in the UK. After working with Shinetech during a consulting phase, it selected the team to develop its game-playing system.
The tournament application needed weekly, monthly and annual competitions, game watching, past-game review, rankings, chat, online notices and batch email.
The website initially needed English and Simplified Chinese, with provision for additional languages. Requirements included AAA or AA accessibility compliance, registration, login, search, advertisement management, and news and events. A CMS would support administrator, editor and translator roles across the website and tournament application.
Architecture & delivery
Separate architecture ownership and open-source components
Shinetech assigned two dedicated architects, one for the website and one for the tournament application. The team used open-source resources extensively to control development costs.
The environment included Java, HTML and JavaScript, Tomcat 5.x and MySQL 4.1.x, with Eclipse and UltraEdit as development tools. The specified operating systems were UNIX, Linux or Windows.
Engineering challenges
Firewall access, server load and socket communication
Players behind firewalls still needed to access the game. Because HTTP traffic on port 80 was commonly allowed, the team adopted HTTP tunnelling to support those users.
The client anticipated hundreds of thousands of players. Shinetech developed an independent balancing module to distribute requests across server-cluster nodes.
The team initially considered thread pooling for client requests but found that context-switching overhead limited scalability as active threads increased. It chose I/O multiplexing so a single thread could handle many sockets while keeping the overall thread count low.
Project benefits
Lower development cost and an extensible system
The project reduced development cost and delivered a reliable system with higher availability, scalability and easier maintenance.
Open-source components, request distribution and the socket-handling approach addressed the client's cost and performance requirements.