服务器端或客户端用于获取推文?

时间:2012-04-23 19:50:30

标签: php javascript client-side server-side

我为我父亲运行this网站,该网站从他的推文Feed中提取推文并以其他格式显示。目前,推文是使用javascript完全拉客户端的。是最有效的做事方式吗?该网站几乎没有命中率,但我只是对什么是最好的扩展方式感兴趣。任何建议都会很棒。我也想在某个时候在流中包含文章。实现它的最佳方法是什么?

6 个答案:

答案 0 :(得分:7)

Twitter API请求为rate limited to 150 an hour。如果您的页面被请求的次数超过此值,您将收到来自Twitter API的错误(HTTP 400错误)。因此,在服务器上请求推文并在一段时间内缓存响应可能是更好的主意。您可以每小时最多请求150次最新推文,并且只要您的页面被请求,它就会从您的服务器端脚本接收缓存的推文,而不是直接调用API。

来自Twitter文档:

  

每小时允许150次未经身份验证的通话。   未经身份验证的呼叫是根据面向公众的IP来衡量的   提出请求的服务器或设备。

我最近做了一些与Twitter API集成的工作方式与您完全相同。即使只是在测试应用程序时,我们也很快达到了速率限制。该应用现在可以在服务器上缓存推文,并且每小时更新一次缓存。

答案 1 :(得分:1)

我建议使用客户端来调用Twitter API。避免调用您的服务器。使用客户端js的唯一缺点是你无法控制观众是否会停用js。

您希望在流中添加哪种文章?喜欢直接在您的网站或外部文章上的博客文章?

答案 2 :(得分:0)

通过拉动推文服务器端,您将通过服务器路由所有推文流量。因此,您的所有流量都来自您的服务器,可能会导致您网站的性能下降。

如果你对那些不可能是客户端的推文不做任何神奇的事情,我应该坚持你当前的解决方案。它没有任何问题,并且它的规模非常大(假设你当然没有超越Twitter的服务器;)

答案 3 :(得分:0)

从可扩展性方面来说,从客户端提取推文肯定更好。我在你关于添加文章的第二个问题中不明白你在寻找什么

答案 4 :(得分:0)

我认为如果你可以做到这一点客户端去吧!它将带宽用法推送到浏览器。减少服务器负载。我认为它也是可扩展的。只要您的客户可以发出网络请求,他们就可以显示您的网站!没有比这更容易!你的服务器永远不会成为他们的瓶颈!

如果你能通过api获得文章我会坚持当前的设置保持每个客户端。

答案 5 :(得分:0)

对于那种非常低需求的东西,它真的不重要。如果每个用户有大量任务,那么您可能需要考虑服务器端。如果您拥有大量用户,并且每个用户只有少数任务(推文或其他内容),那么客户端AJAX可能就是您的选择。至于你的文章,我可能会在那里服务器端,因为你将使用的数据大小..