Konstantin Obraztsov "Sports Betting evolution"
- 4. BetLab|Highloadfwdays'1815.09|KonstantinObraztsov
4
Parimatch - Timeline
2003 2007 2013
YEARS 2003 - 2005
• Starting new era of IT in
Parimatch. Introduced new
solution for Retail stream –
BetManger
• One year after, release new
website and started in house
development of Casino product.
• 2005 new stream – phone betting
(using TeleText technology)
YEARS 2007 – 2013
• Mobile application for Symbian
OS (4 versions)
• 2010 first launch of new brand
(Belorussia)
• 2010 main web site were
completely re-designed
YEARS 2013 – 2017
• 2016 Mobile website on new
Platfrom
• 2017 new Desktop website
launch (new technologies)
• 2017 Native application launch
(iOS / Android)
- 10. BetLab|Highloadfwdays'1815.09|KonstantinObraztsov
→ 4+years
→ 250+ employees
→ ¾ of our Technical staff are Senior
professionals
→ Each person from our product
team has mature betting
experience
BETLAB IN FIGURES:
For the last 4 years we have grown to
200+ employees and continue to grow
hiring 10 new employees every month.
10
- 11. BetLab|Highloadfwdays'1815.09|KonstantinObraztsov
11
• .NET, .NET Core - backend for new developments
• Node.js - real time updates (feed)
• Riot.js->React , Vue.js - front-end frameworks
• Redis - cache, pub/sub
• Kafka, RabbitMQ - reliable messaging
• PostgreSQL, Mongodb, Elastic, Aerospike - storage
BETLAB – Technologies
- 15. BetLab|Highloadfwdays'1815.09|KonstantinObraztsov
Third-party solutions
15
Development environment
MicrosoftVisual Studio
Intellij WebStorm
Delphi
MicrosoftVisual Studio for Mac
MicrosoftVisual Studio Code
Atom
Sublime
Microsoft SQL Management Studio
SCM, CI, CD
Gitlab and Gitlab CI
TeamCity
Jenkins
Octopus
JIRA
Confluence
Storage
PostgreSQL
Microsoft SQL Server
mongodb
Aerospike
Cache
Redis
Memcached
Messaging
Kafka
RabbitMQ
Redis
ZMQ
Cluster management
Zookeeper
Discovery, hosting, rollout
HAProxy
Cloudflare
Nomad
Consul
Docker
Kubernetes
etcd
Monitoring
Zabbix
Prometheus
Newrelic
Grafana
Log processing
Elastic stack (Filebeat, Logstash, Elastic
search, Kibana)
- 23. BetLab|Highloadfwdays'1815.09|KonstantinObraztsov
Monolith architecture - Wallet
• BD server - 96 CPUs with 1TB of RAM
• Bets Settlement - 1 000 000 in 5 minutes
• Bets Placement - 4 000 per second
• Seamless wallet – not possible
AEROSPIKE
• Separate component - the only task is process translations fast
• Financial transactions - up to 300 000 per second (per node)
• Horizontally scalable on service and storage level
- 24. BetLab|Highloadfwdays'1815.09|KonstantinObraztsov
Communication solution
• Live odds - changes each second (like in finance)
• Average update flow - 30Mbit per sec from BD
• Pull mode - 5-6 sec to pull full set of odds
• Outdated odds – on highload timeframes about 20%
KAFKA
• Communication HUB - feed/bets/odds/settlement
• Real time odds - updated odds is less then a second (outdated ±2%)
• Independent components - work model