在所有设备上从服务器接收更新

时间:2016-10-15 07:37:45

标签: http angular

我使用Angular 2将requets发送到我的Laravel PHP API并在我的客户端显示它们。 到目前为止,我使用以下代码检查服务器的新更新并更新我的数据(以3秒的间隔进行API调用):

ngOnInit()
{
  this.dataRefresh = setInterval(() => {
    this.dataInit(); 
  }, 3000);     
}

dataInit()
{
  this.http.get('APICALL')
    .map((res:Response) => res.json())
    .subscribe(
      data => {
        this.data = data;
      },
      err => {
        console.error(err);
      });
}

现在我进一步思考。我们假设有50台计算机同时连接到我的应用程序。他们每个人每3秒进行一次API调用,这意味着服务器必须每秒处理大约16个请求。

我的问题是: 我可以使用Angular 2 / Laravel来处理这种情况吗? 如果不是,目前的做法是什么?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用firebase等实时数据库。

而不是您的客户每秒要求更新您的API,您的API会在有任何更新时告知客户。

你可以找到firebase教程here& here

还有一些可用的软件包,例如angular2-firebaseangularfire2,可帮助您的Angular2应用轻松连接到您的firebase数据库。