微信号:infoqchina

介绍:有内容的技术社区媒体

深入了解扩展的5个阶段

2013-03-12 16:27 InfoQ

基础扩展架构应具有在负载均衡器后面添加Web应用服务器的能力。负载均衡器能够在应用服务器间划分请求和会话,从而进行Web应用的线性扩展。

缓存系统可以通过处理读取操作来支持扩展:联合使用多重缓存系统使扩展最大化。

优化的持久性框架能够将扩展写入的能力带到扩展中的新阶段。

选择合适的SQL或NoSQL数据库来匹配应用数据结构将显著地增强扩展性。并发读/写能力将提高写操作的吞吐量和响应能力。

如果你能够“在ACID(特别是C和D)上耍点手腕儿”,你就可以将更多的写操作提速。

这些扩展技术的基础是使web应用读/写数据的延迟最小化。以下列出的是计算机上不同操作的延迟时间:

  • L1缓存引用 - 0.5 ns

  • 分支预测失败 – 5 ns

  • L2缓存引用 – 7 ns

  • 互斥锁/解锁 – 25 ns

  • 主内存引用 – 100 ns

  • 使用Zippy压缩1KB – 3,000 ns

  • 在1Gbps网络上发送1KB – 10,000 ns(0.01 ms)

  • 从SSD随机读取4KB – 150,000 ns(0.15 ms)

  • 从内存中顺序读取1MB – 250,000 ns(0.25 ms)

  • 同一个数据中心内部往返 – 500,000 ns (0.5 ms)

  • 从SSD连续读取1MB – 1,000,000 ns (1 ms)

  • 硬盘寻道 – 10,000,000 ns (10 ms)

点击“阅读原文”查看更多内容并吐槽吧。


架构师3月刊已发布,回复【架构师】查看最新内容。

 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 名不副实的“软件工程” 数据科学家的新规则 2016年7月编程语言排行榜,Java仍然为编程语言第一 如何启用Windows 10客户端Hyper-V 天使湾创投Demo Day:看看“南方系”创业者在做什么?