示例#1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack || AzureClient.IsInitialized)
            {
                return;
            }

            var config = AzureClient.DefaultConfiguration();

            AzureClient.Initialize(config);
        }
示例#2
0
        protected void Application_Start()
        {
            if (RoleEnvironment.IsAvailable)
            {
                // running in Azure
                AzureClient.Initialize(AzureClient.DefaultConfiguration());
            }
            else
            {
                // not running in Azure
                GrainClient.Initialize(ClientConfiguration.LocalhostSilo());
            }

            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);
        }
示例#3
0
        protected void Application_Start()
        {
            if (AzureEnvironment.IsInAzure)
            {
                // running in Azure
                var config = AzureClient.DefaultConfiguration();
                AzureClient.Initialize(config);
            }
            else
            {
                // not running in Azure
                var config = ClientConfiguration.LocalhostSilo();
                GrainClient.Initialize(config);
            }

            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
        }
示例#4
0
        public override bool OnStart()
        {
            // Set the maximum number of concurrent connections
            ServicePointManager.DefaultConnectionLimit = 12;

            // For information on handling configuration changes
            // see the MSDN topic at http://go.microsoft.com/fwlink/?LinkId=166357.

            bool result = base.OnStart();

            if (!AzureClient.IsInitialized)
            {
                var config = AzureClient.DefaultConfiguration();
                AzureClient.Initialize(config);
            }

            Task.Factory.StartNew(StartWebSocketServer, TaskCreationOptions.LongRunning);

            Trace.TraceInformation("WebSocketRole has been started");

            return(result);
        }
示例#5
0
        protected void Application_Start()
        {
            const int InitializeAttemptsBeforeFailing = 5;
            int       attempt = 0;

            while (true)
            {
                try
                {
                    if (RoleEnvironment.IsAvailable)
                    {
                        // running in Azure
                        AzureClient.Initialize(AzureClient.DefaultConfiguration());
                    }
                    else
                    {
                        // not running in Azure
                        GrainClient.Initialize(ClientConfiguration.LocalhostSilo());
                    }
                    Trace.WriteLine("Client successfully connect to silo host");
                    break;
                }
                catch (SiloUnavailableException)
                {
                    attempt++;
                    Trace.TraceWarning($"Attempt {attempt} of {InitializeAttemptsBeforeFailing} failed to initialize the Orleans client.");
                    if (attempt > InitializeAttemptsBeforeFailing)
                    {
                        throw;
                    }
                    Thread.Sleep(TimeSpan.FromSeconds(2));
                }
            }

            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);
        }