0

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

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

谢谢你的帮助!

4

2 回答 2

2

你会推荐什么来存储数据?Mongo db(mongoose?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 吗?

还需要更好地了解它们。

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