IceStorm behind a private net
Is there anyway to assign a timeout easily to an operation in Ice?0
Yes, it's quite easy. Please see the Ice manual0
I want to invoke an operation over a proxy, but it is possible that the physical connection to the object was down, so the invocation will wait indefinitely for the response. How can I avoid it??0
Just add a timeout. Please see the manual for details.0
I believe the problem is that the IceStorm service fails to establish a connection to your subcriber. To solve this, your client should use a bi-directional connection. This way, the IceStorm service would use this bi-directional connection to send updates to your subscriber instead of trying to establish a new connection to your subscriber.
You can't directly use Ice bi-directional connections as shown in the demo/Ice/bidir example with IceStorm. Instead, you should use Glacier2. The Glacier2 process would sit between the Internet and the IceStorm service on your diagram. Your client would connect to Glacier2 and create a session. The connection between your client and Glacier2 would automatically be a bi-directional connection.
I would recommend to try the demo/Glacier2/callback or demo/Glacier2/chat demo. If possible, you could try to deploy this demo in the scenario you describe on your diagram.
The Issue 3 of the newsletter, "An Introduction to IceStorm", also has an example very similar to what you're trying to do with IceStorm, I recommend you to take a look at it and eventually try it.
Let us know if you need more information!
I have a similar problem and this post confuses me.
First you write that a bi-directional connection would solve this. But then you write that he cannot use bi-directional connections and should use Glacier.
I had the hope that this would work if with a bi-directional connection, if the subscriber can reach IceStorm. Could you please clarify?0
This discussion is quite old (over 10 years). Please start a new discussion and be sure to include which version of Ice you are using.0