大规模视频网站的计费与流量管理
本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于QCon杭州2011。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Niclas Nilsson 译者 胡键 发布于 2007年8月24日
面向模式软件架构(POSA)系列的第4卷和第5卷已经出版了。卷4是关于分布式计算的模式语言,而卷5则“深入审视模式是什么,不是什么,以及怎样成功地使用它们”。
InfoQ采访了最新卷的合著者之一Kevlin Henney,讨论了POSA系列的最新两本书。我们询问Kevlin:两本书怎么会几乎同时出版?
最初的打算是只有一本书,其内容按照POSA 5的想法来组织。这个想法是,介绍书写和组织模式的概念、原则及技巧,我们通过一个大的例子来说明:用于分布式计算的模式语言,并附带一个模式故事(pattern story),在实践中说明它的应用。
正如你猜到的,这将会是一部非常厚的书!
POSA4是关于分布式系统的——该书关注哪些类型的分布式系统呢?
……我们试图编写那些可在经典的RPC风格系统、当代的Web应用、基于消息的系统、经典的N层系统、移动计算等系统中找得到的范围广泛的架构概念。我们特别关注于那些已被实践证明的架构和架构知识……我们覆盖了应用和中间件架构,并对新系统开发及现有系统的后续开发都有兴趣。
本书的风格不同于前几卷。POSA4描述了114个模式,而前3卷总共才包含了44个模式。前几卷对每个模式进行了深入地探讨,但是因为POSA4的大多数模式已在其它著作中发表,因此模式的细节不再作为重点,取而代之的是模式间的关系。
相比之下,POSA4意图给架构师和开发者提供的一个更广的、宏观的模式视图,这些模式涉及到当代分布式计算架构中应用的模式。重点是模式是如何关联的,其中包括一个模式实现另一个的细节或为另一个提供替代选择,因此这意味着联系才是重点,从而减少了每个模式的细节。
然而,更少的细节并不必然意味着令每个模式的核心概念变得失真:
模式并不会因为本身的简洁而变得不精确——在某些情形下,它们的描述还更准确了--而是它们被概括并忽略了很多不必要的细节。
为了保持每个模式描述的简洁,本书使用草图和伪代码代替了UML图和完整的C++或Java例程。对于想深入了解特定模式的读者,它提供了参考。
我们询问Kevlin:他是否觉得有一些特殊的模式被遗忘或被误解了,而它们对于能出现在本书中将会感到非常高兴?
有些模式是非常的不引人注目,但是它们在现代设计方法中具有某种重要且非常有影响的地位。
首先一个,我们称之为显式接口(Explicit Interface),它本质上是一个分离单独接口的概念,将它完全从它的实现中解耦。这种方法适合声明类型系统并自从RPC时代就存在,而且我们发现它在现代静态类型语言中非常普遍,即‘接口(interface)’结构。然而,显式接口模式的关键点是设计敏感度,其背后使用了某种机制并聚焦于关注点的分离。不顾近些年来基于接口的编程的增多,许多程序员仍然使用纯接口(不论是以“接口”结构的形式,还是按照全抽象类的方式),以一种更多不必要的耦合方式,如果这也算面向接口编程的话。
第二个是关于上下文对象(Context Object)。和接口的想法类似,上下文对象的想法已经存在很长时间了(它现身于Scheme的eval过程中,并可在四人帮的解释器(Interpreter)模式中找到踪迹),但它最近才被记录并陈诉其有权作为模式的理由。POSA4中的详细描写只是许多不同的详细说明(其中有我的一个,另一个则是Doug的!)中最新的一个。上下文对象可以使用执行细节(如配置、证书、查找服务等)参数化一个对象、组件或整个子系统,使之独立于系统的其它部分。这种分离提高了组件间的独立性,简化了测试,排除了一类问题,以及/或在多线程环境中可能遇到的执行瓶颈。它常常被视为使用Singleton之后带来的许多问题的解毒剂(并且,作为题外话,Singleton是我们没有包含在本书中的一个模式:->)。
第5卷也是本系列的最后一卷书,是关于模式和模式语言。它显示了如何记录、组织和使用模式;如何建立模式间的关系,以及如何将这种关系转变成模式语言。
在POSA5之前,模式的概念性讨论分散在模式社区内外的许多著作和不同人的脑袋中。那些展示了模式集合的每一本书、论文或展示都使用不同观点介绍了模式概念,它们之间或多或少的有些不同。不同的来源侧重不同的方面的不同重点,例如模式发生的上下文、模式语言的使用、模式中的各种驱动力的角色,模式的社会或技术目标等等。
Kevlin总结说:
POSA5 [……]是写给那些有兴趣进一步探索模式概念的实践者的。换句话说,这本书的目标读者是,那些已经以某种形式接触过模式——不论是通过GoF、POSA、Core J2EE,还是通过其他方式——并想更多了解模式的人。
查看英文原文:Pattern Oriented Software Architecture Volumes 4 and 5 released
译者 胡键 热心开源技术,《开源技术选型手册》作者,《SOA实践指南》译者。目前致力于Groovy/Grails的研究和推广。
本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于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。
本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。
没有回复
关注此讨论 回复