Asp.net core 在ASP.NET核心中使用Kestrel服务器和Signal服务器有什么区别?

Asp.net core 在ASP.NET核心中使用Kestrel服务器和Signal服务器有什么区别?,asp.net-core,signalr,Asp.net Core,Signalr,据我所知,signar允许您通过允许“服务器到客户端”和“客户端到服务器”通信,向web应用程序添加实时功能。它在指定的端口上运行,该端口可用于通信。需要使用要调用的函数创建集线器。 Krestel服务器是一种小型IIS服务器,它也在给定端口中运行,客户端应用程序可以连接到该端口 所以,我的问题是使用Signal或Krestel服务器有什么区别,因为两者都运行在给定的端口上,客户端应用程序连接到该端口?正如Andy所说,Signal是运行在kestrel上的一种服务。在我看来,它是一个类似MVC

据我所知,signar允许您通过允许“服务器到客户端”和“客户端到服务器”通信,向web应用程序添加实时功能。它在指定的端口上运行,该端口可用于通信。需要使用要调用的函数创建集线器。 Krestel服务器是一种小型IIS服务器,它也在给定端口中运行,客户端应用程序可以连接到该端口


所以,我的问题是使用Signal或Krestel服务器有什么区别,因为两者都运行在给定的端口上,客户端应用程序连接到该端口?

正如Andy所说,Signal是运行在kestrel上的一种服务。在我看来,它是一个类似MVC或WebAPI的web框架

我们将像服务一样将信号机添加为MVC,Razor Pages,并添加其路由,如下所示:

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddRazorPages();
        services.AddSignalR();
    }
终点:

        app.UseEndpoints(endpoints =>
        {
            endpoints.MapRazorPages();
            endpoints.MapHub<UserActivityHub>("/active");
        });
app.UseEndpoints(端点=>
{
endpoints.MapRazorPages();
endpoints.MapHub(“/active”);
});

kestrel是一个Web服务器,用于承载核心应用程序。它将侦听HTTP请求,并将它们作为一组请求功能组合到HttpContext中呈现给应用程序。有关kestrel服务器的详细信息,请参阅。

kestrel是Web服务器,Signal是运行在kestrel之上的websocket实现。没有红隼你不能有信号兵,但是没有信号兵你可以有红隼。