gpt4 book ai didi

azure - 使用 Windows Azure 辅助角色托管 ServiceStack

转载 作者:行者123 更新时间:2023-12-02 06:51:25 25 4
gpt4 key购买 nike

我是 Windows Azure 云服务的新手。我想在辅助角色上托管一个使用 ServiceStack 构建的服务。我尝试了几种方法,包括以下方法,但没有成功。

我尝试过的代码:

public class WorkerRole : RoleEntryPoint
{
public class AppHost : AppHostHttpListenerBase
{
public AppHost()
: base("HttpListener Self-Host", typeof(HelloService).Assembly) { }

public override void Configure(Funq.Container container)
{
Routes
.Add<Hello>("/hello")
.Add<Hello>("/hello/{Name}");
}
}

public override void Run()
{
while (true)
{
Thread.Sleep(10000);
Trace.TraceInformation("Working", "Information");
}
}

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.

try
{
var endpoint = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"];
string baseUri = string.Format("{0}://{1}/", endpoint.Protocol, endpoint.IPEndpoint);

var appHost = new AppHost();
appHost.Init();
appHost.Start(baseUri);
}
catch (Exception e)
{
Trace.TraceError("Could not start service host. {0}", e.Message);
}

return base.OnStart();
}
}

服务已成功部署,但我无法访问该服务。

最佳答案

您是否以更高的权限运行它?为了打开 HTTP 端口,您需要以管理员身份运行。您可以通过添加 <Runtime executionContext="elevated" /> 来做到这一点您在服务定义中的辅助角色。

或者,您可以将启动脚本(当然必须在提升模式下运行)设置为 run a netsh command允许您在没有提升权限的情况下打开端口。

关于azure - 使用 Windows Azure 辅助角色托管 ServiceStack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21238735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com