说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

【向导】如何开始学习高伸缩性编程?

HTML文档下载 WORD文档下载 PDF文档下载
可伸缩性编程变得越来越重要,当今任何Web都应具备高可伸缩。那么如何才能学好高可伸缩编程呢?本文作者列出了一个简单的学习向导。简单,但只要坚持,你一定会成为高手。

【编者按】大数据地兴起对应用程序提出了更高地要求,其中高可伸缩性就是当今任何Web都应具备的条件之一。那么如何才能学好高可伸缩编程呢?本文作者列出了一个简单的学习向导。简单,但只要坚持,你一定会成为高手。


当我们对可伸缩性感兴趣时,便会寻找链接、说明、书籍、引用等各种可以学习利用的资料。本文篇幅较短,但希望能够帮助你高效地开启高可伸缩性编程之旅。

声明:

你无需使用N台机器来构建/测试一个集群/高可伸缩的系统,只需使用 Vagrant就可以轻易部署N+台机器。

引用

现在,你可以用这些虚拟服务器技术来武装自己,我希望大家不但要通晓这些理论知识,而且要付诸实践。

  • 首先,通过查看该教程来激发自己: using nodejs + nginx + applying static caching + load balancing + testing ,所有这些大概需要7分钟时间。
  • 将这些单词及词意添加到你的词汇量当中: scalability failover single point of failure (SPOF) sharding replication load balancing;即使你不能完全理解它们。
  • 为了对可伸缩系统有个总体的概念和更好地了解来龙去脉,我强烈建议你阅读 Scalable Web Architecture and Distributed Systems
  • 对概念有了清晰的理解过后,你可以进入下一个层次,如何使用一个 负载均衡器,有什么 决策以及会遇到哪些 问题,然后你可以尝试运行一个 haproxy,并且避免让它产生 单点故障
  • 动手实践,亲自去 实现300万个请求/秒的服务,为了完成这一任务,你需要 生成300万个请求 微调你的Web服务,最终 规模化并且进行测试
  • 你的应用程序已经实现了可伸缩,现在轮到数据库了,它是应用程序里非常重要的一部分。这里,我强烈建议你阅读如何使用MongoDB进行 分片(sharding)和 复制(replication)来进行扩展、Cassandra的 线性扩展 在集群中添加节点来提高易用性。
  • 由于你的应用程序和数据库都进行了很好的可伸缩和容错,那么你的 服务器就可以节省大量不必要的工作量,并且会有 更快的用户响应。但要记住,一个好的请求是永远无法实现“真正的服务的”。
  • 假设我们在一个数据中心里部署整个基础架构,现在,我们有另一个SPOF。因为所有的服务器都在同一个空间,所以要避免一些自然灾害的发生,比如最简单的停电。 Cassandra可以非常方便地支持多个数据中心,你可以看看 谷歌是如何解决这类问题的。如果你的用户是在巴西,那么,访问时间最好不要长于他需要时间,请记住,即使在最好的情况下,我们仍然会有 延迟

测试

下面这些问题可以很好地测试你对可伸缩编程的掌握程度,请认真回答。

  • 为什么要可伸缩?人们通常都是如何实现的?
  • 如何在N个服务器间的RAM上处理用户会话?
  • LB如何知道哪台服务器是正常运行的?LB是如何知道哪台服务器发送请求的?
  • LB不是另一个SPOF?我们如何为LB提供故障转移?
  • 操作系统是否被64K端口限制?Linux是否能方便快捷地实现?
  • Mongo是如何解决故障转移和高可伸缩?Cassandra怎么样?当集群里新进一个节点时,Cassandra是如何进行分片的?
  • 什么是缓存锁?我应该使用什么缓存策略?
  • 怎样才能使单个域里拥有多个IP地址?BGP是什么?我们是如何使用DNS或BGP来区域性的服务用户的?

来自: How to start learning high scalability

Android上鲜为人知的UI控件介绍和使用 获取Android手机上的图片和视频缩略图 Android JSON解析示例代码 Android ANR介绍与避免 Windows Phone 7 SDK完善度不如Android m3 关于文件操作!急! installshield 中配置BDE,不能添加*.ini,怎么回事? 做过ERP的请进来说两句……给点建议!! (第三次发帖了,各位还是进来看看) 2000中秘密的破解 散分,求助! 急救:华光排版内的每天的新闻文章在什么库的什么表内啊? 朋友请进 急救:华光排版内的每天的新闻文章在什么库的什么表内啊? 朋友请进 我要为公司建立内部网站,其中的电子信箱及论坛该如何来建立? 急救:华光排版内的每天的新闻文章在什么库的什么表内啊? 朋友请进 物理怎样提高 怎么提高物理呢? 怎样能提高物理 怎样才可以把物理提高啊 为什么空心法可以增加浮力?书上说轮船用空心法增大浮 有学物理的好方法吗?拜托各位大神 物理,具体说明在如图所示的电路中,电源电压保持不变 一道初升高物理题一辆汽车从静止开始以1m/s的平方 一题初升高物理题如图所示,甲、乙两物体相距s0=4 黄坤明辞去杭州市人大常委会主任职务《马约》走过20年专家:7天退换货遇节日顺延 邮费一般国内汽油价格每升下调5分 幅度创10金砖五国官员学者:加强合作建立公平合2017北京两会特别报道4小时查扣91辆“网约黑车”做足绿色发展和创新发展两篇大文章话剧改编电影,冰火两重天市青少年排球营育新苗王者之英雄联盟圣者三部曲宝宝龙的极品奶爸重生之只争朝夕死神垂钓北红村旅游黑龙江第一湾旅游大连森林动物园旅游俄罗斯风情街旅游金石滩旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