在这个案例研究中,我们将分享如何PubNative设法降低AWS基础设施成本的同时提高性能和提高应用程序的可用性使用Spotinst Elastigroup平台。
所面临的挑战
PubNative的客户分布在全球范围内,需要实时数据分析。这需要复杂的编排AWS地区和跨多个账户。随着时间的推移,这导致更多的管理开销和计算能力的浪费。
“通过构建我们的平台在Apache便我们能够实现体面的优化实例,但是我们发现我们还浪费计算能力利用齐次EC2集群。如果有一个小高峰的需求更有意义自旋向上一个小实例大小比大(少个vcpu /内存)。这是非常难以管理如果没有一定的自动化。”
阿米尔·弗里德曼,PubNative工程总监
基础设施成本增长也爆炸了。PubNative试图管理这些成本利用现货实例便集群。他们很快就发现,成本效益和管理挑战。“我们尝试管理采购现货实例在我们自己,但是我们很快发现与AWS Opsworks和豆茎的集成是不存在的。在尝试构建或自己的工具来管理现货市场,我们很快发现,管理开销还太多使它成为一个可行的选择作为我们持续部署过程”的一部分弗莱德曼说。
使用Spotinst平台的好处与Apache便和马拉松
PubNative Chronos Apache便环境多样,Elasticsearch, Kibana, Logstash,火花(数据处理),转眼间工人。马拉松将这些容器在优化的实例。如果需要额外的个vcpu, Spotinst将收购一个新的现货实例自动从池中不同的实例类型(m4。大,m4。超大,m3.medium例如)。
在大多数情况下,Spotinst平台能够放置一个出价需要花费大的实例大小不到一个较小的规模。
“这基本上是一个双赢,因为你支付更少的钱甚至比规模更大的权力,最初要求。”
这种多样化的实例类型增加了福利加权像个vCPU和记忆。“我们用马拉松编排容器。如果一个特定的容器可以受益于一个计算或内存优化的实例类型,马拉松会自动移动这个容器实例。”结果是令人难以置信的成本和计算优化减少管理开销。
除了便,使用Sidekiq PubNative一直平台管理工作队列。第一层的堆栈是一种web层接收来自客户机的请求。第二层是一个可伸缩集群工作实例来处理队列。工人们正在创建Spotinst Elastigroup确保成本优化和可用性。
还有一个额外的好处,PubNative Spotinst发现额外的用途不仅仅是节约成本和稳定性。
“国际扶轮利用图一直是一个强大的工具,以确保我们使用的国际扶轮能力,我们已经投资了。Spotinst控制台让我们看到成本节约AWS地区和跨多个账户在一个简洁的仪表板。我们的财务部门尤其喜欢看到我们一致的70%储蓄在随需应变的实例。”
阿米尔•弗里德曼主任工程。
关于PubNative
PubNative是一个移动货币化平台,使软件出版商策略执行和提高他们的收入通过本地广告形式。通过其专有的中介解决方案和规划,平台提供广泛的工具来管理最全面的全球移动本地需求。PubNative成立于2014年,是一家跨国公司,总部位于柏林办事处在旧金山,纽约、北京、首尔和班加罗尔。
