Mongo Id Generator Service provides its consumers with fast, globally-unique and sparse id's.
The API is super simple and there's a single method that callers can invoke: generateId() which generates a 16-digit id.
The service can be scaled out as needed simply by speeding up id cache rejuvenation frequency and beefing up the id cache size. If even that is not sufficient, the backing datastore can be beefed up (shardng + replicasets) but I believe that won't be necessary. After the service does cache-priming to its default size of 5000, service consumers can pull a 1000 id's in less than 5 milliseconds.
The Id root prefix is set to '11610' by default but is configurable via the id.root.prefix property in core.xml.
Also provided is a choice of underlying implementations: a MongoDB backed and another In-Memory service.
Fork, spoon, knive the project as you see fit (: Pull requests with bug fixes are very welcome. If you encounter an issue and do not have the time to submit a patch, please log a Github Issue against the project.
MIT License - Copyright (c) 2012 Gaurav Sharma