Since early 2014, the Usergrid team has been working on a version of
Usergrid known informally as Usergrid 2. The effort was originally started
as a refactoring to clean up the codebase and make it easier to maintain,
but the work evolved into a new persistence engine for Usergrid.


The new Usergrid 2 engine is made up of a set of modules with clearly
defined interfaces.  It uses Multi-version Concurrency Control instead of
distributed locks. It uses RxJava for concurrency. And the new engine uses
ElasticSearch to implement indexing and query.  Usergrid 2 provides the
same REST API as Usergrid 1, but inside it is powered by this new engine.


Usergrid 2 was never released, but some have tested it, put it into
production, fixed lots of problems and hit some nice performance numbers,
for example: How Usergrid scaled to over 10,000 requests per second:


http://apigee.com/about/blog/technology/how-usergrid-scaled-over-10000-requests-second



The latest version of Usergrid 2 is informally known as Usergrid 2.1 and
you can find it in the Git “release” branch. Sidebar: state of Usergrid
branches:


   - release: the well-tested “Usergrid 2.1” code base
   - master: this is our development branch (with Jersey 2 and other
   changes), currently called 2.1.1
   - 1.x: this is the 1.x code base, latest release was 1.0.2

I propose that we make a release from the release branch and call it Apache
Usergrid 2.1.0.  I’d also like to make a convenience binary release with
the stack (i.e. ROOT.war), portal and an updated installation guide.


There are some drawbacks to Usergrid 2: it is more difficult to run in
production due to the addition of ElasticSearch, it depends on AWS SQS for
queueing and there are no tools for migrating from Usergrid 1.x — but
despite that, in my view, Usergrid 2.1.0 is ready for release and what we
want people to be using.


I'm not calling a vote, that will come later, but I would like to know your
thoughts and concerns about Usergrid 2 and this proposal.


Thanks,

Dave

Reply via email to