博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Coinbase是如何在其加密货币交易平台上应对扩展性挑战的
阅读量:6359 次
发布时间:2019-06-23

本文共 936 字,大约阅读时间需要 3 分钟。

在2017年的数字货币热潮中,数字货币交易公司Coinbase在他们的平台上遇到了扩展性方面的挑战。工程团队升级和优化、热点流量隔离解决了这些挑战,并构建了捕获和回放工具以应对未来的流量暴增。

\\

在2017年5月至6月间,Coinbase的客户流量超出了预期的水准,超过了通常最大流量的五倍并导致了 。团队首先解决了一些简单的问题:垂直扩展、升级MongoDB以提升性能、优化索引以及基于热点的流量隔离。现有的监控系统不足以识别上下文信息,所以团队通过代码instrumentation技术进行了增强,以便于记录丢失的数据。尽管有了这些改善,在,Coinbase还是遇到了宕机。从此之后,团队致力于通过捕获和回放工具模拟流量的模式来处理更高的流量。

\\

在最初的停机期间,Coinbase的Ruby应用和MongoDB都遇到了更高的延迟,在耗时方面,Ruby和MongoDB是大致均等的。为了更好地理解这些跨组件调用的上下文信息,团队通过修改记录了额外的数据。这帮助他们将问题的范围缩小至一个未经优化的响应对象,该对象增加了网络负载。这个问题的解决使应用程序的性能得到了很大的提升。另外,通过在对象-关系映射层(Object Relational Mapping,ORM)和驱动层增加基于的缓存提升了大规模读取的吞吐量。也改善了响应时间。到2017年6月,团队已经将MongoDB集群升级到3.2,它拥有。Coinbase来实现限速等服务,这些服务在停机期间曾经受到Redis的的。

\\

为了应对未来可能出现的流量暴增,团队开发了名为Capture和Cannon的工具,它们可以从生产环境的系统中捕获流量,并根据需要针对新系统进行回放,以测试系统的弹性。Capture和Cannon都是基于的,mongoreplay工具能够从网络接口捕获针对MongoDB实例的流量,并记录所调用的命令。这些日志可以基于其他的MongoDB实例进行回放。流量能够跨应用服务器进行捕获,然后合并到单个文件之中。捕获到的流量和磁盘快照都保存到了AWS S3之中,Cannon随后能够基于它们进行回放。

\\

Coinbase维护了一个公开的状态信息页面,地址是。

\\

查看英文原文:

转载地址:http://vxbma.baihongyu.com/

你可能感兴趣的文章
Chapter 3 Extending Classes
查看>>
马哥培训,努力的我,来吧
查看>>
Linux下MySQL的写文件时权限错误(Errcode: 13)解决方法
查看>>
关于公司邮箱自建与外包的一些看法
查看>>
Linux的inode的理解
查看>>
【日常一篇】服务器事件ID1111日志错误(即打印机驱动问题)解决方法
查看>>
做个有前途的女子
查看>>
Cisco CMS Ad-Hoc Conferencing with CUCM
查看>>
sql 面试3
查看>>
Hadoop hive sqoop zookeeper hbase生产环境日志统计应用案例(Hbase篇)
查看>>
显示日期和时间,列出所有登录的用户,给出系统的更新时间,最后将所有信息保存到日志文件中...
查看>>
选虚拟桌面与选房子一样重要.
查看>>
MySQL主从复制一致性检测
查看>>
PHP-猴子选大王
查看>>
当用户流失比较明显后, 如何提升活跃度? push notification 是一个有效的方式吗?...
查看>>
基于keepalived对redis做高可用配置
查看>>
思科的发展还需要大量的IT技术人员
查看>>
linux中计划任务的用法at和cron
查看>>
php漏洞处理
查看>>
中国男子因盗版在美获刑12年:涉及近200家公司
查看>>