OpenSource 类别下的文章

os_hangzhou_350.jpg明天下午将去参加 InfoQ 中文站主办的 体验基于OpenSolaris的Web/企业应用 活动,这也是杭州 OpenSolaris/OpenSource 用户组的第一次活动。

我应邀将在活动上做个关于数据库的分享,主题为 "设计可扩展的面向互联网应用的MySQL数据库" ,欢迎感兴趣的朋友光临指导。具体时间和地点 ? 就在上面的链接里 ...

自从 Sun 把 MySQL 收购了之后,好像关于数据库的市场活动并不大,相反,倒是对操作系统做了一些不遗余力的推广。当然,现在的 Solaris 倒也并非没有长处,ZFSDtrace 就是两个很有趣的东西,而这两者对 MySQL 都是很好的互补,对 Linux 其实也是很好的互补,尤其是 ZFS ,最近一段时间,越来越觉得 Linux 的 EXT 文件系统在某些场景多少还有点短板。期待明天能听到关于 ZFS 和 Dtrace 的一些内容。

补充:听说 Sina 有一部分机器用了 OpenSolaris,但也应该是试水性质的吧。国内其他网站有没有用 OpenSolaris 的?

--EOF--

广而告之: 7月26日QClub杭州站-- 支付宝首席架构师程立与您分享"当SOA遭遇现实"的心得

今天看到 Brad Fitzpatrick (就是大名鼎鼎的 Memcached 的作者,现在效力 Google) 在网志中说道,正在利用 Google 著名的 20% 的业余时间为 Google App Engine 增加对 Perl 的支持。

GAE_arch.png[来源]

还记得时不时的会从中文 Perl 邮件列表里看到有人散布 Perl 过时的言论,其实一个语言过时与否都不重要,关键的是是否有人依赖该语言打造出比较激动人心的应用。如果 GAE 能够支持 Perl ,或许就是 Perl 焕发第二春的时候。从这个角度来说, Erlang 不也是如此么?

提个意见,Google App Engine 啥时候能支持给中国移动发短信? 现在支持 China Unicom,周围没有朋友用联不通的,大家都用移不动的。

--EOF--

热热闹闹的 The 2008 MySQL Conference & Expo 还没落幕,一个不那么和谐的小道消息传了出来并被最终确定:Sun 计划对 MySQL 进行"选择性开源",某些企业级的新特性源代码将不再开放。

谁知道 Sun 葫芦里卖的什么药,看家宝 Java 都开源了,在 MySQL 上还保留什么呢? 能否成为更受人尊敬的公司,还要看气度。这点上,Sun 始终扭扭捏捏。

一心要做 Web 2.0 中的这个 Dot 的 Sun,看来又要做活雷锋了,不过这次似乎是要帮助一下竞争对手 PostgreSQL。

--EOF--

PHP 与 Oracle DRCP

| No Comments

Oracle 对 PHP 的支持一直是不错的(只是国内好像 PHP + Oracle 的开发并不多)。 Oracle 11g 中的新特性数据库驻留连接池(Database Resident Connection Pool,DRCP) 对 PHP 应用进一步扩展带来了一种可能。

这个特性应该重点针对 PHP 应用的。PHP 不支持真正的多线程,非持久连接非常消耗 CPU 资源,扩展性也差;持久连接扩展性好了一点,但是又额外占用更多的内存资源(PHP 之父在几年前的一个 Step-by-Step 优化演示的文章中很形象的说明了连接开销对应用的影响)。DRCP 的出现能更好的缓解上述两个问题,其共享连接能跨 Apache 与中间件节点,但共享的连接是基于数据库用户的,比如 Scott 用户登录到 DB 上的所有连接间共享。

Oracle_DRCP.jpg

Oracle 官方披露的测试数据是,在 4 CPU Intel Xeon MP 2.80GHz 机器上,2GB RAM, 32bit RHEL 4. 支撑到 14000 个链接的时候,CPU 使用率在 65% 左右。这个...还是太惊人了,根据我找到的另外一份测试结果,看来要大打折扣才能有参考性。

--EOF--

偶然发现了这个 NagiosChecker ,更方便的显示 Nagios 报警信息的 Firefox 插件

NagiosChecker.png

这个插件几乎能搞定 Nagios Alert检查的方方面面,具备足够丰富的的过滤规则与显示条件;还能够定期调度;有趣的是,居然还提供声音报警。

一般人我不告诉他!

--EOF--

一直以为新浪是国内几家门户网站中技术比较糙的一家(也可能是太低调了),这应该是我比较无知的偏见,无意冒犯。看到这位新浪技术人员介绍的开源软件项目: NCacheMemcachedb 。挺欣赏他们这种国内环境下比较少见的分享精神。为他们喝彩!

  • NCache = Nginx Cache
  • Memcachedb = Memcached + Berkeley DB

