Companies need a data-processing solution that increases the speed of business agility, not one that is complicated by too many technology requirements. This requires a system that delivers continuous/real-time data-processing capabilities for the new business reality.
Stream processing is a hot topic right now, especially for any organization looking to provide insights faster. But what does it mean for users of Java applications, microservices, and in-memory computing?
In this webinar, we will cover the evolution of stream processing and in-memory related to big data technologies and why it is the logical next step for in-memory processing projects.
Setting up servers and configuring software can get in the way of the problems you are trying to solve. With Hazelcast Cloud we take all of those pain points away.
Watch this webinar to learn how you can instantly fire up and then work with Hazelcast Cloud from anywhere in the world. With our auto-generated client stubs for Java, Go, Node.js, Python and .NET, we can have you connected and coding in less than a minute!
Gamesys is on a mission to become the world’s most entertaining online gaming company. It all started with Jackpotjoy but along the way it has grown into an award-winning team of designers, developers and operators who are behind some of the leading gaming sites and apps including Virgin Games. Founded in 2001 with just a handful of developers, it is now over 1,000 employees strong across seven group ofﬁces worldwide with its headquarters in Central London.
Gamesys was in the process of building a highly scalable poker platform and was exploring various technology options which would enable it to store the game state.
The solution needed to be capable of being used both for real money gaming as well as on social platforms. For real money gaming, it needed to ensure that redundancy was integral to the system so that a player’s money couldn’t be lost. This meant that it had to replicate the results of actions and make sure that all actions were handled idempotently.
When dealing with the scale of gaming on social platforms, Gamesys also encountered new challenges – its system needed to be fast and elastic to keep costs low and provide players with an excellent gaming experience while having the capacity to scale up quickly based on ﬂuctuating demand.
The challenge was to build a cost-effective platform that could manage failures without losing a player’s money, was highly available and elastic and could handle tens of thousands of concurrent players. Prior to embarking on any major project, Gamesys is always keen to review the technology landscape to ensure it chooses the most appropriate solution, in this case, the focus was on store technology.
Gamesys’s poker platform was the ﬁrst use case in the business to use Hazelcast IMDG. It enabled the development team to launch a poker platform that could compete with established products in a very competitive market.
Hazelcast IMDG can be used in a client-server topology or an embedded architecture – it is easy to deploy and brings a highly resilient and elastic memory resource to all applications. It scales-out horizontally to deliver unlimited in-memory support to any application.
Hazelcast IMDG was deployed with the application where each application node also became part of a Hazelcast cluster. This allowed fast read and writes and supported fast operations that depended on data being read and modiﬁed frequently. This also allowed Gamesys to easily scale its application and datastore proportionally.
The operations team was happy with the simplicity of implementing Hazelcast Management Center, which was deployed without the need for additional servers or middleware. It was easy to integrate with their existing monitoring system and enabled Gamesys to manage nodes that were running Hazelcast. In general, the team found Hazelcast IMDG performance to be very fast and it was simple to add additional nodes to clusters, which drove even higher throughput and lower latency during peak playtimes.
Gamesys also utilizes the Hazelcast IMDG Enterprise Rolling Upgrades feature, which allows a running cluster to be upgraded without service disruption and data loss. For Gamesys, Rolling Upgrades has reduced the number of downtime releases to existing and new games, translating into more business and proﬁts for the company. Hazelcast IMDG is used by Gamesys to provide distributed system capabilities, as opposed to a foundational piece of architecture. This has meant that its been easy to integrate with games from other companies without producing any signiﬁcant business disruption. Gamesys has also started to use it as a message broker, between system components leveraging its support for Topics.
From its research, Gamesys found that NoSQL and RDBMS were not as fast as in-memory solutions, but didn’t want to lose the resilience and consistency provided by a database. It also recognized that traditional caching solutions were not appropriate for managing dirty reads (when a transaction is allowed to read data from a row that has been modiﬁed by another running transaction and not yet committed) and several of those solutions also depended on a master node, which could become a bottleneck at high load and prevent Gamesys from producing the throughput it needed.
To be able to cope with providing dependable service to tens of thousands of concurrent players, Gamesys required a fast, elastic and easy-to-use solution which would bring them the beneﬁts of in-memory computing, while providing a reliable system of record. Gamesys rigorously tested Hazelcast IMDG with 100,000 concurrent user sessions in a hybrid set up using their NoSQL database as a system of record. This allowed Gamesys to beneﬁt from the speed of Hazelcast IMDG, while still leveraging the resilience of the NoSQL database.
Gamesys found the performance very fast with easy-to-implement deployment experience. Performance is a top criterion for Gamesys as it carefully scrutinizes the number of server hops across the network from its game servers to individual players – it is vital that games operate at the lowest latency possible in order to ensure the best possible player experience. In addition to its high performance, Hazelcast IMDG provided a rich set of capabilities in its SDK that allowed the Gamesys games development team to focus on its core domain.
Initially, Hazelcast IMDG was deployed to resolve speciﬁc issues relating to horizontal scalability. Once Gamesys realized that Hazelcast could ﬁx problems on other projects, adoption within the business has widened. Hazelcast IMDG is now one of Gamesys’s “go-to” technology tools to deliver fast, highly available, fault-tolerant gaming applications.
Whether you're interested in learning the basics of in-memory systems, or you're looking for advanced, real-world production examples and best practices, we've got you covered.