Skip to content

Instantly share code, notes, and snippets.

Created Jul 6, 2011
What would you like to do?
Sample of running AppEngine inside the Web Role (for Lokad.CQRS v2.0)
// Sample of running AppEngine inside the Web Role, essentially merging
// 1 worker role and 1 web role (for Lokad.CQRS v2.0)
// For explanation see:
public class WebRole : RoleEntryPoint
CqrsEngineHost _host;
readonly CancellationTokenSource _source = new CancellationTokenSource();
public override bool OnStart()
ServicePointManager.DefaultConnectionLimit = 48;
RoleEnvironment.Changing += RoleEnvironmentChanging;
_host = BuildBusForWorker.Configure().Build();
return base.OnStart();
public override void Run()
var task = _host.Start(_source.Token);
public override void OnStop()
private static void RoleEnvironmentChanging(object sender, RoleEnvironmentChangingEventArgs e)
// If a configuration setting is changing
if (e.Changes.Any(change => change is RoleEnvironmentConfigurationSettingChange))
// Set e.Cancel to true to restart this role instance
e.Cancel = true;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment