“Erlang has become an essential technology in our toolkit.
It is helping us to create reliable, fault-tolerant systems that
can be scaled incrementally to meet the growth in our business.”
Dan Macklin, Head of R&D at bet365
INNOVATION & SCALABILITY bet365 RELIES ON ERLANG-BASED SYSTEM TO DELIVER SMOOTH SERVICE TO 11 MILLION PLAYERS
Started in 2001 as a family business, bet365 now employs over 2000 people and is one of the world’s
biggest online sports betting sites. They deliver live online experiences in 17 languages to over 11 million
customers worldwide.
The company is hailed as a leading innovator in the Online Gambling & Betting space, constantly pushing
technological boundaries. They take great pride in their culture of innovation and attribute much of their
success to giving development teams the freedom to innovate
CHALLENGE
bet365’s InPlay betting platform was initially developed in Java. It was a highly concurrent, distributed
system running 100’s of servers, allowing users to place bets in real time. It supported TCP/IP and Long
Poll clients and made use of proprietary modelling techniques for changing the odds on bets.
The company grew fast, with an exponential customer increase. They soon reached the point where at
any given time they would have up to 2 million people on the site simultaneously, generating thousands
of updates per second. The sheer volume of web traffic and transactions placed huge pressures on the
systems that supported it.
They realised the business was running at a scale where traditional tools and techniques no longer
offered acceptable performance in terms of scalability and time to market. It was only a matter of time
before the system would hit the limit of its capability. The ability to scale would falter, latency would
increase with load, and the system would lose reliability. With increasing scalability requirements, traditional relational databases would also become problematic.
SOLUTION
bet365’s R&D team was tasked to seek out relevant technologies that could solve their complex scalability and business problems and to explore new ways of delivering software. One of their main objectives
was to find new technology that could support highly concurrent systems and implement it in bet365’s
tech ecosystem.
The team set out to explore the entire technological landscape and identify the best techniques and
tools. The team sought out existing, mature technologies that were proven in other areas which could
be re-used in their domain.
bet365 REQUIREMENTS FOR THE NEW TECHNOLOGY
Apart from a different approach to concurrency than bet365’s legacy systems and not being overly
complex, the new technology needed to possess the following key attributes:
BE A PROVEN
OPEN SOURCE
TECHNOLOGY
INTEGRATE
WITH NEW &
VARIOUS TECH
SUPPORT
FAST
INNOVATION
REMAIN
HIGHLY
RELIABLE
SIMPLE TO
OPERATE &
MANAGE
bet365’s team found and evaluated the Erlang programming language which perfectly met their
requirements. Erlang is a robust compact language initially developed for Telecoms. Recently Erlang
has seen adoption by businesses with large volumes of concurrent, active users who transact a massive
amount of data in real-time. Among them are WhatsApp, T-Mobile, AdRoll, Klarna, Vocalink, EE, Machine
Zone and many more. Its actor style concurrency, immutability, OTP libraries and reliability semantics
make it far easier to construct massively parallel systems. bet365’s R&D team decided Erlang was the
perfect fit, so we supported them with the transition. At Erlang Solution, we take pride in being the
world’s leading provider of consultancy and development services for Erlang technologies and products.
OUTCOMES & BENEFITS
bet365 and Erlang Solutions formed a core engineering team that developed a successful proof of concept system in 2 months. It showed that Erlang was a much better fit than the initial Java based solution.
In the next phase we offered our expertise and advice to build, scale and customise bet365’s InPlay
platform, as well as training and service support. The InPlay platform currently pushes the live odds of
hundreds of thousands of sporting events to millions of customers so they can bet on events as they
happen. After the initial development of the InPlay system, we have supported bet365 to migrate more
infrastructure from Java to Erlang. Below are the main outcomes of our collaboration:
PROFOUND
REDUCTION IN CODE
COMPLEXITY
INCREASE FROM 10S
OF THOUSANDS TO
100S OF THOUSANDS
OF USERS SUPPORTED
ON A SINGLE MACHINE
INCREASE IN
THE SPEED OF PRODUCT DEVELOPMENT &
DELIVERY
SYSTEM SUPPORTS
DATA CHANGING AT 4
TIMES THE PREVIOUS
RATE
OUR EXPERTISE
We have extensive experience in building scalable fault-tolerant systems, not only for the Online Gambling
& Betting sector, but also in Telecoms, Gaming, Automotive, Web Advertising, Mobile Apps and IoT.
We have over 300 clients in our portfolio, from start-ups to Fortune 100 companies; with bet365 and
William Hill being among them, plus other companies from this sector where we helped with:
+ Creating platforms for rapid game development that allow a generic API to provide access to all the
games deployed on a particular platform, which allows for adding new games without affecting uptime.
+ Redeveloping segments of the OpenBet architecture (wallets, bet settlement functionality, in-play betting, etc) in Erlang, giving companies more in-house control over their systems.
+ Providing end-to-end services in Riak implementation, consulting and support – we are the largest and global reseller of Riak.
+ Training clients’ in house teams in Erlang/OTP.
+ Redeveloping segments of the OpenBet architecture (wallets, bet settlement functionality, in-play betting, etc) in Erlang, giving companies more in-house control over their systems.
+ Providing end-to-end services in Riak implementation, consulting and support – we are the largest and global reseller of Riak.
+ Training clients’ in house teams in Erlang/OTP.
Credit – Erlang solutions, posts taken from Erlang solutions site.