标签: self-hosting

由于没有端口转发,并且您不知道我的 IP 地址,托管 Discord 机器人如何工作?

我制作和使用我的 Discord 机器人(用 javascript 编写)已经大约 5 个月了,我学到了很多东西,而且效果很好。唯一的问题是,我不明白它在托管方面实际上是如何工作的?我让它在家里的树莓派上 24/7 运行,但我的意思是,我也在家里托管网站,所以我为我的网站做了端口转发等,但你不必使用不和谐的机器人来做到这一点?谁能解释一下这一切是如何运作的?

self-hosting discord discord.js

5
推荐指数
1
解决办法
7303
查看次数

自托管WCF ServiceHost/WebServiceHost并发/性能设计选项(.NET 3.5)

因此,我将通过自托管(在WindowsService中)WebServiceHost(不确定如何使用ServiceHost处理HTTP GET/POST)提供一些功能,其中一个可能被称为大量时间.此功能还将依赖于appdomain中的连接(由WindowsService托管,因此它可以在多个请求中保持活动状态).

我有以下疑虑,非常感谢任何意见/想法/意见:

  • 并发访问 - WebServiceHost如何处理大量并发请求.它们是否按顺序排队并按顺序处理,还是自动创建合同的新实例?
  • WebServiceHost - > WindowsService通信 - 我需要从WebServiceHost到托管WindowsService的某种形式的通信,例如,如果不存在请求新会话.也许实现一个使用WindowsService订阅的事件扩展WebServiceHost的类...(除非有另一种方法可以在发出请求时在WindowsService中引发事件...)
  • 多个WebServiceHosts或Contracts - 它是否会在不同的线程中运行多个WebServiceHost实例(每个端点可能有一个?)是否会带来任何实际的性能提升 - 更好地理解第一点可能会有所帮助.
  • WSDL - 我不确定为什么(可能只需要做更多阅读),但我不确定如何让WebServiceHost基本端点响应描述可用合同的WDSL文档.不需要,因为所有的操作都将通过GET请求完成,这些请求不会发生变化,但是很高兴有......

这就是目前的情况;)我已经在WCF上阅读了很多,并希望我很久以前就已经进入了它,但绝对还在学习.

concurrency wcf self-hosting servicehost

4
推荐指数
1
解决办法
3733
查看次数

处理自托管WCF Web服务中的并发请求

我开始开发以下场景(Visual Studio 2010,WCF):我们网络中的不同客户端将调用我自己开发的Web服务,该服务作为Windows服务的一部分托管,因此我们讨论的是自托管WCF Windows服务中的Web服务.

自托管的WCF Web服务将依次调用外部Web服务,因此就像一种外观.

显然,我的自托管WCF Web服务需要接受并发调用,这就是我的问题:我计划的是在我自己托管的WCF Web服务上从不同客户端调用的操作中,我只想创建客户端外部Web服务,调用外部Web服务,从外部Web服务获得同步响应,然后回复调用客户端.

听起来很简单,但是我需要考虑多个线程进入我的服务主机吗?显然我需要小心主机本身的任何"全局"变量,但如果我只是在被调用的Web服务的不同操作中创建外部Web服务客户端,或者我忽略了什么,我应该保存?

谢谢大家!

干杯,斯特沃

.net concurrency wcf web-services self-hosting

4
推荐指数
1
解决办法
3073
查看次数

用于自托管模式的WebApi按请求存储

托管WebApi是IIS时,您可以访问HttpContext,并可以使用items集合来存储单个HTTP请求的对象.

当自托管时,您不再拥有HttpContext,那么我可以使用什么来存储单个请求的对象?

self-hosting asp.net-web-api

4
推荐指数
1
解决办法
1526
查看次数

自我托管适用于Nancy和ServiceStack中的小型Web项目吗?

无论南希ServiceStack有能力自托管.我想使用其中一个框架来构建Linux和Mono的Web服务.我期待很少有并发连接.不幸的是,Mono在其ASP.NET实现中存在内存泄漏,而我唯一的选择是"自托管".但我担心保持并发连接的可能性很小(可能).我应该依靠他们的托管实施吗?

linux mono self-hosting servicestack nancy

4
推荐指数
2
解决办法
1935
查看次数

尽管存在控制器,Web API也找不到控制器

