camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: [HEADS UP] Camel clustering bits
Date Fri, 16 Jun 2017 20:03:40 GMT
Hi

Thanks.

As we introduced a new package in camel-core, do you mind adding a
package.html for javadoc, and I think you may need to add it to the
pom.xml as well for the javadoc plugin

On Fri, Jun 16, 2017 at 5:39 PM, Luca Burgazzoli <lburgazzoli@gmail.com> wrote:
> First bits merged
>
> ---
> Luca Burgazzoli
>
>
> On Thu, Jun 15, 2017 at 11:05 AM, Nicola Ferraro <ni.ferraro@gmail.com> wrote:
>> +1
>>
>> Really a great work Luca. It's completely separated from the route policy
>> so that we can also implement the generic master component on top of it.
>> But it can also be used for other purposes by just implementing a listener
>> interface. The cluster view is also a clean way to monitor the cluster
>> status.
>>
>> You have also shown how to clusterize the whole context (all routes) using
>> the route policy factory, and route policies can also be set at route level.
>>
>> So, merge it and I'll implement the Kubernetes cluster service with this
>> new spec!
>>
>>
>>
>> On Wed, Jun 14, 2017 at 3:49 PM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
>>
>>> +1
>>>
>>> Great work Luca. Its good to see this coming in camel-core, as we now
>>> have many more Camel components that does clustering and leader
>>> elections. It makes good benefit to have some common reusable code
>>> from camel-core.
>>>
>>>
>>>
>>> On Wed, Jun 14, 2017 at 11:36 AM, Luca Burgazzoli <lburgazzoli@gmail.com>
>>> wrote:
>>> > Hello,
>>> >
>>> > I've been working on CAMEL-11362 to create a leader election service
>>> > in recent times and I've ended up with some initial bits of a
>>> > potential clustering service for Camel [1].
>>> >
>>> > So fare there are a few simple interfaces:
>>> > - CamelClusterService
>>> > - CamelClusterView
>>> > - CamelClusterMember
>>> >
>>> > The CamelClusterService is just a regular camel service and is
>>> > responsible to create views of the cluster; a view is like a "group"
>>> > with its own set of resources like a leader/services/etc and i.e.
>>> > broadcast of messages should not go beyond its borders, etc; how the
>>> > view is mapped then depends on the underlying technology used so it
>>> > can be a group in atomix/jgroups, a path in zk/etcd, a map in
>>> > hazelcast/infinispan, etc.
>>> >
>>> > As today the View API is limited to leader election and topology
>>> > events (member joining/leaving the view) and I've build a generic
>>> > RoutePolicy and RoutePolicyFactory on top of them [2][3]. A future
>>> > work may be to add support for service discovery, load balancing ad
>>> > more.
>>> >
>>> > I also started the implementation of camel-atomix based on the
>>> > atomix.io project which offers some easy to use APIs for distributed
>>> > systems so an implementation of the API can be found here [4] and a
>>> > test here [5].
>>> >
>>> >
>>> > Feedback is very welcome.
>>> >
>>> >
>>> > [1] https://github.com/lburgazzoli/apache-camel/tree/
>>> CAMEL-11362/camel-core/src/main/java/org/apache/camel/ha
>>> > [2] https://github.com/lburgazzoli/apache-camel/blob/
>>> CAMEL-11362/camel-core/src/main/java/org/apache/camel/
>>> impl/ha/ClusteredRoutePolicy.java
>>> > [3] https://github.com/lburgazzoli/apache-camel/blob/
>>> CAMEL-11362/camel-core/src/main/java/org/apache/camel/impl/ha/
>>> ClusteredRoutePolicyFactory.java
>>> > [4] https://github.com/lburgazzoli/apache-camel/tree/
>>> CAMEL-11362/components/camel-atomix/src/main/java/org/
>>> apache/camel/component/atomix/ha
>>> > [5] https://github.com/lburgazzoli/apache-camel/blob/
>>> CAMEL-11362/components/camel-atomix/src/test/java/org/
>>> apache/camel/component/atomix/ha/AtomixRoutePolicyTest.java
>>> >
>>> >
>>> > ---
>>> > Luca Burgazzoli
>>>
>>>
>>>
>>> --
>>> Claus Ibsen
>>> -----------------
>>> http://davsclaus.com @davsclaus
>>> Camel in Action 2: https://www.manning.com/ibsen2
>>>



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Mime
View raw message