当前位置: 首页 > 面试题库 >

编写聊天应用程序

都博裕
2023-03-14
问题内容

我想知道为数千名用户编写聊天应用程序的正确方法是什么。

我只是感到困惑,我如何才能每秒使用AJAX或更少的方法来对服务器执行ping操作,并检查MySQL中是否有新记录等,并且服务器负载可以接受。

我目前正在考虑使用jQuery,PHP和MySQL进行编码。

请指教。您的帮助将不胜感激。


问题答案:

客户端

对于需要轮询服务器的任何程序,我建议使用WebSockets。

我写了一个非常基础的WebSocket教程。我还使用了web-socket-js代码来实现FlashSocket,从而使其可在Firefox,IE
8+和Chrome以及支持WebSockets的任何浏览器上运行。

我认为轮询不是聊天应用程序的理想选择。尽管可以工作,但与使用WebSocket相比,请求开销会高得多。折衷(好处)是更多的浏览器支持它。

同样,点击一个MySQL数据库以查看是否有消息将导致大量的数据库开销。我建议使用MySQL数据库作为聊天记录,并且只保留有限数量的“后退”消息用于新连接。然后,只需向所有连接的客户端广播新消息即可。然后,前端应用程序将获取消息并将其附加到聊天窗口。

服务器端

Node.js是一个有事件的服务器端JavaScript框架。虽然它还很年轻,但是其中已经编写了一些非常有趣的应用程序。Node.js人员设置了一个聊天程序(不是WebSockets),该聊天程序的源代码已经可用。如果不想从头开始编写,那将是一个很好的起点。

有一个PHP
WebSocket
实现。根据您的要求,可以使用它。在使用Node.js和PHP进行编码后,我想我认为Node.js更适合于此。



 类似资料:
  • 上一节我们用ws模块创建了一个WebSocket应用。但是它只能简单地响应ECHO: xxx消息,还属于Hello, world级别的应用。 要创建真正的WebSocket应用,首先,得有一个基于MVC的Web应用,也就是我们在前面用koa2和Nunjucks创建的Web,在此基础上,把WebSocket添加进来,才算完整。 因此,本节的目标是基于WebSocket创建一个在线聊天室。 首先,我们

  • 本文向大家介绍Android编写简单的聊天室应用,包括了Android编写简单的聊天室应用的使用技巧和注意事项,需要的朋友参考一下 最近写了一个简单的聊天室应用,可以发送表情,更改头像这些功能。主要技术点就是怎样把表情图片放到textview等Ui控件中展示。这里废话不多说,下面是效果图:  这里主要讲下怎样把文本替换到表情,先说下思路,首先我们的图片是保存在本地资源目录drawable中而所有的

  • 本文向大家介绍chat.asp聊天程序的编写方法,包括了chat.asp聊天程序的编写方法的使用技巧和注意事项,需要的朋友参考一下 可能朋友们已经在一些杂志上看到过 ASP 聊天程序的编写方法,但作者在这里自己写了一个更简单的程序,仅仅使用了一个 .asp 文件。请将以下代码剪贴到记事簿并保存为chat.asp。    下面我们来对这个聊天室程序进行逐步的分析。    首先,由于聊天室的所有客户都

  • 我正在使用XMPP在app引擎上编写一个聊天应用程序。我的想法是允许用户互相聊天。我可以将消息发送到google talk帐户,方法是将登录的用户删除地址的@gmail.com部分,并将其替换为@appid.appspotchat.com)。例如,如果登录的用户是bob@gmail.com,则用于发送的jid将是bob@appid.appspotchat.com)。然后,您可以将消息发送到goog

  • 现在我们已经熟悉了Socket.IO,让我们编写一个聊天应用程序,我们可以用它在不同的聊天室聊天。 我们将允许用户选择用户名并允许他们使用它们进行聊天。 首先,让我们设置我们的HTML文件来请求用户名 - <!DOCTYPE html> <html> <head> <title>Hello world</title> </head> <script src = "/s

  • 本文向大家介绍Android利用RecyclerView编写聊天界面,包括了Android利用RecyclerView编写聊天界面的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android RecyclerView编写聊天界面的具体代码,供大家参考,具体内容如下 1、待会儿会用到RecyclerView,首先在app/build.gradle(注意有两个build.gradle,