我有一个Rails服务器,在保存记录时需要向LabVIEW系统发送一些数据。在Rails中使用after_save挂钩并且很可能是redis worker时,这不应该太难。
我有三个非常简短的原始字段需要为每个事件分派。我们想到了两个解决方案:
该工厂拥有稳固的内部网络和一些网络共享。我可以编写一个ruby脚本来附加到逗号分隔值的文件。 LabVIEW可以拖尾文件(我假设)并在变化时读取事件。每一个都有一个唯一的ID,因此如果它错过了一大堆(系统发生故障),LabVIEW就可以“赶上”。
使用套接字向LabVIEW发送自定义对象甚至YAML字符串(或其他)。这种方法似乎更难实现断开处理和事情,但我喜欢Rails可以判断是否有人在听。是否可以告诉redis worker保持端口打开,然后通过写入套接字来处理作业队列?大概..
我刚刚开始时是一个相当新手的程序员,所以你可以提供的关于进行这种连接的任何提示都会很棒。
答案 0 :(得分:0)
我现在认为正确的方法是使用XML。使用格式化xml的控制器操作,这将非常简单。像这样:https://gist.github.com/jcasimir/1212245我也可以将XML写入文件,我相信,尽管我更喜欢前者。