如何优化/缩放此算法?

时间:2011-10-03 13:48:45

标签: database optimization

我的网站目前按排名顺序显示内容,其算法类似于: rank = points / age

唯一的问题是,随着添加的内容越来越多,为每个页面请求生成每个内容的内容排名是不切实际的。 我们不能将排名放在数据库中,因为它每秒都会发生变化。

任何人对如何优化这一点都有任何想法?

在伪代码中:

content_items = getContentFromDb();
foreach( content_items -> item ){
    calRank(item);
}
sort(content_items);
foreach( content_items -> item ){
    display(item);
}

1 个答案:

答案 0 :(得分:1)

你去,你现在表明问题的方式,很明显主要是缓存排名信息。

如果您希望在服务器场中共享caclulated排名,我建议使用简单的键/值数据库。周围有很多人,但不幸的是我没有使用任何任何严重的能力。我建议你阅读NoSql,也许看看memcached,couchdb,mongodb。

然而,就目前而言,我只是看看缓存排名。期。必要时进行优化