my client is an organisation that provides a hub which other organisations integrate with.
The other organisations have quite severe security requirements, and do not allow any incoming IP connections to them.
We push data in near realtime (lots of small messages) to the partner organisations.
We currently use an enterprise messaging solution, which is great, but is really stretched out of it's key specialties.
We are considering a document oriented web services implementation, but the requirement to push data back with fairly low latency (<1sec) is proving a tough requirement for a web services implementation.
Some of our partner businesses are .NET based.
So far we have considered:
1. a blocking HTTP web service that simply returns with messages when they are available (continuously polling would have too low latency)
2. ws-eventing/ ws-notifications style push back to end points implemented by parter organisations, using JMS or other messaging middleware
Option 2 will probably work, but is complex.
Has anyone done web services with style 1 - is there any existing products that provide blocking web services over http? (They key is that client is any vanilla web services implementation, while proprietary stuff is fine on the server side).
Product recommendations, design criticisms, flames, and astrosurfing all welcome :)