<
serviceProxy
name
=
"myService"
port
=
"8080"
>
<
path
>/service</
path
>
<
balancer
>
<
clusters
>
<
cluster zkServer="localhost:2181" basePath="services"/
>
</
clusters
>
<
roundRobinStrategy
/>
</
balancer
>
</
serviceProxy
>
Also i need to integrate a version number and the tenant. The tenant is stored in a header field and the required version of the service must be configured in membrane - maybe with the help of a custom interceptor -
so my path for zookeeper looks like /services/myService/V1/tenant1
What do you think -is this possible - is it better to embed and configure membrane in java and "inject" the discovered server list or to enhance membrane
TIA
Oliver
Hi Thomas,
I do not want to implement the discovery on the client side, cause i need also a solution for the web clients. So i came to the idea to use membrane as a configurable API-Gateway.
We came up with the same ;-)
Do you think it is possible to implement a replacment or enhancement for the clusters (Balancer) class to describe something like
<
serviceProxy
name
=
"myService"
port
=
"8080"
>
<
path
>/service</
path
>
<
balancer
>
<
clusters
>
<
cluster zkServer="localhost:2181" basePath="services"/
>
</
clusters
>
<
roundRobinStrategy
/>
</
balancer
>
</
serviceProxy
>
Also i need to integrate a version number and the tenant. The tenant is stored in a header field and the required version of the service must be configured in membrane - maybe with the help of a custom interceptor - so my path for zookeeper looks like /services/myService/V1/tenant1
I think you can combine the publisher with an interceptor.
What do you think -is this possible - is it better to embed and configure membrane in java and "inject" the discovered server list or to enhance membrane
--
TIA
Oliver
You received this message because you are subscribed to the Google Groups "membrane-monitor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to membrane-monit...@googlegroups.com.
To post to this group, send email to membrane...@googlegroups.com.
Visit this group at http://groups.google.com/group/membrane-monitor.
For more options, visit https://groups.google.com/d/optout.
Hi Oliver,
we are working on something very similar to your approach with the etcd registry. You can have a look at:
https://github.com/membrane/service-proxy/tree/master/core/src/main/java/com/predic8/membrane/core/cloud/etcd
The basic idea is that the endpoint address of a target comes from the registry ( zookeeper, etcd, ... ) and the Membrane router than uses that information to route to that endpoint.
We abstracted the publisher using spring, so you can just implement a different publisher.
Am 26.11.15 um 16:26 schrieb Oliver Komoll:
We came up with the same ;-)Hi Thomas,
I do not want to implement the discovery on the client side, cause i need also a solution for the web clients. So i came to the idea to use membrane as a configurable API-Gateway.
I would not use the loadbalancer to do that. I think the publisher is a nicer approach.
Do you think it is possible to implement a replacment or enhancement for the clusters (Balancer) class to describe something like
<
serviceProxy
name
=
"myService"
port
=
"8080"
>
<
path
>/service</
path
>
<
balancer
>
<
clusters
>
<
cluster zkServer="localhost:2181" basePath="services"/
>
</
clusters
>
<
roundRobinStrategy
/>
</
balancer
>
</
serviceProxy
>
...