Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 实时后台服务_Javascript_Angularjs_Laravel_Ionic Framework_Realtime Api - Fatal编程技术网

Javascript 实时后台服务

Javascript 实时后台服务,javascript,angularjs,laravel,ionic-framework,realtime-api,Javascript,Angularjs,Laravel,Ionic Framework,Realtime Api,我现在正在使用ionic framework开发一个移动应用程序,它使用larvel 4 REST API对MySql数据库执行CRUD操作。根据应用需求,移动应用需要每次调用后端服务来完成一定的流程。 我使用Angular Resource调用这些API,并使用Javascript setinterval函数每隔3秒调用一次。然而,该应用程序正在运行,我并不认为这是一个好的做法,因为这对服务器和客户端来说都是一项繁重的任务。 你们能指导我如何解决这种情况吗?我非常感谢你们的帮助。特别是,我应该

我现在正在使用ionic framework开发一个移动应用程序,它使用larvel 4 REST API对MySql数据库执行CRUD操作。根据应用需求,移动应用需要每次调用后端服务来完成一定的流程。 我使用Angular Resource调用这些API,并使用Javascript setinterval函数每隔3秒调用一次。然而,该应用程序正在运行,我并不认为这是一个好的做法,因为这对服务器和客户端来说都是一项繁重的任务。
你们能指导我如何解决这种情况吗?我非常感谢你们的帮助。特别是,我应该设置哪种工具,它们是什么?谢谢。

setInterval不是从API服务器/DB接收新数据的最佳做法,因为当太多用户访问您的网站时,服务器可能会被淹没。然而,有一个更漂亮的解决方案:
WebSockets
。使用WebSocket,您可以实时接收通知。我不是PHP开发人员,所以我不知道什么WebSocket库用于Laravel/PHP开发。但关于AngularJS,我可以推荐如下:

WebSocket示例(不相关):

希望这有帮助


干杯

我认为在这两种情况下最好不要使用
setInterval
。它没有考虑请求的时间延迟。最好在成功和错误中调用setTimeout callbackshanks Andrei,这对我很有帮助,感谢您的回答。除了Laravel/PHP环境之外,还有哪些环境?你在用其中的一些吗?如果环境不是超硬的话,我可以改变它。Laravel/PHP环境很好。WebSockets是一个多平台/技术库。你用什么语言都没关系。尝试一些PHP WebSockets库,看看哪一个最适合。WebSockets只是一个简单的服务器,它在通知发生时发送通知,客户端(JS)侦听这些通知并根据响应执行一些操作。