ELIXIR, ERLANG, KUBERNETES & AWS
The nature of Trading Games’ games and the immense requirement of processing power drives the need to have the most powerful technical layers supporting the games.
The above combination of technologies provides Trading Games with the processing power and distribution that is imperative for the successful adoption of our games.
ELIXER
The programming adopted by Trading Games is Elixir.
Elixir is a functional programming language built on top of Erlang.
Elixir is recognised for its ability to:
concurrently execute programs
operate on distributed systems….
which itself lends to a high level of fault tolerance.
Elixir was designed to handle extremely high flows of data which is Trading Games’ goal.
Major businesses using Elixir include Bet365, Pinterest, PepsiCo, Square Enix and more…….
Major businesses that solely required Erlang’s scaleability include WhatsApp, WeChat and Facebook amongst others.
In summary, the Elixir language is arguably the ‘must-have’ language for a company with ery high data flows and a high load of mathematical calculations.
KUBERNETES
This is the container orchestration system adapted by Amazon Web Services (AWS). What this system does is manage the workload of Trading Games’ computer program (“Engine”).
Kubernetes uses containers to automate the software deployment, scaling and management of the system based on processor usage, memory or custom metrics.
Although originally a Google Cloud offering, it is now open source and is used by other clouds, including Azure and AWS..
Distributed Computing
Distributed computing allows large, complex tasks to be broken down into smaller, more manageable pieces that can be processed in parallel on multiple machines.
The benefits of distributed computing include:
increased performance and scalability
availability, the network of computers will not fail if one component fails
benefit of fault tolerance without compromising data consistency
faster performance with optimum resource use.
The whole concept of the cloud, e.g. AWS [see below] is based on distributed computing. For a company such as Trading Games with a potential global player-base plus highly complex mathematical algorithms, it would be impossible to operate without Distributive Computing.
Concurrency
Programs can be executed sequentially so that one program is executed after another is finished. Alternatively, the whole process is speeded up if one program does not need to wait on another to end but can be executed at the same time. This latter case is called concurrent computing.
If programs can run concurrently then it means that the overall program can ultimately execute much more quickly. This is critically important for Trading Games as there will be huge data flows as:
different target levels
odds calculation for each bet
probability of a bet winning
cash out amounts
plus many other similar functions are taking place every second for different B2C clients, different games, different time frames, etc..
AMAZON WEB SERVICES
AWS is the biggest cloud with roughly 33% of the market at the start of 2023. Azure holds 23%, Google Cloud 10% with smaller clouds making up the balance.
When testing in the Far East compared with AWS was significantly faster than Google Cloud.
AWS offer on-demand cloud computing which means that it is a pay-as-you-go contract. Combining this costing with Elixir’s concurrency and distributed programming and Kubernetes scaling and management of the system means that Trading Games gets a lot of bang for their bucks.
