最后更新:
Click to expand / collapse
在投注中,一切都决定了规模:比赛,并发现场赛事,每秒投注和独特用户的数量。该平台必须为激增做好准备-在决赛,德比,世界锦标赛期间。这就是为什么通过Kubernetes、云解决方桉(AWS)和全球CDN网络进行扩展成为体系结构的关键要素的原因。
为什么缩放是至关重要的
即时响应实时投注
来自不同大陆的地理分布流量
高峰时段和活动的出席人数激增
实时更新系数
停机时间无效-每秒钟=金钱
Kubernetes (K8s)
可按需缩放的容器编排:- 在负载下自动缩放(自动缩放)
- 水平缩放微服务(费率、计算、API)
- Blue/Green deploy和零下时间更新
- 支持用于负载隔离的多层体系结构
- 内置自我保健和监测机制
AWS和云解决方桉
AWS、GCP、Hetzner、DigitalOcean-用于灵活部署和冗余:- Elastic Load Balancer и Auto Scaling Groups
- S3和Glacier-用于存储报告、日志、备份
- Amazon RDS, Aurora-可扩展数据库
- CloudFront, WAF-安全性、积压、访问加速
- 使用Terraform将基础架构管理为代码(IaC)
CDN-全球速度
Content Delivery Network允许您立即交付内容:- 为任何国家/地区的用户快速下载网站和系数
- 取样图像、脚本、前端部分
- DDoS保护、边缘过滤和地理限制
- 使用Cloudflare、Akamai、Fastly、Bunny CDN
典型的缩放脚本
| 脚本 | 解决方案 |
|---|---|
| 现场流量激增 | Kubernetes中的HPA+自动添加pod's |
| 增加GEO覆盖范围 | Edge Nod和CDN部署 |
| 按负载划分 | 隔离群集中的服务(费率、计算、UX) |
| 与Big Data和BI合作 | 通过Kafka和ClickHouse共享流 |
| A/B测试和发布 | Canary/Blue-Green deployment через Helm/K8s |