A REST interface that allows publishing of services was simply low hanging fruit. I plan to support various approaches.
That said, I don't think a REST approach is incompatible with clustering. Currently the runtime engine supports plugging in different implementations of "IRegistry" which is the thing that manages Service and Application publishing. I was anticipating an ISPN implementation of that. So the REST interface could still be used to "publish" a Service to the runtime. It would ultimately invoke an ISPN version of a IRegistry to actually publish the Service, which would result in propagating that info across a cluster.
I think there are actually bigger issues with REST as a mechanism to publish Services including:
- usage when not running an HTTP based gateway
To address these issues I think a JMS publishing mechanism would be useful.
In any case, I think clustering should happen at the IRegistry layer, not necessarily at the level of a protocol used to communicate the Service definitions to the runtime.