我需要从在每个node.js操作上运行实时(且对时间敏感)的MySQL应用程序发出信号(任何websocket服务器都可以)。
我正在寻找最好的选择,到目前为止,我想出了:
a) MySQL上的触发器
然后,MySQL自己向websocket服务器发送信号,将更新推到客户端。
b) Java服务器
Java将发出node.js/任何将新数据推送到客户端的信号。
我认为让MySQL来处理发送node.js的工作负载对于Java来说会更有效(这是时间敏感的)。
还有第三种选择吗?比下面描述的要好吗?
发布于 2011-12-13 08:18:18
发布于 2011-12-13 06:43:00
首先,您必须确定哪个实体/活动在逻辑上生成信号。它是MySQL上的insert还是由Java应用程序执行的插入。是否有其他应用程序修改MySQL DB?如果没有,我会亲自将所有事件发布到一个队列(另一个进程)中,node.js服务器将监听该队列。在这里使用具有Node.js和Java客户端的队列会有所帮助。这样,数据库上的负载将最小化,体系结构将独立于DB/application (假设您从所有使用MySQL的应用程序中向队列发布更新)。
其中一个这样的队列就是贝斯塔尔德。
https://stackoverflow.com/questions/8485312
复制相似问题