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

深入浅出,以咖啡店为例演示Web应用程序扩展

HTML文档下载 WORD文档下载 PDF文档下载
拥有海量用户确实是件值得期待的事情,然而设计支撑用户的应用却并不简单。这里Vistaprin从咖啡店经营入手,为大家分享Web应用的扩展之路。

【编者按】每个机构都期望拥有大量的活跃用户,因为在这个时代用户的数量直接与应用的价值挂钩,就比如日前WhatsApp被Facebook以160亿美元的天价收购。然而,海量用户地支撑并不是件容易的事情,本次为大家分享Vistaprint Web平台组Sriram Devadas的博文——从咖啡店管理看Web应用扩展。

以下为译文:

首先,我有一间咖啡店,经营的开销与资源成正比。我有1间100平方英尺的店面,同时还有1台咖啡机及1名咖啡调配师。

其次,是我店铺的产能:同时只能服务一个客户,一杯咖啡需要煮3分钟,每个客户服务时间总计5分钟。

假设我的咖啡师可以无休工作,德国制造的咖啡机同样坚固无比,那么我的咖啡店每小时就可以服务12名客人。


Web Server

鉴于同一时间只能服务一位顾客,因此在高峰时期会存在客户流失的情形,没有等待的空间。因此我得升级店铺,情况如下:

同样大小的店铺和基础设施,3个咖啡调配师,2个咖啡机以及2张椅子。这时候的店铺产能是,3分钟两杯咖啡,7分钟可以服务3个顾客,2个顾客可以在椅子上等待,即:并发客户=3,客户容量=5。


纵向扩展

生意兴隆,是时候升级了,我期望更大的产能,于是进行了如下的调整:

店铺占地扩大到200平方英尺,5个咖啡调配师,4个咖啡机及3把椅子。能力按比例提升,一切进行的非常好。

在夏季,生意冷淡。对于咖啡店来说再正常不过了,因此有些时候我特别想缩减开支,但是房东肯定不会那么好说话。因此对于我这样业务不恒定的公司来说,大不一定总是好事!


通过负载均衡器进行横向扩展

如果使用更小点可以安置3个咖啡机的柜台,同时我只做增加或减少柜台数量操作,那么房东肯定不会太在意。那么,只要预先通知,他就可以减少或者增加一个设施。但是,如果同一个时间,我只能照顾一个柜台上的生意,那该怎么弄?

幸运的是,这里有一种特殊的柜台恰恰就是这么设置的,这个柜台允许几个顾客同时与柜台管理员交互。实际情况下,负责柜台的员工也并不需要是个咖啡调配师,他只需要完成订单方面的相关工作,同时咖啡调配师也并不需要直接与顾客交流。这样的话,店铺的产能被提升,我也可以按需减少或者增加放置咖啡机的基础设施。


资源深加工

其实我的咖啡机是个通用型的食品制作工具,在接收到许多客户的现烤面包需求后,我决定把这个食品放到菜单上。

但是问题出现了,我使用的两个咖啡机1次只能制作1磅面包,并且耗费制作咖啡双倍的时间。因此从时间上看,1磅的面包=4杯咖啡。

因此有些时候面包的订单会阻塞整个系统,喝咖啡的顾客并不愿意等待太久,低效率的言语也随之出来。我需要1个方法来分割订单,同时更好地利用资源。


基于异步队列的处理

我引入了1个基于令牌的队列系统。在用户下单后会取得一个对应的令牌号码,然后等待他的食物。订单摄入部分会取得订单并分类存储——面包及咖啡。

咖啡调配师根据现有设备运行情况分析订单,并选择是先做面包还是咖啡。当面包或者是咖啡做好后,调配师会将它传出,随后柜台人员叫号发送。

除下新建的输入和输出队列,其他都是用着之前相同的资源,但是产能明显提高了。

从顾客的角度上看,他们有着和之前完全不一样的用户体验。

只要顾客能接受这个异步系统,我们就可以管理它的复杂性,它提供了1个容量和产品多样化的扩展途径,与邻居的竞争中将获绝对优势。


未来的扩展方向

当异步系统达到限制极限时,我们又该如何处理?很显然,在这种规模下咖啡店比喻已经完全不可用了,不妨深度搜索一些类似DNS round robin的技术。Web应用程序的扩展已经不是件新鲜的事情,不妨多参加一些交流,向扩展大师们取经。

原文链接:Intuitively Showing How To Scale a Web Application Using a Coffee Shop as an Example (编译/仲浩 审校/毛梦琪)

