Node.js独立套接字会话
Node.js independent socket sessions
我对使用node.js是新的,所以请原谅我的无知:)
现在,我有一个使用Node/Angular/Express的Web应用程序,以从服务器上的DLL调用C 功能,并将结果返回给客户端。但是,我需要该应用来支持多个用户。
C 服务器函数我正在调用,基于DLL中定义的全局对象返回结果(可以修改)。问题在于,当有多个客户端访问Web应用程序时,在一个会话中修改全局对象效果在其他会话中访问的对象。
示例:
- x是服务器上C DLL中的对象
- 用户#1设置X到5
- 服务器将5返回到用户#1
- 用户#2设置X到8
- 服务器将8返回给用户#2
- 用户#1要求x值
- 服务器将8返回到用户#1(希望返回5的服务,因为这是从用户#1的角度来看x的最新值)。
我的假设是我应该使用socket.io之类的东西(类似于基本教程http://socket.io/get-started/chat/)。这可以指示用户何时连接到该应用程序,但是无法使会话与用户的角度保持独立。
关于如何保持这些会话独立的想法?谢谢!
这不是node.js问题。Node.js可以很好地进行会议(Express-Session是使用Express和Node.js实施会话的一种非常流行的方式)。
这听起来您有一个DLL,一次只能支持一个单个用户,而这实际上不适合多用户服务器使用。
尽管有非常丑陋的方法可以解决此问题(例如为每个用户启动一个缓存和老化的单独的子过程,因此每个子过程都有自己的单独的DLL加载副本),但您需要的是DLL不会将一个用户的状态保留在全局内存中,因此可以代表多个用户使用。
相关文章:
- 当套接字连接断开时检测C/C++Unix
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 如何通过套接字将文本文件的内容从服务器发送到客户端
- 如何在C/C++中用FD_set Unix设置套接字文件描述符
- 套接字读取后,我在缓冲区中看到意外输入
- 如何在CPP中创建应该在Windows和Linux上运行的套接字?
- 我可以与 python 服务器而不是 c++ 客户端建立 tcp/ip 套接字吗?
- 套接字连接"Operation not permitted"错误,甚至使用升压/平发器根.cpp
- WINAPI 注册应用程序重新启动时不清除打开的套接字
- (Winsock) UDP 接收工作正常,但同一套接字的发送失败
- MSG_WAITALL的套接字发送得到了 22 EINVAL
- C++套接字客户端到 Python 服务器未创建连接
- 在不知道套接字的情况下关闭网络连接
- C++套接字对不读/写父/子
- 非更新套接字消息
- SIGSEGV on Boost UDP 套接字关闭 - tcache_get at malloc.c.
- 将"uint8_t"(从套接字读取)隐式转换为"char"安全吗
- 当对套接字 send() 的同步调用由于连接另一端丢失而被阻止时,如何恢复?
- 当客户端在 write() 期间终止连接时,由对等套接字错误重置连接
- Node.js独立套接字会话