Fotolog对memcached的应用
Fotolog在21台server上部署了51个memcached实例,使用了175G,剩余254G。他们对待缓存的策略是:缓存所有在查询、获取和计算上慢的东西。
几种应用类型:
Non-Deterministic Cache: 最常用的存储需要read的数据。平均每个memcached实例上有440gets/sec, 40sets/sec和11gets/set。但是通常来说memcached不是一个吃cpu的东西,但是却达到了90%的占用量,几乎每分钟一次内存垃圾回收,还有blocking发生。数据都不是transactional的。用了45个实例。
State Cache:把程序当前状态保存在cache里。对于昂贵的操作、session(如果存储session的memcached挂了,那改用户就得重新登陆了),为IM存储在线用户。
Deterministic Cache:这里存的是某些表的所有数据,程序在这里只搜索的缓存,而不去care数据库里的数据,在程序获取数据之前甚至都不用去检查数据是否存在(因为是整个db中tables的映像)。保存的是不会过期的数据,以及用户的profiles/preferences/photo lists等。如果网站重新启动了,在网站重启之前缓存的内容会提前建立。这部分做了LB。在缓存的cluster里发生9w gets/sec、300 sets/second,get:set=300:1(get/set ratio)。数据库结构到内存对象的映射(db schema=>objects)。
其次Fotolog还有Proactive Cache/File System Cache/Partial Page Cache/Application Based Replication等几种cache方案、应用。但不是(在当前阶段和使用微软技术的原因下)特别重要。
关于Fotolog的历史:
- 2002年开始,04年时又30-40万会员,3名员工,在系统架构和盈利模式上都可以说一无所有。
- 发展迅速,问题不断,2005年开始限制每天新增1000会员
- 07年与1100万会员
- 会员主要来自于South America,超过20%的pv来自欧洲。
- 每月350亿pv,2千万独立访问ip
- 拥有3亿照片,每天上传50万
- 每天新增3万用户,4600万新用户访问
- 20%用户每天都要访问并且平均时间为24分钟
- 有32台mysql server和30台memcached server cluster
Revenue model:
- Gold camera member for about $5/month means you can upload 6 photos a day instead of 1, have 200 comments per photo instead of 20, a custom title image for your profile, a mini-thumbnail of your most recent photo displayed next to your name in guest books, plus the possibility of having your photo featured on the front page..
- Adsense. Revenue lift from Google is trending up approximately 15% given additional contextual data from guest books.
- Will move to a peer-to-peer advertising among their members.
- Members will have the ability to buy and sell real and virtual items using a micro-payment service.
转载于:https://www.cnblogs.com/fanweixiao/archive/2009/03/05/1403657.html
Fotolog对memcached的应用相关推荐
- 让memcached和mysql更好的工作
让memcached和mysql更好的工作 来源:http://chaoqun.17348.com/2008/08/memcached_work_with_mysql 这次是Fotolog的经验,传说 ...
- 常用的高性能 KV 存储 Redis、Memcached、etcd、Zookeeper 区别
1. 什么是 KV 存储 KV 是 Key-Value 的缩写,KV 存储也叫键值对存储.简单来说,它是利用 Key 做索引来实现数据的存储.修改.查询和删除功能. 常用的高性能 KV 存储主要有 R ...
- Magent搭建Memcached集群
原文地址:http://ultrasql.blog.51cto.com/9591438/1636374 Memcached集群介绍 由于Memcached服务器与服务器之间没有任何通讯,并且不进行任何 ...
- memcached和redis的区别和应用场景
一:特性和对比 1.性能上: 性能上都很出色,具体到细节,由于Redis只使用单核,而Memcached可以使用多核,所以平均每一个核上Redis在存储小数据时比 Memcached性能更高.而在10 ...
- 为何Redis要比Memcached好用(转)
转载链接:http://blog.csdn.net/renfufei/article/details/40598889 GitHub版本地址: https://github.com/cncounter ...
- Memcached安装使用和源码调试
memcached官网:http://memcached.org/ 一.安装 下载 # wget http://www.memcached.org/files/memcached-1.4.25.tar ...
- memcache和memcached安装
首先要明确 memcache不是memcached 第一步安装libevent #wget https://github.com/downloads/libevent/libevent/libev ...
- 分享memcache和memcached安装过程
Memcache是什么? Memcache是一个自由和开放源代码.高性能.分配的内存对象缓存系统.用于加速动态web应用程序,减轻数据库负载. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工 ...
- Memcached安装以及PHP的调用
一:安装libevent 由于memcached安装时,需要使用libevent类库,所以先安装libevent 1.下载 #wget http://www.monkey.org/~provos/ ...
最新文章
- Linux Yum命令(转)
- 第八届全国计算机数学学术会议,第一届全国计算机数学学术会议 报告摘要
- SD-WAN与传统WAN设备相比
- 重新认识错过(通向财富自由之路学习笔记十四)
- 函数集成redis与Spring集成
- 网段:192.168.6.0的机器A要访问网段:10.1.56.0的机器B
- Redis 键值过期操作
- 计算机组装与维修考试试卷,计算机组装与维修期末考试试卷..doc
- Codeforces Round #462 (Div. 2): A. A Compatible Pair
- oracle sql core目录,oracle11g数据库常见故障处理.ppt
- python做词典_字典实现
- 10个基础且实用的C语言经典实例【附源码】
- 雅思考试流程、需要具体注意些什么、怎么复习?
- 猕猴桃的红色果肉受到特定的激活-抑制系统的控制
- kotlin框架Anko的使用及常用的项目配置
- 解决:win10下teamviewer检测为商业用途
- SourceTree + Gerrit
- 带‘’文件”APP的苹果手机和电脑之间的文件互传
- 卡塔尔世界杯--程序员的诗和远方
- [实用技巧] (转帖)关于MyDocument.exe -- 打印店病毒
热门文章
- php多个参数绑定,php – 如何绑定多个参数到MySQLi查询
- mysql查询单词出现的位置_在MySQL中从左侧获取一些单词
- 齐浩亮 计算机科学与技术,齐浩亮
- 计算机专业英语读书报告,英语读书报告怎么写
- c语言把数据存放在文件中,急求如何将下列C语言程序数据存储到文件中?
- 磁力mysql搜索_多功能搜索 搜索系统安装 小说 电影 磁力
- 基于JavaSwing+Mysql点餐系统设计和实现
- c语言项开发班级登入系统,c语言--班级管理系统
- php 输出中文的引号,如何将php英文引号转换为中文引号
- .deploy 文件 php,关于php:Heroku deploy自动删除服务器文件?