当前位置:首页 > CN2资讯 > 正文内容

KBMMW Rest 服务器 kestrel服务器性能

3天前CN2资讯

Kestrel是aspnetcore中的web服务器之一,其本身有跨平台,轻量级,高性能的特点

在 ryzen 1600 12核cpu 测试环境中,瞬间每秒处理请求数能达到2w5以上,与netty不相上下,相当于同样环境下iis ASP.NET处理能力的3倍左右

为了了解Kestrel为什么如此强劲,我从github上下载了源代码进行分析,地址是:

https:///aspnet/KestrelHttpServer

 

Kestrel端口监听参数使用的是 EndPoint

对于每一个 EndPoint ,使用一个 ITransport 实例进行监听, ITransport 由 ITransportFactory

ITransportFactory  为单实例,默认为  SocketTransportFactory ,该工厂由  UseKestrel

 

Kestrel的有两种TransportFactory的实现

Kestrel.Transport.Libuv

Kestrel.Transport.Sockets

 

在启动时,首先从 ServiceCollection 中获取到 ITransportFactory  ,使用工厂再创建一个 ITransport

SocketTransport 在初始化时创建一个调度器数组  _schedulers = PipeScheduler[]

数组大小为 ioQueueCount , ioQueueCount

如果指定了 ioQueueCount

在 SocketTransport 中调度器使用的是 IOQueue 实现,其具体实现是通过  ThreadPool.QueueUserWorkItem

SocketTransport 启动后,将会运行一个循环任务,每次循环会循环所有调度器,通过 awit AcceptAsync

 

对于Socket数据处理部分,使用的是异步Socket,Scoket不同平台的实现是不一样的

在Windows下,Scoket是对windows socket2的简单封装,windows socket2是一套支持阻塞/无阻塞的win32api

对于linux下的实现,我目前还在研究中,对其理解还不够深入

 

一般情况下,调度器的数量对Kestrel的处理能力影响不是很大,Kestrel对于请求的处理,都是通过往线程池添加工作任务来完成,其处理速度由线程池中的线程数量决定

 

总的来说,Kestrel是对异步Socket的简单封装,并利用线程池,内存池,实现了Actor模型,所有的请求都是无阻塞处理的,所以在处理能力上提升很大

当然,aspnetcore中间件管道模式也是其性能好的原因之一

 

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/20652.html

    分享给朋友:

    “KBMMW Rest 服务器 kestrel服务器性能” 的相关文章

    全面解析CPU租用服务:灵活性与高效性的最佳选择

    CPU租用服务概述 在当今快速发展的科技环境中,CPU租用服务作为一种创新的计算资源提供模式,正在受到越来越多用户的关注。这种服务使得用户可以根据具体需求,灵活地租用不同配置的CPU资源,从而有效地降低了硬件采购成本。 CPU租用服务的意义不仅在于提供强劲的计算能力,更在于它的灵活性。用户不再需要一...

    Oracle 免费VPS:轻松入门云计算的最佳选择

    在了解Oracle免费VPS之前,先来看看Oracle Cloud。这是甲骨文公司推出的一项云服务,提供了一系列强大的计算和存储资源。Oracle Cloud的最吸引人的部分是它的免费服务,给用户提供了机会,可以在没有经济负担的情况下体验云计算的强大功能。对于开发者、创业者或只是想进行一些小项目的用...

    国外VPS:高性价比虚拟专用服务器选择指南

    什么是国外VPS? 当我提到国外VPS时,它指的就是虚拟专用服务器(Virtual Private Server),这是一种把物理服务器分割成多个独立的小型服务器的技术。每一个VPS都拥有自己的公网IP地址和操作系统,资源如磁盘空间、内存和CPU都可以独立配置。这种固有的隔离性,可以让我在同一个物理...

    深入了解韩国汽车市场2023:选择适合你的现代与起亚车型

    谈到韩国汽车市场,总是会让我想起它悠久的历史和令人惊叹的演变。从上世纪60年代开始,韩国的汽车产业就慢慢扎根。当时,汽车几乎是奢侈品。伴随政府的支持和投资,本土品牌逐渐崭露头角。到目前为止,韩国已成为全球第五大汽车制造国,现代与起亚等品牌在国内外市场上都有着不俗的表现。可以说,历史赋予了韩国汽车产业...

    2023年VPS评测:选择适合您的虚拟私人服务器的指南

    在网络世界中,VPS代表虚拟私人服务器。简单来说,它是一种虚拟化技术,允许用户在一台物理服务器上运行多个虚拟服务器。每个VPS都有独立的操作系统和资源,用户可以专属管理和配置,像对待自己的服务器一样。这种灵活性使得VPS成为开发者、企业和个体户等各种用户的热门选择。无论是网站托管,还是应用程序的开发...

    狗云:高效便捷的云计算存储与协作服务

    在谈论“狗云”之前,我常常会想起狗狗那种无条件的信任与陪伴。狗云这个词汇的出现,让我联想到一种同样能让我们的工作与生活变得更加顺畅的平台。狗云,确切说是一种云计算服务,专注于为用户提供存储、管理、共享和协作的功能。简单来说,狗云就是一个可以存放和处理各种数据的线上空间。 狗云的背景相当有趣,它并不是...