Ebay架构设计分享
Posted 熊老板杂货铺
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ebay架构设计分享相关的知识,希望对你有一定的参考价值。
抛砖引玉
小时候玩单机版CS的时候,和人机枪战总是觉得无聊。
于是网吧的老板搭建了一个内部网络,可以实现局域网通信,当时就觉得好厉害。
这个应该是我接触的第一个架构设计相关的的实际应用场景了。架构设计应该关注什么
Scalability(可扩展)
Availability(高可用)
Latency(低延迟)
Manageability(可管理)
Cost(低成本)CAP定理
一致性(Consistency)
(等同于所有节点访问同一份最新的数据副本)
可用性(Availability)
每次请求都能获取到非错的响应——但是不保证获取的数据为最新数据
分区容错性(Partition tolerance)
以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择
分区意味着多机拓扑网络传输,网络传输不稳定;架构设计策略
1. Partition Everything
Functional Segmentation(业务功能-垂直拆分)
Horizontal Split(水平拆分)
No Database Transactions(无分布式事务)
No Session State(服务端无状态)
2.Async Everywhere
Message Dispatch(异步消息)
Periodic Batch(批量任务)
3.Automate Everything
Adaptive Configuration
Machine Learning
4.Remember Everything Fails
Failure Detection(失败检测)
Rollback(回滚)
Graceful Degradation(柔性降级)
以上是关于Ebay架构设计分享的主要内容,如果未能解决你的问题,请参考以下文章
周路:为什么是ClickHouse?eBay广告数据平台架构实践!