可伸缩性 Scalability

关于Scalability这个词的中文译法,目前还没有一个非常确切的定论。一些文献中将其翻译为"可扩充性",而"扩充"指的主要是Scale up;而在一些实际的用法中,Scalability还包括Scale down,因此,“可伸缩性"也许是比较贴近原文意思的说法。

互联网应用的可扩充性体现在两个方面:其一,是能够对系统容量进行扩充,也就是说,这个系统各个组件能够提供的服务的量,能够在需要的时候予以扩充(特别是通过添加新的服务器等等)。其二,是这种扩充是有效率的扩充,即,增加硬件投入时,其投入与所产生的效果是接近甚至达到成比例增加的。通常说来,“可扩充"同时暗含的需求是用户的使用习惯尽可能保持不变。如果我们关注某一具体的计算节点,可扩充性还应体现于提高计算节点性能,例如增加其CPU数量或内存容量时,能够相应地改善系统的容量或响应时间,等等。

而另一方面,“可缩减性"主要指的则是说一套系统能够运行在尽可能少的软硬件环境之中。对于大型互联网公司而言,这一点可能并不重要,而对初创公司来说这一点则非常重要。

在设计互联网应用的时候,充分地考虑系统的可伸缩性,能够极大地减少日后的维护开销,并帮助决策者对于投资所能获得的回报进行更加精准的估计;另一方面,高可伸缩性的系统往往会具有更好的容灾能力,从而提供更好的用户体验。

与解决很多其他问题类似,改善可伸缩性最常用的方法就是分治法(Divide and Conquer)。分治属于大道理一类,在实践中,我们比较常用的分治策略包括:

阅读全文…( 本文约 2100 字,阅读大致需要 5 分钟 )

再见,XO

| Life

今天基本上算是正式把在XO的机器搬空了,8个机架。过两天缓过点劲来再过去整理残留的杂物。累。

参与评论

Cisco Catalyst 3560交换机密码恢复

| Security | #3560 | #Cisco | #iOS | #password recovery

记一下备忘。其实跟单用户模式差不多……

首先用console确认一下是否真的不能登录。

断电,启动交换机,按住面板上的MODE键,SYS指示灯会闪烁,到绿时松手。在console上看,此时会给出switch:提示符。

阅读全文…( 本文约 473 字,阅读大致需要 1 分钟 )

康神的站又开了

| Blogging | #kxn | #康神

如题。orz

http://blog.kangkang.net/
http://blog.kangkang.org/

参与评论

我们是工程,他们是工业

| Life | #IDC

公司把IDC搬到了AT&T,最近几天一直都在加班。

这家机房的基础设施和服务都不错,唯一的问题是他们卖东西的时候和AT&T的接入服务一样—-有时候有意无意地去混淆一些概念。说到这里得提一句,导致我决定不使用AT&T的DSL服务的原因就是,他们居然把动态IP说成是一个feature,并强调这个feature能够提供更好的安全性,这样的"包装"真是让我觉得非常不舒服。

阅读全文…( 本文约 1004 字,阅读大致需要 3 分钟 )

FreeBSD CAM/AHCI committed

| Kernel | #AHCI | #CAM | #FreeBSD

下周一的8.0-BETA2会包含这个。CAM/AHCI是按照CAM框架重写的AHCI驱动(之前是ata(4)),提供了包括NCQ等硬件特性的支持,并改善了对SATA光驱的支持。与OpenBSD的实现不同,FreeBSD实现通过扩展CAM框架使其直接对ATA设备提供支持。

阅读全文…( 本文约 201 字,阅读大致需要 1 分钟 )

27了,不能再假装年轻了

| Life

27了,不能再假装年轻了。

参与评论

Heal The World (Lyrics)

| Shared Chaos | #Michael Jackson

In memorial of Michael Jackson (1958.08.29 - 2009.06.25)

“Heal The World”

There’s A Place In
Your Heart
And I Know That It Is Love
And This Place Could
Be Much
Brighter Than Tomorrow
And If You Really Try
You’ll Find There’s No Need
To Cry
In This Place You’ll Feel
There’s No Hurt Or Sorrow

阅读全文…( 本文约 520 字,阅读大致需要 3 分钟 )

DNS安全:投毒攻击与缓存服务器的配置

| Security | #BIND | #DNS | #Security

DNS是目前互联网上使用最为普遍,同时也是漏洞很多的一个协议。DNS投毒攻击(Poisoning)是一种比较常见的攻击手法,具体而言,通常一台 DNS 缓存服务器能够影响大量的客户机,通过投毒攻击,能够使得大量用户访问某个具体域名时得到不正确的结果(例如,钓鱼网站,等等)。

阅读全文…( 本文约 1115 字,阅读大致需要 3 分钟 )

Apache中同一IP多个HTTPS虚拟主机的实现

| Security | #Apache | #TLS | #作弊条

在 Apache 文档中提到,不能在单个 IP 上同时有多个按名字识别的虚拟主机(“named virtual host”)。不完全是这样。

HTTPS协议的过程是:服务器首先与客户机之间进行服务器身份验证并协商安全会话,然后,客户端向服务器发送 HTTP 请求。这样一来,在客户端开始发送请求之前,服务器就已经把证书发给了客户端(客户端根据本地的根证书去验证证书链,等等)。而最重要的是,为了表明身份,这个证书的周知名称(“Common Name”)填写的应该是域名,否则浏览器会给出警告。

阅读全文…( 本文约 800 字,阅读大致需要 2 分钟 )