大规模视频网站的计费与流量管理
本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于QCon杭州2011。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Werner Schuster 译者 Jason Lai 发布于 2007年6月17日
在微软宣布了.NET平台的Ruby实现IronRuby之后,Ruby社区开始舌战不断。JRuby团队的成员Ola Bini炮轰IronRuby,对项目的可行性表示怀疑态度。他的主张源于IronRuby背后的一个至关紧要的问题:根据推测,由于版权或者许可证问题,该项目的开发人员不能查看Ruby的源代码。另外一个问题就是微软拒绝来自外部的代码贡献。Ola解释说:
恕我斗胆直言,在目前的情况下,我不相信John Lam和他的团队有可能在18个月内完成一个可以运行Rails的Ruby实现。老实说,这么长时间是不短的。就像我在上面所说的,我完全有信心说,如果John有合适的资源,那么他肯定可以拿出漂亮东西出来。但是,尽管有开源社区带来的所有好处,创建一个Ruby实现也是够难的了。
Ola给出了一个解决方案,即专注于加速完整的Ruby规范的制定工作:
就这一点我想提出两点:Ruby社区必须认真开始对待创建出一份良好且完整的规范和测试套件这件事情了。现在我们就该着手进行此事了,我们需要它。这不是一个人的战斗,整个社区都需要参与到当中来。(没错,那两个SoC项目是一个非常良好的开端。但你仍然需要能够运行RSpec才能充分利用他们;让我们去面对这件事情吧,RSpec实现使用了许多非常精巧的Ruby技巧。)
在规范上所做的努力很早就已经开始了:
尽管看起来Ola相信,只要Ruby的规范可以详细地制定出来,那么IronRuby就可以成为一个完整且符合标准的Ruby实现,但是Charles O. Nutter就显得悲观得多了:
在熬过了Ruby夹道相讽的日子,以及在一手把JRuby从什么都运行不了,缔造成一个现在几乎可以100%完美运行Rails的Ruby实现之后,我可以很有信心地说,除非人们可以参照已有的Ruby实现,否则在只有目前的规范和测试的情况下,任何人都不可能从零开始创建出一个可以运行Rails的Ruby实现。说实话,我真的不相信有这种可能。
同时Charles也怀疑微软这边缺乏决断力:
这是我一个好朋友的观点,但他说服我相信了他的观点:我们不相信微软会愿意允许IronRuby走到支持Rails那一步,因为这样的话会直接和他们的ASP.NET服务器、软件还有相应工具套件产生竞争关系。对于他们来说,究竟一个运行着免费框架 能给他们带来什么好处呢?基本上是没有。
这话从参与JRuby项目的Sun雇员嘴里说出来,还真是令人大跌眼镜(退一步说)。Sun聘用了两名全职开发人员从事JRuby的开发,另外还雇用两名开发人员从事Netbeans Ruby工具的开发。然而,Sun在这个项目上的投资,不会导致一个钢蹦儿直接流进自己的腰包,因为JRuby是一个独立的项目(它不是一个Sun专属的项目),而且Netbeans的工具也是分文不取的。事实上,如果使用Charles的理由,那么Sun也不会希望JRuby可以运行Rails,因为使用JRuby on Rails的开发人员不会使用JSP、JSF或者其它的Java技术。因此,除非开发人员或者公司在Sun的硬件上使用JRuby on Rails或者使用Sun的软件支持服务,来使其在Sun的软件上运行,Sun在这个努力上面一分钱也捞不回来。因此,按照Charles的逻辑,不可能存在四个Ruby运行时,以及领着相应工资的开发人员,而事实上,他们还是存在着。
这条逻辑存在的另一个漏洞,就是每个在.NET上使用Rails的开发人员都会从ASP.NET平台转出来,而这样会导致微软利润上的损失。但这未必是真的。让一个成熟的ASP.NET团队转向不同的语言和框架会带来重新培训的开销。转向Rails能带来的好处,对于允许其发生的特定项目来说,一定是相当可观的。同样也存在这样一个问题:当.NET开发人员可以从来自微软的多种技术进行选择的时候,是否他们所有人都能看见Rails带来的效益呢?.NET开发人员Aaron Erickson阐述了他此时对微软平台的感受:
在基于微软的平台上度过了14年的美好开发时光,我一直都以自称微软平台的开发人员而感到自豪。来自Anders Hejlsberg和C#团队的创造,更不用说随着DLR和Silverlight一起问世的东西,堪称这些年来这个领域内最优秀的一部分创新。
如果有更多的.NET开发人员这么想,并且他们对微软提供的技术和工具支持感到完全满意,那么从.NET工具向Ruby的大举迁移是不太可能发生的。
这群打算扔掉他们的工具并转移到Rails上的开发人员,在Java平台上也做了同样的事情,他们丢掉了Struts、JSF和Co,转而使用了Rails。这是一群对以前解决问题的旧方式不满的开发人员,或者Web领域初来乍到,对旧方式不习惯的开发人员。
在.NET上存在完整的Rails版本,会确保对Rails感兴趣的开发人员还能留守在.NET和微软的软件方案上,并且保留他们(在Windows、IIS和Visual Studio等)原有的大部分经验。如果Rails不可用,那么这群人就可能逐渐离开,并且转向非微软的Ruby方案,比如说可能转向另外一个操作系统和Web服务器上的JRuby on Rails。有了完整的Rails实现,微软可以将开发人员留在.NET/微软的软件方案上,而且,如果有良好的工具支持,那就可能吸引更多的人。这就为微软带来了直接效益:使用Windows和微软服务器软件及工具的公司将为此支付许可证费用,更不用说签署支持合同或者支付培训课程的费用了。在IDE支持方面,Ruby in Steel更是在Visual Studio中文为Ruby和Rails提供了艺术级的支持。
总的想法就是,让.NET在更多人面前变得更有吸引力,可以保持并可能吸引更多的付费客户,而不会损害到其它产品的销售。
Charles并不相信IronRuby有什么机遇,他提到另外一种将Ruby引入.NET平台的方式:
由于这些事实和目前的现状,我得说,作为一个社区,我们更应当把眼光投向Gardens Point的Ruby.NET编译器项目上去,这个项目早已比IronRuby发展得更为成熟[……]此外,这个项目是真正开源的(你可以贡献代码),而且他们的开发人员可以查看Ruby的源码(并且他们已经承认至少在解析器上是这么做了)。去年我还对Ruby.NET持谨慎和怀疑态度,但现在看来他们是Ruby在CLR上最大的希望了。
Gardens Point的Ruby.NET编译器是一个活跃的项目,这个项目的目标是创建一个把Ruby转换成.NET字节码的编译器,它包含一个Ruby或者JRuby命令行版本行为相似的可执行文件,但并不解释Ruby的抽象语法树(Abstract Syntax Tree,AST),而是在Ruby代码运行之前将其编译成MSIL(CLR上用到的指令集)。
像这样的争论使得IronRuby的第一个发布版本变得越来越有趣了。IronRuby的开发人员John Lam最近提到,IronRuby的第一个面向公众的发布版本将在2007年7月23日至27日间O'Reilly的OSCON大会上公布。
查看英文原文:JRuby Team members doubtful about IronRuby
本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于QCon杭州2011。
Jeffrey Richter以其多本Windows核心技术的经典著作而闻名,同时,他深入掌握微软的.NET等一系列核心技术,2012年1月,Jeffrey Richter在北京接受了InfoQ中文站的专访,谈到Windows 8和WinRT编程,并就异步编程、Windows编程中的可扩展性、性能和安全性方面给出自己的建议。
云计算平台的可用性,相比传统互联网服务而言,更加复杂和困难,也更具有挑战性。本文借助新浪SAE云平台为读者讲述了云平台可用性的定义、如何打造高可用的平台,以及对云计算的用户提出了建议。
淘宝高度重视Java平台的健康发展,组建了一个团队专注于Java平台的底层部分的性能、功能与稳定性改进;工作主要基于OpenJDK中的HotSpot VM开展,其中一些通用的功能随后也会逐渐反馈给OpenJDK社区。希望能与使用Java平台开发应用的大家交流经验。
本次演讲视频录制于QCon杭州2011。
2011年4月21日至22日是值得云计算从业者纪念的日子。Amazon的IaaS服务出现故障,导致许多商业网站的服务中断,影响非常严重。作为云计算用户,我们需要思考的是,如何保证即便在云服务不可用的情况,我们的应用架构仍然能够屹立不倒?本文正是站在云计算用户的角度试图探讨这一问题。
12人的技术团队,4组刀片服务器,每月20亿的访问量,每日1次准时部署,99.9%的可用性。这可能吗?当然。想知道如何做的吗?百姓网将与您分享他们在DevOps实践过程中的经验和技巧。
本次演讲视频录制于QCon杭州2011。
篱笆作为一家起源于社区的电子商务公司,反映到技术层面就是同时要面对产品和业务,以及经营战略的变化调整。如何在产品和业务的夹缝之间完成技术架构的抽象与平衡,寻找更有效的价值定位,这当中有些经验教训和个人感悟愿与众人分享。
本次演讲视频录制于QCon杭州2011。
本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。
没有回复
关注此讨论 回复