我想开发像facebook这样的聊天应用程序。我这样做了,现在它工作正常。我使用ajax来继续保存和检索数据的服务器请求。一个函数每10秒调用一次:
// Load message
(function loadClient() {
$.ajax({
type: 'POST',
data: 'c_id=' + $.cookie("c_id") + '&offset=' + $('#c_name_msgHead').data('offset'), //'foo='+ bar+'&calibri='+ nolibri,
dataType: 'json',
url: $("#webroot").text() + 'chats/loadMsg',
success: function (data) {
var id =0;
if ($.cookie("status") == "active"){
$.each(data, function (i, item) {
if(item.Chat.status == 'active'){
$('.temp_msg').remove();
}
if (!$('#' + item.Chat.id)[0]) {
if (item.Chat.admin_message) {
$('<div class="msg_b" id="' + item.Chat.id + '">' + item.Chat.admin_message + '</div>').insertBefore('.client_area .msg_push');
}
if (item.Chat.client_message) {
$('<div class="msg_a" id="' + item.Chat.id + '">' + item.Chat.client_message + '</div>').insertBefore('.client_area .msg_push');
}
$('.msg_body').scrollTop($('.msg_body')[0].scrollHeight);
}
id = item.Chat.id;
});
$('#c_name_msgHead').data('offset', id);
}
},
complete: function () {
// Schedule the next request when the current one's complete
setTimeout(loadClient, 3000);
}
});
})();
// END load message
10秒后加载更新数据。现在如果一次有10000个用户将10000个请求发送到我的服务器,这是一个关注性能和服务器可能会发生关机。即使10000个用户没有开始聊天,也会执行10000个请求。那么我应该怎么做才能开发出这样的应用程序,它需要连续使用老虎服务器或者使用哪种技术进行Facebook聊天。任何想法将不胜感激。谢谢