我创建了一个解决方案有两个项目:一个是一个类库使用自托管Web API(的帮助下创建http://www.asp.net/web-api/overview/hosting-aspnet-web-api/self -host-a-web-api),第二个是用TopShelf创建的Windows服务.此解决方案的目的是使用Web API获取服务的状态报告.

一切正常,但是当我在目标解决方案中重新创建我的解决方案时,整个应用程序都无法正常工作.Windows服务似乎是工作,但是当我输入localhost:8080 /测试这是假设以查看OK(它在开头提到的单独的测试解决方案所做的),它抛出一个错误(可以看作是一个xml):

Message: No HTTP resource was found that matches the request URI 'http://localhost:8080/Test'.
MessageDetail: No type was found that matches the controller named 'Report'.
Run Code Online (Sandbox Code Playgroud)

在包含SelfHost的项目中有一个ReportController(继承自ApiController)但不知何故它是"可见的".我猜了(我相信这是一个愚蠢的猜测)并将其移至Windows服务项目,但它也无法正常工作.

谁能告诉我我面临的问题是什么?为什么在简单的解决方案中没有看到控制器?

编辑: 我的路由看起来像这样:

var config = new HttpSelfHostConfiguration(String.Format("http://localhost:{0}", port));
config.Routes.MapHttpRoute("API Default", "{action}", new { controller = defaultControllerName });
Run Code Online (Sandbox Code Playgroud)

哪里

defaultControllerName = "Report";
Run Code Online (Sandbox Code Playgroud)

c# routing controller self-hosting asp.net-web-api

4
推荐指数
1
解决办法
2610
查看次数

如何在Windows 7上启用OWIN日志记录

我正在尝试实现登录到我的OWIN自托管解决方案.

我的MiddleWare班级如下:

public class HostingMiddleware : OwinMiddleware
{
    private readonly ILogger _logger;

    public HostingMiddleware(OwinMiddleware next, IAppBuilder builder)
        : base(next)
    {
        _logger = builder.CreateLogger<HostingMiddleware>();
    }

    public override Task Invoke(IOwinContext context)
    {
        _logger.WriteVerbose(string.Format("{0} {1}: {2}"));
        context.Response.Headers.Add("Content-Type", new[] 
                                                     { 
                                                        "text/plain"
                                                     });
        return Invoke(context);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我在Startup课堂上使用它.

public class Startup
{
   public void Configuration(IAppBuilder builder)
   {
      // Initialize the configuration for Web API self-host.
      HttpConfiguration config = new HttpConfiguration();

      // Map the default Web API HTTP Route
      config.Routes.MapHttpRoute(
          name: "DefaultApi", …
Run Code Online (Sandbox Code Playgroud)

c# self-hosting owin katana

4
推荐指数
1
解决办法
2135
查看次数

ServiceStack自主应用程序重启

如何重新启动ServiceStack自托管Apphost?将我的AppHost实例设置为null并处理它无法正常工作,它会抛出以下异常:

System.ArgumentException: An entry with the same key already exists.
Run Code Online (Sandbox Code Playgroud)

我需要能够重新加载设置并启动AppHost,而无需重新启动托管AppHost的Windows服务

编辑:Scott和Moo-Juice建议在不同的AppDomain中运行AppHost是正确的解决方案.为了通过Cross Domain调用重新启动AppHost,我创建了第二个AppHost,它在Main AppDomain中运行,并从Scott的解决方案中调用Restart方法.在两个AppHost实例上启用CORS允许简单的$ ajax调用来重新启动服务,并在服务启动并返回请求后重新加载页面.

c# self-hosting servicestack

4
推荐指数
1
解决办法
777
查看次数

如何在没有C#的System.Web dll的情况下进行UrlDecode

我即将创建一个自托管的Web API应用程序,我需要URL解码输入.但我真的不想添加对System.Web.dll的引用,因为AMAIK,它是一个沉重的DLL,也是远离ASP.NET和IIS的主要原因之一.

如果我是对的,并且我没有添加对System.Web的引用,那么如何在没有错误的情况下有效地解码URL?

self-hosting urldecode asp.net-web-api

4
推荐指数
1
解决办法
3008
查看次数

如何在生产中部署Owin自托管应用程序?

我有一个Asp.Net Owin自托管WebApi应用程序.该应用程序可以作为生产环境中的Windows服务安装.

目前我正在运行并通过url http:// localhost:8000成功访问该服务.

现在我想将服务映射到域以从公共网络访问它.我有一个注册域名并可以控制它.例如:www.myservice.com

如何将域指向自助托管应用程序的WebApi服务?

c# asp.net self-hosting owin asp.net-web-api2

4
推荐指数
1
解决办法
1566
查看次数