每月3亿PV的FaceBook朋友买卖插件的架构与数据

在短短的三个月时间内,朋友买卖成为facebook前十名的应用,它每秒钟处理200个请求,每月产生300 000 000个page view。在技术上,选择了Ruby on Rails框架,两个兼职程序员,一打服务器,和优秀的架构。

 

架构

Ruby on Rails

CentOS 5(64bit)

Capistrano 升级和重启应用服务器

Memcached

Mysql

Nginx

Starling 分布式队列服务

Softlayer 堡垒主机

Pingdom 站点监视器

LVM 逻辑卷管理器

Dr.Nics Magic Multi-Connections Gem 数据库读写分离

 

当前情况

Facebook十大热门应用

将近600 000活跃用户

每天500000独立用户访问量并保持持续增长

300 000 000 page view 每月

每月300%的稳定增长率

上个月2100 000 000的独立用户

每秒处理200次请求

每月5TB的流量

两个兼职开发者(目前一个全职),一个远程DBA支持

4台数据库服务器,6台应用服务器,a staging server, a front end server

六台 4核 8G内存 应用服务器

每个应用服务器建立16个mongrels一共是96个mongrels

 

系统设计目标:

支撑facebook应用-买卖朋友。

它基于一个波动的金融市场。

目前它是facebook排名前十的热门应用。

Tips:像买卖宠物一样买卖好友!你可以玩弄他,送礼物,或者用来炫耀。精明的投资者会把他的朋友发展成人们的货物,其实这只是满足

 

为什么做这个系统:

做这个系统更多的是为了测试和了解facebook这个系统

 

设计系统的时候,在设计,架构和实现方面有什么挑战和创新?

因为作为facebook的应用,每个请求都不能使用缓存页面,因此,它是一个时实行,并且写操作频繁的系统,对数据库优化要求比较高。

 

如何应付这些挑战?

我们采用memcached作为中间层,每个请求都不直接访问数据库。使用Rail's fragment caching缓存表现层。

 

系统目前是什么规模?

昨日访问量是500 000个独立用户并且访问量一直在增长。根据统计反馈,本月有 300 000 000 的page view。

 

带宽使用状况

上月产生了3T的流量,这月最少5T,内容仅仅是一些图标和xhtml/css。

 

文件数目,图片数目,和数据情况

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值