小编Vla*_*vic的帖子

将总值存储到 SQL 数据库中是否明智?

我想问一下将总值存储到 SQL 数据库中是否是个好主意。总价值是指订单的总成本总数量之类的东西

例如,我将有一个名为orders的表,其中包含诸如创建时间、下单者等信息。Orders将与表order_items相关,该表将保存订单中项目的ID、数量订单中商品的价格和销售价格(不是商品的原始价格)。

在这种情况下,我应该计算一次订单的总成本并将其存储在订单表中,还是应该每次检索带有相应商品的订单时都计算一次?

sql database design-patterns store

3
推荐指数
2
解决办法
1515
查看次数

节点 Socket.IO socket.on() 跨多个文件

我在节点应用程序中使用 Socket.IO,我希望捕获并响应不同文件中的套接字事件,我该怎么做?

我找到的一个解决方案是在设置 socket.io 的文件中执行此操作:

var events = [];
module.exports.setup = (server) => {
  io = require('socket.io')(server);
  console.log("Socket.io setup complete");
  io.on('connection', (socket) => {
    for(let e of events){
      socket.on(e.event, e.callback);
    }
  });
};

module.exports.on = (event, callback) => {
  events.push({event: event, callback: callback});
};
Run Code Online (Sandbox Code Playgroud)

这工作得很好,唯一的问题是我无法到达套接字对象,因此我不知道哪个套接字发出了事件。

编辑

好吧,我想另一种方法是将 cb 中的套接字作为第一个参数传递,但也许有更好的方法。

javascript sockets node.js socket.io

1
推荐指数
1
解决办法
1877
查看次数