O/C mapper (Object to Cloud). Leverage Windows Azure without getting dragged down by low level technicalities.

Project moved to Google Code: http://code.google.com/p/lokad-cloud/.

Strong typed put/get on the blob storage:
IBlobStorageProvider storage = ... ; // init snipped
CustomerBlobName name = ... ; // init snipped
var customer = storage.GetBlob(name); // strong type retrieved

Strong typed enumeration of the blob storage:
foreach(var name in storage.List(CustomerBlobName.Prefix(country))
{
  var customer = storage.GetBlob(name); // strong type, no cast!
  // do something with 'customer', snipped
}

Scalable services with implicit queue processing:
[QueueServiceSettings(AutoStart = true, QueueName = "ping")]
public class PingPongService : QueueService<double>
{
  protected override void Start(double x)
  {
    var y = x * x; // 'x' has been retrieved from queue 'ping'
    Put(y, "pong"); // 'y' has been put in queue named 'pong'
  }
}

Key orientations
  • Strong typing.
  • Scalable by design.
  • Cloud storage abstraction.

Key features (check the FeatureMap)
  • Queue Services as a scalable equivalent of Windows Services.
  • Scheduled Services as a cloud equivalent of the task scheduler.
  • Strong-typed blob I/O, queue I/O, table I/O.
  • Autoscaling with VM provisioning.
  • Logs and monitoring.
  • Inversion of Control on the cloud.
  • Web administration console.

Documentation:
This is yet another open source project from Lokad (Forecasting API).

Last edited Apr 14, 2011 at 4:41 PM by vermorel, version 21