构建节点.js聊天

Building a node.js chat

本文关键字:聊天 js 节点 构建      更新时间:2023-09-26

我目前正在为后端构建与node.js的网络聊天。它使用 Web 套接字进行服务器和客户端之间的通信。我以前没有使用过node,我总是使用PHP/MySQL和Ajax来存储和检索数据。聊天可以与MSN等与用户帐户和联系人列表进行比较。我正在寻找一些技巧和框架,可以帮助我开发一个严重依赖JavaScript的网站,并通过node.js进行所有通信。

  • 您建议如何存储数据?Mongo db (mongoose? mongo-db native?), SQLite?一个简单的解决方案将不胜感激。
  • 您会通过 websocket 发送所有内容,并且会为每个对话建立新连接吗?
  • 有没有办法完全绕过PHP?
  • 你会推荐使用Backbone.js还是Ember.js?

感谢您的帮助!

您建议如何存储数据?蒙戈数据库(猫鼬? mongo-db native?), SQLite?一个简单的解决方案将不胜感激。

我建议你使用redis,因为它非常快。

> Example of benchmark result The test was done with 50 simultaneous
> clients performing 100000 requests. The value SET and GET is a 256
> bytes string. The Linux box is running Linux 2.6, it's Xeon X3320 2.5
> GHz. Text executed using the loopback interface (127.0.0.1). Results:
> about 110000 SETs per second, about 81000 GETs per second.

作为客户,我会使用node_redis

你会通过websocket发送所有内容吗,你会建立一个 每次对话都有新的连接?

websockets还没有被每个浏览器支持(特别是指向Internet Explorer ;))。我认为您应该使用支持多种传输的 socket.io,以便它可以在每个主要浏览器中工作。

有没有办法完全绕过PHP?

你可以完全绕过PHP。例如,使用express作为您的Web框架而不是PHP

你会推荐使用Backbone.js还是Ember.js?

还需要更好地看待它们。

  • 使用 mongo-db 或 couchDB 来存储数据。
  • 建立新连接比通过 websocket 发送所有内容并解析它们要好。
  • 是的。在服务器端使用 node.js。
  • 您可以尝试其中任何一个。两者都有其优点和缺点。