这两个软件,应该都是从实际应用需求上得来的,可以说是"设计以致用",不是纯用于研究的,而设计思路很有些 "Mashup"。我没有实际使用经验,不知 Memcachedb 和 Tugela Cache 二者有何差别。我对 Memcachedb 这个项目倒是比较感兴趣的,把 Cache 和 DB 有效结合起来,消除 DB 单点 I/O 承受的应用压力...而且,实现方便且廉价...十分美好的前景。

期待能有更多类似的项目涌现出来。国内的 Web 2.0 站点软件设计人员也可以借鉴一下。

--EOF--

更新:【很多人估计从来不仔细看文章的具体内容。我这篇文章里可看不出来 "对Memcachedb的思想比较推崇"的, TBStore 也未必就有多超前,内存 + DB 八百年前就有人想到了。只是赞扬一下 Sina 团队的精神而已,如果只是攀比牛B,去和Google 、eBay 比比好了

更新2: Memcachedb 现在在有了官方站点:http://memcachedb.org/

Yahoo! 与 Hadoop

| 5 Comments

hadoop-logo.jpg

Yahoo! 和 Carnegie Mellon 大学合作的开源分布式计算项目代号为 M45,这个 超级计算集群 有 4000 个处理器,3T 内存,1.5 PB 存储空间,自称足以跻身世界超级计算机 50 强。这两天网络上搜索最火的一个词应该就是 Hadoop 了吧? 雅虎的这套集群就是跑在 Hadoop 上。

Hadoop 现在已经有很多不错的应用案例可以参考,比如这篇 Running Hadoop MapReduce on Amazon EC2 and Amazon S3

Yahoo! 或许早意识到自己的 Web 1.0 方式下的计算能力比 Google 差的太远,干脆放手一博,助力 Hadoop 项目,期望能借助开源的力量与 Google 掰一下手腕。从这里我们得知 Yahoo! Hadoop 团队早在 06 年就成立了,当然,这个团队成立的前提是 Doug Cutting 入职雅虎。

雅虎现在不应该担心追不上 Google ,应该担心 Doug Cutting 别被 Google 挖去,否则,可真的没机会了。

--EOF--

维基百科(WikiPedia.org)位列世界十大网站,目前排名第八位。这是开放的力量。

来点直接的数据:

  • 峰值每秒钟3万个 HTTP 请求
  • 每秒钟 3Gbit 流量, 近乎375MB
  • 350 台 PC 服务器
  • (数据来源)

架构示意图如下:
WikiPedia_arch.png Copy @Mark Bergsma

GeoDNS

在我写的这些网站架构的 Blog 中,GeoDNS 第一次出现,这东西是啥? "A 40-line patch for BIND to add geographical filters support to the existent views in BIND", 把用户带到最近的服务器。GeoDNS 在 WikiPedia 架构中担当重任当然是由 WikiPedia 的内容性质决定的--面向各个国家,各个地域。

负载均衡:LVS

WikiPedia 用 LVS 做负载均衡, 是章文嵩博士发起的项目,也算中国人为数不多的在开源领域的骄傲啦。LVS 维护的一个老问题就是监控了,维基百科的技术人员用的是 pybal.

图片服务器:Lighttpd

Lighttpd 现在成了准标准图片服务器配置了。不多说。

Wiki 软件: MediaWiki

对 MediaWiki 的应用层优化细化得快到极致了。用开销相对比较小的方法定位代码热点,参见实时性能报告,瓶颈在哪里,看这样的图树展示一目了然。另外一个十分值得重视的经验是,尽可能抛弃复杂的算法、代价昂贵的查询,以及可能带来过度开销的 MediaWiki 特性。

Cache! Cache! Cache!

维基百科网站成功的第一关键要素就是 Cache 了。CDN(其实也算是 Cache) 做内容分发到不同的大洲、Squid 作为反向代理. 数据库 Cache 用 Memcached,30 台,每台 2G 。对所有可能的数据尽可能的Cache,但他们也提醒了 Cache 的开销并非永远都是最小的,尽可能使用,但不能过度使用。

数据库: MySQL

MediaWiki 用的DB 是 MySQL. MySQL 在 Web 2.0 技术上的常见的一些扩展方案他们也在使用。 复制、读写分离......应用在 DB 上的负载均衡通过 LoadBalancer.php 来做到的,可以给我们一个很好的参考。

运营这样的站点,WikiPedia 每年的开支是 200 万美元,技术人员只有 6 个,惊人的高效。

参考文档:

Wikimedia architecture (PDF)
Todd Hoff 的文章

--EOF--

1 2 3 4 5 6 7 8 9 10

关于归档

本页包含 OpenSource 类别下的所有文章.

上一类别为 MyLife.

Review 为下一类别.

回到 首页 查看最近发表的文章或者查看所有 归档文章.