Re: [Proposal] When Old Meets New: Turning Maven into a High Scalable, Resource Efficient, Cloud Ready Microservice

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] When Old Meets New: Turning Maven into a High Scalable, Resource Efficient, Cloud Ready Microservice

Massimiliano Dessì
Hi Karl,
the first "public and official" version is here:

https://github.com/kiegroup/kie-wb-common/tree/master/kie-wb-common-services/kie-wb-common-compiler

one of the changes to do for the contribution is to replace our git FS NIO2
implementation with the JDK NIO2.

p.s.: One nice side effects of some concurrent test was the discover of
some bugs not visibles with the usual way to use with a single user

Best
Max


2018-08-06 13:33 GMT+02:00 Karl Heinz Marbaise <[hidden email]>:

> Hi,
>
> is the code somewhere available? Usable ?
>
>
> kind regards
> Karl Heinz Marbaise
>
>
> On 06/08/18 13:15, Karl Heinz Marbaise wrote:
>
>> Hi,
>>
>> On 06/08/18 11:16, Massimiliano Dessì wrote:
>>
>>> Hi all,
>>> as a part of my daily job in Red Hat
>>> I've worked on a "customization" of Maven for our Kie Workbench used with
>>> Drools, JBPM and Optaplanner.
>>> The starting point was exports Objects created by Drools inside our Maven
>>> plugin, but the features are growed a lot.
>>>
>>> A brief and not exhaustive list of the features:
>>> -From static file producer to in memory producer and exporter
>>> -Reusable internal components to optimize memory footprint and time of
>>> execution
>>> -Maven like a builder Daemon
>>> -Configurable behaviour using a pipeline of decorators
>>> -Stateless (when possible)
>>> -Concurrent builds and concurrent logs
>>> -Cloud enabled
>>> -Local and remote executions
>>> -Plugins turned from FileSystem based to in memory based
>>> -Async API to consume build result
>>> -Incremental builds
>>>
>>> The current version is based on the Maven 3.3.9 but could be easily
>>> updated
>>> and is in our plans in the next months.
>>> Currently we have four modules plus other testing module and the
>>> offprocess
>>> module is under development.
>>>
>>> core
>>> service
>>> maven-plugins (plugins turned from FS to in memory)
>>> distribution
>>>
>>> Preso with details:
>>> https://www.slideshare.net/desmax74/when-old-meets-new-turni
>>> ng-maven-into-a-high-scalable-resource-efficient-cloud-
>>> ready-microservice
>>>
>>> I'd like to contribute this code, but since isn't a simple patch I'd like
>>> discuss about how to contribute,
>>> code plus tests is around 18k loc.
>>>
>>> Best
>>> Max
>>>
>>>
>> This sounds great...at first I would like to take a deeper look on it and
>> do of course some test?...
>>
>> Kind regards
>> Karl Heinz Marbaise
>>
>


--
http://twitter.com/desmax74
http://www.linkedin.com/in/desmax74
http://www.slideshare.net/desmax74
Author of: Spring 2.5 Aspect Oriented Programming
"http://www.packtpub.com/aspect-oriented-programming-with-spring-2-5/book"
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] When Old Meets New: Turning Maven into a High Scalable, Resource Efficient, Cloud Ready Microservice

Robert Scholte-8
Hi Max,

regarding the contribution, I would like to propose the following:
- At least create a JIRA issue for every feature.
- Due to the large amount of code I can imagine there are some  
dependencies between the features, i.e some features should be implemented  
first.
- Based on that we can decide what we want to adopt, prioritize/order and  
start working on the implementations.
- I assume CLA[1] is not an issue ;)

Do you have statistics of the memory consumption?

It looks to me we need to introduce some sort of profiles, so people can  
choose the preferred setup.
I see both the memory and concurrency as solutions that come with "costs"  
not everybody wants to pay.
Did you solve this with a specific builder?
Also, did you have to break APIs or are all current plugins and extensions  
still usable?

thanks,
Robert

[1] https://www.apache.org/dev/new-committers-guide


On Mon, 06 Aug 2018 11:16:36 +0200, Massimiliano Dessì  
<[hidden email]> wrote:

> Hi all,
> as a part of my daily job in Red Hat
> I've worked on a "customization" of Maven for our Kie Workbench used with
> Drools, JBPM and Optaplanner.
> The starting point was exports Objects created by Drools inside our Maven
> plugin, but the features are growed a lot.
>
> A brief and not exhaustive list of the features:
> -From static file producer to in memory producer and exporter
> -Reusable internal components to optimize memory footprint and time of
> execution
> -Maven like a builder Daemon
> -Configurable behaviour using a pipeline of decorators
> -Stateless (when possible)
> -Concurrent builds and concurrent logs
> -Cloud enabled
> -Local and remote executions
> -Plugins turned from FileSystem based to in memory based
> -Async API to consume build result
> -Incremental builds
>
> The current version is based on the Maven 3.3.9 but could be easily  
> updated
> and is in our plans in the next months.
> Currently we have four modules plus other testing module and the  
> offprocess
> module is under development.
>
> core
> service
> maven-plugins (plugins turned from FS to in memory)
> distribution
>
> Preso with details:
> https://www.slideshare.net/desmax74/when-old-meets-new-turning-maven-into-a-high-scalable-resource-efficient-cloud-ready-microservice
>
> I'd like to contribute this code, but since isn't a simple patch I'd like
> discuss about how to contribute,
> code plus tests is around 18k loc.
>
> Best
> Max

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]