Hi,
I actually got it working, but with a very simple version. Network Farm Agents on the remote machine talking to a pipe server on the remote machine.
I think the problem was too many connections to the pipe server from 8xAgents starting one time, and it just messed everything up. And I only had 1 pipe server instance running. Every now and then I would get the following error in the remote machines agent's logs:
NM 0 13:26:05.159 127.0.0.1 tester forced to stop GF 0 13:26:05.160 optimize Experts\PipeTest.ex5 on AUDUSD.a,M1 thread finished EJ 0 13:26:05.164 127.0.0.1 prepare for shutdown JE 0 13:26:22.715 127.0.0.1 login (build 3180) QS 0 13:26:22.724 127.0.0.1 tester forced to close OE 0 13:26:22.727 127.0.0.1 stop immediately PN 0 13:26:22.937 Server MetaTester 5 stoppedThe the only way to fix it was to restart the machine. The agents would even stop writing to their logs, so I think it's something to do with messing up their file writing (a Pipe is an in-memory file I suppose). Restarting the services or the pipe server wouldn't fix it. Maybe the pipe name became corrupt and a reboot fixed it, don't know. However once it got working on a reboot, it would keep working.
I'm still having trouble getting it working with my main pipe server, it's a bit more complicated. It's all a bit flaky, so I'm thinking of changing it over to mq. My pipe servers were only just creating messages and sending them to RabbitMQ anyway, so I might as well start the message directly from a dll rather than pipes.
Thanks for your response though,
Regards.
![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Hi All,
Sorry for another pipe vs. http dll question, but I don't think it's been asked before whether you can use pipes in Strat Tester on remote agents in your own network farm.
I've been trying to run an EA that communicates through a named pipe (using the stdLib CFilePipe), and it all works in Strategy Tester as long as you use 'Local Agents'.
However, when I try to run them using 'Local Network Farm' agents, the pipe fails. I have the pipe servers running on the other machines in the Network farm, so you would think it would connect. They aren't trying to connect to pipes remotely, just a local pipe named '\\\\.\\pipe\\fx-queue' on each machine.
Even if I set up my local machine as using Local Network Farm agents, (by enabling them locally in MetaTester and disabling the 'Local Agents', it still won't open the pipes when it runs. It just seems like we can't open pipes in a Network Farm.
Has anyone seen this or been able to get around it? Am I missing something basic here?
I thought I was 'doing the right thing' using pipes instead of http or an MQ client with a dll, so this is a bit of a killer for me. I might have to go back to that.
Appreciate any input,
Regards.