2

我正在开发一个我相信会成倍增长的网站。

开发网站时非常简单,需要考虑带宽使用和速度。我很担心,因为我在这方面的经验很少,所以虽然我知道该网站可以同时处理十个用户,但我不知道它是否可以处理 100 甚至 1000。

如果它发生,我宁愿防止问题而不是治愈它,因此正在寻找有关该主题的任何建议/信息/对以下特定查询的答案。

如果我有一个产品表,其中有一个类别列。然后,我在产品表中搜索所有具有“食品”类别的项目 - 这是否比具有包含包含在其中的产品 ID 的列的类别表更可取?

使用 Codeigniter 从模型中调用其他模型的缺点是什么?

使用 javascript(使用 jquery)我想要一个包含通知(来自 db 表)的自动刷新 div。据我所知,除了完全做到这一点之外,别无他法 - 每 x 秒重新加载 div .. 有 1000 个用户,每 10 秒重新加载一个 div 我可以看到事情变得非常资源密集。facebook等肯定必须做这样的事情..?如何有效地实现这一目标?

非常感谢托马斯

4

1 回答 1

0

如果我有一个产品表,其中有一个类别列。然后,我在产品表中搜索所有具有“食品”类别的项目 - 这是否比具有包含包含在其中的产品 ID 的列的类别表更可取?

这取决于您在表上的索引。如果您知道关联的 idfood并且您不必查找该信息,那么整数会更快 IIRC。

使用 Codeigniter 从模型中调用其他模型的缺点是什么?您的代码可能会变得混乱,而且它不是很理想.. 为什么需要这样做?

使用 javascript(使用 jquery)我想要一个包含通知(来自 db 表)的自动刷新 div。据我所知,除了完全做到这一点之外,别无他法 - 每 x 秒重新加载 div .. 有 1000 个用户,每 10 秒重新加载一个 div 我可以看到事情变得非常资源密集。facebook等肯定必须做这样的事情..?如何有效地实现这一目标?

有几种方法可以解决这个问题,一种是使用套接字并将通知推送给用户。见http://pusher.com

还可以使用 jQuery 并$.ajax在计时器上通过 CI 每隔 x 秒刷新一次控制器/动作……例如;

$.ajax({
  //controller/method/limit
  url: "/notifications/get/10",
  success( function(d){
    //d is a json_encoded object returned back from the controller
  }
});

最后,您可以在页面加载时加载所有通知,并每隔 x 秒一次显示一个。

第一个和最后一个选项可能是最不占用资源的。

第一个是因为您只是在发生更改时查询和推送。第二个是因为您每次页面加载只加载一次通知,而不是每 x 秒无论如何。

于 2012-07-26T19:54:40.007 回答