宅男程序员福利:来自纽约的28位智慧与美貌并存的IT女神 创季度记录:苹果发布第四季财报 iPhone仍是苹果商业心脏 在破晓中行走:一位盲人开发的盲人应用 腾讯云俱乐部成都站——云时代手游开发:用数据说话 首届微App峰会将在MDCC2013上举行 微信易信百度新浪等平台开发商云集 TUP Masters第七期:C++大师Lippman论编程新范式Hugo OpenCL用于13个微型计算机领域的经典案例 从测试数据来看Node.js和Java EE的性能区别 工作效率低下?业内人士建议你切勿追求完美 Mozilla发布可视化在线跟踪工具Lightbeam 望向海外:十大移动应用开发外包公司 Facebook支撑万亿Post搜索背后的技术窥探 云OS:共创智能化生态圈 云计算,让游戏世界更加精彩 360推儿童卫士手环,你怎么看? 量产谈判正在进行时:谷歌手表或比Google Glass先上市 Mozilla发布新版Firefox 25 提供支持Web Audio API UC产品总裁何小鹏:轻应用,做什么?怎么做? 高德携手阿里云发布“LBS云”,账户打通只是第一步 最后2天!2013移动开发者大会5折抢票倒计时 大数据如何改变在线广告业? 摩托罗拉推开源硬件平台计划Project Ara 七个垂手可得的敏捷开发工具 微信新版公众平台调整细节381处 300/次认证费引争议 libgit2:纯C语言实现的Git开发包 MongoDB的得与失 开箱即用!Android四款系统架构工具 谁说Kinect只是玩物?微软研究院使用它实现口语手语实时翻译 新浪微博推出粉丝服务平台 引发两微PK大战 MDCC2013移动开发者大会最新日程发布 门票优惠最后1天 英特尔CEO:EUV光刻技术或助力芯片突破摩尔定律 pb可以动态生成控件吗? 高分求教一个数据库倒换问题---处理CLongBinary类型子段中的错误? 急急急,為何我這樣寫都會錯,真不明白。請高手們指點 bs的,研究不出来了 后台表单提交后,刷新前台数据,这个问题怎么解决!(高分求解) 急问有没有人用java写过ActiveX控件 快请大家帮忙,高分在先等待 请给提供一个大的免费邮箱!高分 有什么项目作? 请教:OnSize()中调用MoveWindow()出错、?? 想问一个问题 比我穷的人来拿分 唉~~~女朋友病了......送分求祝福 小问题: 程序运行后, 运行窗口在执行完程序后会自动关闭, 如何不让它自动关闭? 中太数据 VS Sun公司?该选哪个? 为何获取不了url中的Id值? orale 经典书籍征集!!! ASP , FTP 问题~~~~~~~~100分,不够可以加分,高手请进 PHP怎么设置SOCKET超时参数 大家加强点交流好吗?多沟通一点 初学者,串行化问题,谢谢帮忙 今天定下了我的人生目标 谁买了《游戏的设计与开发》这本书? redhat8.0+weblogic7.0(sp1) JSP配置问题 一个简单的问题 这就是我们的smoke小姐(恩不对不能确定性别)的“淑女”作风。。。嘿嘿 学习J2EE,谁能提供一套学习方案及相关书籍和资源 ASP高手来看看啊!!十万火急啊!!!!!!! IPCP数据疑问 Visual Basic宣告死亡了吗? 谁能帮小弟,解释ShellExecute参数的意思?? 怎样传送若干条信息?期待ing... 浮点数运算 内核编译后无法启动!!!!!急急急 我的数据表怎么会经常丢?? 谁能解决这个问题我叫他老大 传统C与ANSI C有何区别 新手提问!!! 组合框的问题 请推荐一些COM入门的书籍。 都来凑热闹来吧!谢! 50分求,有哪位做过ISDN(i4l),进来留个名字,急事!!! 局域网问题,不知简单或复杂,解决了100分相送! 有没有可以动态改变控件与控件之间宽度的控件 仙劍3 破落解文件下載,快下。快刪了。 保存bmp文件的时候,如何让保存对话框默认为.bmp?? 做程序员后最经常给自己找的借口、、、 如何向注册表写入REG_DWORD类型的值,谢谢指点! 怎样链接数据库?再就是运用b/s结构完美结合 我實在不知道怎麼改了,請各位大蝦幫幫忙! interbase数据库返回的错误信息的代码是什么?具体的含义是什么? 念完圣旨后,接旨的人说的那个是"zha"还是"zhe",怎么写?今天看到夜宴里面是"诺",这个字是多音字吗?在这个情况下应该念"zha"还是"zhe",还是电影里面写错了, 核舟记中 中峨冠而多髯者的而 明有奇巧人的有是什么意思 数学无穷小量的比较中x->星号中星号代表什么 星号就打星号. 王小波哥哥给小波说的那个哲人故事是什么意思呢? 王小波现象是什么意思 王小波的《红拂夜奔》中,关于李靖的事迹是真的假的?红拂夜奔中,王小波说,李靖证明了毕达哥拉斯猜想,费马定理,发明了鼓风机和开根号的机器,诸如此类的事情是真的假的 一些用描述法表示的集合,N R Z上加星号(*) 有什么作用 集合N*,包不包括0? 主语没有will,从句用现在时么 will deny.从句没有主语 什么状况?The Reagan administration has announced it will deny financial support to international aid organizations that perform or actively promote abortions. 时尚盛宴:地铁变身麻豆T台秀场【高清美专家:美国悄悄丧失对华创新优势首届海内外青田人书画作品展开幕苹果公司第四财季销售增加利润下滑 手波兰发现低成本生产最薄最坚硬纳米材料伊朗和国际机构就伊核问题对话 外界期美参议院情报委员会主席:白宫将停止监美国白宫:美国同意对搜集情报方式加强飓风桑迪周年前夕 美联邦政府再拨50美国监听风波陷两难 白宫急灭火共和党“叙利亚电子军”称其控制奥巴马社交网中国夫妇泰国旅游惨死普吉岛 丈夫倒毙加强创新社会管理 打造平安幸福河池中山中长期规划 实施十大工程居民收入妻子出轨 丈夫苦劝“不回头”疑妻出轨 男子喝百草枯身亡不甘被甩 男子群发女友裸照报复杜文龙:美军B-52古董机试探中国 感冒病人增多 甘肃专家建议适当补充维大阪日本第一高楼利用墙面进入开业百天甘肃省笑星张钢白涛斩获第七届“西岗杯市民建议:兰州中心血站至盐场路应设路
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