cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sergey Beryozkin <sberyoz...@gmail.com>
Subject Re: [ANNOUNCE] Introducing Microbule...
Date Wed, 23 Nov 2016 11:21:24 GMT
Hi,
One thing which is worth noting that a portability of JAX-RS 2.0 
Features (and indeed other providers) is only achievable if they are 
also implemented in a portable way...

Cheers, Sergey
On 23/11/16 08:53, Christian Schneider wrote:
> I really like the microbule project scope. We really need a project that
> can bring mircoservice development on CXF and OSGi to the same level as
> spring boot.
> I am only concerned that many different projects seem to cover parts of
> this at the moment. So if we are not careful we again will have too many
> separate efforts inside the already small OSGi space.
>
> Some things you might want to look into:
>
> In the CXF-DOSGi samples I have bndrun that shows how to package cxf and
> the felix http service.
> https://github.com/apache/cxf-dosgi/blob/master/samples/soap/soap.bndrun
> I used the /myservice addresses and it works quite well. Felix http
> service is a a lot simpler to deploy than pax web. As CXF-DOSGi just
> uses the HttpService it is easy to use pax-web when deployed in karaf
> and felix http service for microservice like deployments.
>
> Another project to look into is the Aries JAX-RS-whiteboard. It is
> implementing the JAX-RS Whiteboard OSGi spec in Aries. Your project
> should have a big overlap with CXF-DOSGi and JAX-RS-whiteboard. I wonder
> if we could combine these efforts. One possible solution would be to
> concentrate the efforts of exporting REST services in JAX-RS whiteboard.
> Then your framework could concentrate on the remaining aspects of
> microservices like circuit breaker, discovery and packaging. The Aries
> JAX-RS whiteboard project is currently in a very early stage. So I think
> this should provide a great opportunity to get your ideas into the project.
>
> Another interesting part of JAX-RS whiteboard is that it can provide
> OSGi enabled JAX-RS ClientBuilder instances. So that could be used to
> create clients without depending on CXF in the user code.
>
> CXF-DOSGi on the other hand can provide fully transparent type safe
> clients as OSGi services which could also provide some value.
>
> I am also working on getting zipkin and brave tracing working inside
> OSGi. See https://github.com/cschneider/brave-osgi-example
> Brave already offers JAX-RS interceptors for logging and I added a PR to
> offer a jax-rs Feature. That will make it really easy to add tracing to
> CXF and any other JAX-RS 2 impl.
>
> Before that I was not aware that JAX-RS has such a nice portable Feature
> interface. So I think a lot of the microservice features like circuit
> breaker could be created in a portable way. This would give the user the
> free choice of the JAX-RS impl.
>
> I also had pretty good experiences using bndtools to create the
> packaging into a runnable jar. The result is a lot smaller than karaf
> (~9mb for a full REST example) and matches the docker concepts better.
>
> Sorry for this highly uncohesive list but I just wanted to give you some
> ideas to pursue :-)
>
> Christian
>
>
>
> On 22.11.2016 21:55, Benson Margulies wrote:
>> A small update with some irony here.
>>
>> At the job I just finished today, we reached the conclusion that we
>> weren't getting much value out of Karaf and pax-web; no criticism
>> intended, we just don't dynamically provision, and we don't need any
>> HTTP except for CXF services. So, over the last few weeks, we
>> refactored the thing to use cxf-rt-transport-http-jetty in the Felix
>> container, with our own rather tiny class responsible for launching.
>> We lost a bit of flexibility in that we can't create an endpoint
>> 'inside' of the namespace of another endpoint, but otherwise it works
>> just fine. The code that that I showed James is hardly changed at all.
>> The endpoint addresses now look like
>> "http://0.0.0.0:nnnnn/base/whatever" instead "/whatever".  Maybe some
>> day there will be an ultramicrobule that anticipates this mode of
>> operation.
>>
>>
>>
>>
>>
>> On Mon, Nov 21, 2016 at 7:13 PM, James Carman
>> <james@carmanconsulting.com> wrote:
>>> Small update.  Microbule 0.1.0 release has been cut and will soon be
>>> available in Maven Central (awaiting sync from Nexus OSS).  Enjoy,
>>> folks!
>>>
>>> On Mon, Nov 21, 2016 at 1:03 PM James Carman
>>> <james@carmanconsulting.com>
>>> wrote:
>>>
>>>> We've been working on a Microservices framework called "Microbule"
>>>> which
>>>> leverages CXF and Karaf (hence the cross-post):
>>>>
>>>> https://github.com/jwcarman/microbule
>>>>
>>>> The idea is to make writing Microservices easy and fun, by providing
>>>> many
>>>> of the oft-requested features for you out-of-the-box (CORS, Caching,
>>>> JSON
>>>> transformation, validation, etc.).  There's a README page that
>>>> explains how
>>>> to install/run Microbule in Karaf and how to write your own
>>>> services.  If
>>>> you're interested, take it for a spin and let us know what you think.
>>>>
>>>> Thanks,
>>>>
>>>> James
>>>>
>
>


-- 
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/

Mime
View raw message