Hullo all. I hope the collective intelligence of the community can help guide us here.
We have a large-ish program written & running under AcuGT (Extend) for Windows. It has a Windows UI. It is a real-time transaction processing engine with a UI to monitor and control the activity. So it runs in 2+ threads but its a single program.
We want to split this into two programs:
- A transaction processing engine that runs as a Windows Service, so it launches on boot and is always running. No UI at all.
- A UI that interacts with the above program. Ideally we would just take the existing code - the current UI thread - and make minimal changes to it, so it will still be an AcuGT/Extend program. But users could launch/run it using AcuToWeb.
We want to put minimal effort into this, as it does not extend the functionality of our product, it just solves some security + remote-access issues.
It should not be too hard to simply split this one program (currently implemented as two threads) into two programs. But what would be the easiest (and most robust) way to implement (inter-process) communications between them? They will be running on a single server.
Note there could be multiple instances of the UI app. We will have to figure that out. We can utilize a design that allows only one at a time.
Thank you!