[infinispan-dev] Proposing a new extension: Spring Infinispan

Olaf Bergner olaf.bergner at gmx.de
Mon Mar 7 15:39:44 EST 2011


Hello,

this is to propose a new extension, Spring Infinispan, targeted at 
implementing Spring 3.1's forthcoming Cache SPI using JBoss INFINISPAN. 
Please see the Extension Proposal Pack below for details.

All further enquiries, corrections and so forth pertaining to this 
proposal should preferably use INFINISPAN's developer mailing list 
infinispan-dev at lists.jboss.org as their primary communication channel. 
Project lead is Manik Surtani of Red Hat. I, Olaf Bergner 
(olaf.bergner at gmx.de), am responsible for developing Spring Infinispan, 
a preliminary version of which is located at 
https://github.com/obergner/spring-infinispan.

Regards,
Olaf Bergner

http://www.jboss.org/infinispan
infinispan-dev at lists.jboss.org
olaf.bergner at gmx.de

----------------------------------------------------------------------------------------------

Extension Proposal Pack

This document is part of the Proposal pack for requesting a new 
extension. Please modify the following sections and submit back to the 
current project lead at SpringSource, or alternatively 
extensions at springsource.com
Naming
Each Extension has several names, a publicly visible name and an SVN 
name. This is actually quite an important aspect, as the name has to be 
intuitive and distinct from every other Extension.
The naming convention for the internal name is "se-xxx", if it is a .NET 
Extension, the naming convention is "se-xxx.net".

Proposed Name: Spring Infinispan

----------------------------------------------------------------------------------------------

Description and Background

What is the purpose of the Extension. What does it do, why is it needed, 
how did it evolve etc.

Description:

Spring Infinispan will primarily provide an implementation of Spring 
3.1's cache SPI, namely

* org.springframework.cache.Cache und
* org.springframework.cache.CacheManager,

backed by the high-performance distributed cache INFINISPAN: 
http://www.jboss.org/infinispan.

In addition, Spring Infinispan will offer implementations of Spring's 
FactoryBean interface for producing

* native Infinispan caches,
* native Infinispan cache managers,
* Infinispan configuration instances,
* ...

within a Spring context.

Spring Infinispan's overarching goal is to make Infinispan a good and 
well-behaved citizen is Spring land, thus

* offering Infinispan users the option to use Spring's popular 
programming model, and
* offering Spring users access to a mature, performant and actively 
maintained distributed open source cache.

----------------------------------------------------------------------------------------------

Stakeholders

Who are the main stakeholders in the Extension? It is important for the 
stakeholders to be clear to understand potential conflict of interest 
issues.

Stakeholders:

At this stage, the only stakeholders in Spring Infinispan is the 
Infinispan development community, led by Manik Surtani of Red Hat.

----------------------------------------------------------------------------------------------

Competitors/Related Projects

Who (if any) are competitors for this Extension. If there are 
competitors, why would people use this Extension instead of the competitors?

Competitors:

To the best of my and Google's knowledge, there is no other effort 
underway to integrate Infinispan into the Spring ecosystem. And even if 
there should be, Spring Infinispan has the bonus of being backed by the 
Infinispan development community.

----------------------------------------------------------------------------------------------

Benefit to SpringSource

Why do we care about this?

SpringSource Benefit:

* According to 
http://blog.springsource.com/2011/02/23/spring-3-1-m1-caching/ is Spring 
actively encouraging contributors to implement their forthcoming cache 
SPI for as many cache providers as possible. Spring Infinispan will be 
testament to the community's positive response to this call, and may 
thus encourage other cache providers to follow suit, thereby promoting 
Spring Cache's popularity.
* Developers invested in Infinispan may find Spring an attractive 
programming model and switch to the Spring framework, thereby further 
boosting its popularity.

----------------------------------------------------------------------------------------------

Benefit to the Community

What benefit does this Extension bring to the community?

Community Benefit:

* Make a high-performance and rapidly progressing distributed cache 
accessible using the familiar Spring programming model.

----------------------------------------------------------------------------------------------

Sponsor

Every Extension must have a SpringSource sponsor. If the SpringSource 
sponsor is already known, they should be listed here.

SpringSource Sponsor:

----------------------------------------------------------------------------------------------

Roadmap

What is the expected life time for the Extension. When is the first 
release likely to happen? Try and provide a plan for the next 6-12 
months. This doesnʼt form part of the formal contract, merely your best 
intentions at this time.

Roadmap:

Spring Infinispan has a well circumscribed scope: implement Spring's 
Cache SPI and provide some helper classes to make the lifes of 
Infinispan users easier in Spring land. Therefore, it is currently 
expected that Spring Infinispan will mature rather rapidly. Once it 
supports embedded and remote Infinispan caches, its main goals will be 
achieved. Beyond that, it will largely depend on community feedback if 
and what further enhancements will be needed.

A first version supporting embedded (in-VM) Infinispan caches is likely 
to go public within the first two months after this proposal has been 
accepted.

A second version additionally supporting remote Infinispan caches should 
be available at most two months later.



More information about the infinispan-dev mailing list