锁定老帖子 主题:帖子 博客等资源点击量缓存杀手级解决方案
精华帖 (0) :: 良好帖 (9) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-07-22
最后修改:2009-07-22
看了一下Berkeley DB
Berkeley DB多应用于嵌入式场景 在java中是跑在jvm里面的,就是说其数据不能在多台机器间共享 这一特点决定了其不能应用于集群环境中 也就不适合大多数的互联网项目 火星的redis 这里有一篇介绍 http://www.iteye.com/topic/350595 |
|
返回顶楼 | |
发表时间:2009-07-22
xly_971223 写道 potian 写道 根本没必要搞这么复杂,一个关键字/值数据库就足矣
一两行代码的问题 即使需要简单的查询操作也可以胜任 所有不需要要计入关系模型的,不需要进行复杂统计的,都可以这样做,包括用户的最后点击时间等等 持续每秒钟几万次的更新轻而易举 tokyotyrant,bdb都可以 tokyotyrant中文文档貌似比较少 bdb倒是可以尝试一下 真当是晕倒了,就是启动一下,写一两行代码的问题,为什么还需要很多中文文档 何况作为一个程序员,看几句英语都吃不消 bdb写个网络接口也是很简单的事情,用libevent或者eventmachine或者什么java网络框架都可以呀 |
|
返回顶楼 | |
发表时间:2009-07-22
potian 写道 xly_971223 写道 potian 写道 根本没必要搞这么复杂,一个关键字/值数据库就足矣
一两行代码的问题 即使需要简单的查询操作也可以胜任 所有不需要要计入关系模型的,不需要进行复杂统计的,都可以这样做,包括用户的最后点击时间等等 持续每秒钟几万次的更新轻而易举 tokyotyrant,bdb都可以 tokyotyrant中文文档貌似比较少 bdb倒是可以尝试一下 真当是晕倒了,就是启动一下,写一两行代码的问题,为什么还需要很多中文文档 何况作为一个程序员,看几句英语都吃不消 bdb写个网络接口也是很简单的事情,用libevent或者eventmachine或者什么java网络框架都可以呀 大侠就是不一样 啥都能写 能不能写一个学习一下 |
|
返回顶楼 | |
发表时间:2009-07-22
最后修改:2009-07-22
厄 等待更详细的解说
|
|
返回顶楼 | |
发表时间:2009-07-23
redis ?我都不知道 lz 这个好用么 给讲讲
|
|
返回顶楼 | |
发表时间:2009-07-23
potian 写道 xly_971223 写道 potian 写道 根本没必要搞这么复杂,一个关键字/值数据库就足矣
一两行代码的问题 即使需要简单的查询操作也可以胜任 所有不需要要计入关系模型的,不需要进行复杂统计的,都可以这样做,包括用户的最后点击时间等等 持续每秒钟几万次的更新轻而易举 tokyotyrant,bdb都可以 tokyotyrant中文文档貌似比较少 bdb倒是可以尝试一下 真当是晕倒了,就是启动一下,写一两行代码的问题,为什么还需要很多中文文档 何况作为一个程序员,看几句英语都吃不消 bdb写个网络接口也是很简单的事情,用libevent或者eventmachine或者什么java网络框架都可以呀 对只用过一种主流语言的程序员来说,你这个建议等于没说一下,只能让人更崩溃 |
|
返回顶楼 | |
发表时间:2009-07-24
不管楼主有没有必要做的这么复杂,但是我觉得楼主给我们提供的这个思路还是不错的!
|
|
返回顶楼 | |
发表时间:2009-07-24
potian 写道 根本没必要搞这么复杂,一个关键字/值数据库就足矣
一两行代码的问题 即使需要简单的查询操作也可以胜任 所有不需要要计入关系模型的,不需要进行复杂统计的,都可以这样做,包括用户的最后点击时间等等 持续每秒钟几万次的更新轻而易举 tokyotyrant,bdb都可以 同意 使用libevent/mina+bdb可以实现高效的点击服务器 bdb可配置增大内存cache 另外开发一套bdb备份恢复数据的程序可解决bdb文件崩溃的问题 跟据生产环境的真实数据,libevent+bdb方案,一台机器可以支撑600W的pv 如果pv继续增大,可考虑对key做hash,分部到n台机器上 |
|
返回顶楼 | |
发表时间:2009-07-24
引用 使用libevent/mina+bdb可以实现高效的点击服务器 bdb可配置增大内存cache 另外开发一套bdb备份恢复数据的程序可解决bdb文件崩溃的问题 跟据生产环境的真实数据,libevent+bdb方案,一台机器可以支撑600W的pv 如果pv继续增大,可考虑对key做hash,分部到n台机器上 看来得学习一下libevent了 |
|
返回顶楼 | |
发表时间:2009-07-24
xly_971223 写道 srdrm 写道 用得着这么复杂吗, 我定个时间, 每隔30分钟将所有贴子的hits缓存刷到数据库中, 或者10分钟. 或者, 任意定个时间, 至少能解决绝大部分问题
如果缓存了10w帖子 假设有1w个发生了变化 你刷到数据库看看 1W条sql几乎同时到服务器不搞死才怪 10w对一个网站来说是非常小的数目了 如果是100W 1000W呢? 你怎么会缓存那么多帖子呢? 我觉得这才是最大的不合理! |
|
返回顶楼 | |