使用else/if语句或SQL查询是否更快?

Kir*_*uri 1 sql database perl performance xml-parsing

我正在构建一个在Web门户上显示信息的应用程序.我在建筑物中有一些X读卡器,这些读卡器与同一建筑物内的控制器通信.如果读卡器上有任何滑动,它们会将信息发送到控制器,控制器会将其写入数据库.

一旦刷卡事件发生,我必须在网页上显示此读卡器信息.所以我使用perl Pcap来捕获控制器和数据库之间的数据包,读取有效负载,解析它就像"如果第n位是打印这个,如果,打印这个",我重复相同的其他如果处理门号,卡号,门打开/锁定状态等

所以我的问题是,哪一个更快?从SQL数据库获取最新数据以更新网页的程序,如果是迭代,则解析数据然后将其写入XML数据库以及运行以更新网页的订阅脚本?

amo*_*mon 6

唯一真正的答案是:Go,profile both.

需要考虑的事项:

  • 从数据包中提取数据感觉就像一个kludge.丑陋,hackish,容易破损,不可维护.
  • "XML数据库"是个骗局.请改用真正的数据库.
  • 跨多个数据库复制您的信息可能是不必要的冗余,并且可能导致两个信息存储库不同步.另一方面,将单独的数据库用于单独目的可以具有各种益处.
  • 某些数据库允许您安装将新记录添加到表时执行的触发器.使用将新事件推送到Web界面的触发器可能是最有效的解决方案.
  • 另一种解决方案是让一个作业定期轮询数据库以查找充当Web界面缓存的新事件.这可能不比运行pcap贵.