我有两个应用程序——一个 php web 应用程序和一个 c 程序。php 应用程序必须将数据发送到返回结果的 c 程序。c 程序必须在一个循环中一直运行 (while(true),因为它必须将先前输入的数据保存在内存中。
我通过使用文件(输入和输出文件)来处理在 c 和 php 之间传递数据的问题。如果我的 Web 应用程序发生更改,我的 php 脚本会更新一个文件,该文件由我的 c 程序读取。输出被写入另一个文件。Web 应用程序一直在寻找变化。
我认为这不是解决此类问题的最明智的解决方案。可能它很多不必要的文件访问。
在以下线程的启发和帮助下,我认为使用一种 c php 服务器桥可能是一个很好的解决方案。
我从mongoose开始。Mongoose 是一个非常轻量级的网络服务器。我目前的想法是我的 Web 应用程序将通过 POST 将数据直接发送到我的 c 程序。该请求由 mongoose 网络服务器处理。这是要走的路吗?或者将其拆分为两个应用程序将是一个更好的解决方案 1)处理输入输出的网络服务器 - 两个程序之间的变量由共享内存传递 2)我当前的 c 程序用于我的操作(通过共享内存输入/输出)
或者这完全是错误的方式,a)我应该坚持我的文件解决方案 b)有更好的方法吗?对于所有这些问题,我感到很抱歉,但我对 c 很陌生,而且很挣扎,对这一切都没有信心。
编辑
我尝试更具体地说明我的 c 程序的功能。基本上它是一个模拟。它就像一个状态流,有大约 20-40 个输入,这些输入都是整数,大多数时候只有 0 或 1。程序基于输入和先前的状态进行操作。通过将输入文件更改为原始状态,在一次迭代后重置输入。
输出文件始终使用相应的输出值更新(如 var = 1 var2 = 3)