setInterval是获取通知的正确方法吗?
问题描述:
我需要在我的yii2内置系统创建一个邮件通知,setInterval是获取通知的正确方法吗?
所以我用这种方式
1 - 我在消息控制器功能GETNEW创建:
public function actionGetnew()
{
$query1 = new Query;
$query1->select([" count(*) as price "] )
->from('messeges');
//->where // here i will add the id of user that logged in and the state of unread messages !
$command1 = $query1->createCommand();
$price = $command1->queryAll();
echo Json::encode($price);
}
2 - 我创建JS文件:
window.onload = function() {
setInterval(function(){
$.get('index.php?r=messeges/getnew',function(data)
{
var data=$.parseJSON(data);
$(".messages").html(data[0].price);
});
}, 5000);
};
3-我加入HTML标签这样的:
<h6 class="messages"></h6>
一切工作正常,但我的问题是正确的方式来做到这一点? ,是否会在我的服务器上添加更多流量和负载?如果有更好的想法,请通知我!
探索socket.io。它用于构建实时数据流应用程序,其中还包括通知系统 –