Python、CSharp、Go、Nextjs,不同框架的性能到底差多少?

news/2026/1/18 13:58:17/文章来源:https://www.cnblogs.com/deali/p/19498429

前言

不知不觉居然12月了,最近琐事太多,产出并不高,继续整理一下近期的一些笔记吧。

上次我对部署 Django 框架时用的不同服务器进行对比测试,详见:不同Django服务器和部署方式的性能调研

在探索的过程中,我还对不同语言的框架进行了测试对比。

Django测试补充

对于上次的 Django 性能测试,还有一些补充的结论:

  • drf 和 ninja 性能差别不大
  • 在 2C2G 服务器上,workers=4 比 workers=2 的性能好,具体好多少,我只测试了 uwsgi 服务器,大概是 33% 的差距

本次测试

本次测试的语言和框架:

  • aspnetcore 8.0 (starblog 项目)
  • aspnetcore webapi(controller) 9.0 (ayaka-chats 项目)
  • go + gin (ebook-forge 项目)
  • Next.js (iothub dashboard 项目)

为了确保变量控制,我把这些项目都部署了一份在腾讯云 2C2G 的小水管服务器上,统一进行测试。

测试命令统一使用:

wrk -t4 -c200 -d30s <url>

测试目标都是各项目中的轻量 API(返回短字符串或简单 JSON),侧重框架本身吞吐与延迟表现,而不是业务代码复杂度。

测试结论

结果挺有意思,也和我长期使用这些框架的感受基本吻合。

总览

对了,之前测的 Django 最好成绩是 1200RPS 左右。回顾:不同Django服务器和部署方式的性能调研

项目 / 技术栈 Requests/sec 内存占用 CPU占用 说明
AspNetCore 8 (老架构 MVC) 5,960 560MB 100% 架构臃肿,内存偏高;吞吐反而一般
AspNetCore 9 (WebAPI) 15,031 80MB 95% 新生代架构非常轻,性能极强
Go + Gin 6,145 35MB 70% 内存省、吞吐中规中矩
Next.js (Edge API / App Router) 405 135MB 50% Node.js 在高并发 API 上天生不占优势

结论

1. 综合性能冠军:AspNetCore 9

吞吐最高、内存中等、生态强,适合未来的大项目(比如编辑器 Clipify、AI 服务、Chat API)。

2. 轻量冠军:Go + Gin

内存最省,部署和扩容成本最低,适合独立组件或内部服务。

3. 传统 Web 项目的现实:AspNetCore MVC 太重

老项目迁移成本高,但新项目真的不推荐继续 MVC 了。

4. Node.js/Next.js 不适合做高并发 API

适合前端页面和简单后端逻辑,但不适合作为性能核心。

逐项分析

AspNetCore 8.0 MVC(StarBlog)

“老项目拖后腿,性能扣分主要在架构而不是 .NET 本身。”

内存直接飙到 560MB,说明:

  • 各种 IOC + MVC + 中间件拉满
  • 项目结构本身臃肿
  • 吞吐不到 6k RPS

AspNetCore 9.0 WebAPI(Ayaka Chats)

“这是微软真正的力量展示。”

  • 内存仅 80M,非常干净利落。
  • 15k RPS 是这里的冠军。
  • CPU能吃满,说明框架没有瓶颈,能把机器压榨完。

✔ 适合高性能微服务、AI 中转服务

✔ 适合做 AI SaaS、个人工具 API 的场景

⚠ 写的人要懂 C#

Go + Gin(Ebook Forge)

“极致轻量,但吞吐这次反而没那么亮眼。”

  • 内存只有 35M,轻得离谱。
  • 吞吐 6k RPS,比我预期的稍低,但也稳定。
  • CPU占用只有 70%,表明 Go 调度器稳,但 Gin 本身未完全吃满 CPU。

✔ 特别适合后台队列、消息处理、轻量服务

✔ 适合部署成本敏感场景(小内存机器)

✘ 对偏全栈 + AI 的开发者来说,生态相对弱一些

Next.js(iothub dashboard)

“Node 跑 API:能跑,但别期待高并发。”

  • 400 RPS → 不算 API 性能框架(期望是 Express/fastify 的千级)
  • 延迟 200ms+ → 再次印证了 Node.js 单线程 + V8 的特性
  • 适合 SSR/前端 BFF,不适合做主要 API

✔ 如果是页面渲染、前端服务,中规中矩

✘ 如果是 API 主战场,还是别为难它

测试数据

aspnetcore 8.0 (starblog 项目)

测试时内存峰值占用560M左右,CPU占用100%;
这个项目因为是 AspNetCore MVC 加上架构比较老,太臃肿,导致内存占用很多,而且性能也比较差。

$ wrk -t4 -c200 -d30s http://127.0.0.1:9874/Api/DataWrapperTest/StringResult
Running 30s test @ http://127.0.0.1:9874/Api/DataWrapperTest/StringResult4 threads and 200 connectionsThread Stats   Avg      Stdev     Max   +/- StdevLatency    44.04ms   44.20ms 304.43ms   88.08%Req/Sec     1.59k   559.31     2.42k    75.64%179013 requests in 30.03s, 44.22MB read
Requests/sec:   5960.51
Transfer/sec:      1.47MB

aspnetcore webapi(controller) 9.0 (ayaka-chats 项目)

测试时内存峰值占用80M左右,CPU占用95%

$ wrk -t4 -c200 -d30s http://127.0.0.1:16080/api/auth/csrf
Running 30s test @ http://127.0.0.1:16080/api/auth/csrf4 threads and 200 connectionsThread Stats   Avg      Stdev     Max   +/- StdevLatency    13.94ms    8.17ms 111.67ms   83.87%Req/Sec     3.78k     1.06k    5.68k    72.92%451205 requests in 30.02s, 99.40MB read
Requests/sec:  15031.56
Transfer/sec:      3.31MB

go + gin (ebook-forge 项目)

测试时内存峰值占用35M左右,CPU占用70%

$ wrk -t4 -c200 -d30s http://127.0.0.1:8080/health
Running 30s test @ http://127.0.0.1:8080/health4 threads and 200 connectionsThread Stats   Avg      Stdev     Max   +/- StdevLatency    37.13ms   33.65ms 499.93ms   82.09%Req/Sec     1.55k   328.35     2.86k    74.04%184447 requests in 30.02s, 114.86MB read
Requests/sec:   6145.14
Transfer/sec:      3.83MB

Next.js (iothub dashboard 项目)

测试时内存峰值占用135M左右,CPU占用50%

$ wrk -t4 -c200 -d30s http://127.0.0.1:3000/api/health
Running 30s test @ http://127.0.0.1:3000/api/health4 threads and 200 connectionsThread Stats   Avg      Stdev     Max   +/- StdevLatency   251.98ms  110.23ms   1.95s    68.01%Req/Sec   112.01     89.28   515.00     61.88%12192 requests in 30.03s, 4.45MB readSocket errors: connect 0, read 0, write 0, timeout 118
Requests/sec:    405.96
Transfer/sec:    151.80KB

小结

对于个人开发者和轻量 SaaS 而言:

想要“爽”和“稳”,首选 AspNetCore 9;

想要“省”和“快上手”,Go + Gin 很好;

Django / Python 生态强但性能不是主要卖点,需要依赖 ASGI 服务器选择;

Node.js 适合做 BFF,不适合承担高吞吐 API。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1178384.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

芯片制造企业如何利用百度WEB编辑器处理PDF技术文档?

河南软件工程大三狗的CMS升级记&#xff1a;从Word粘贴到Latex公式&#xff0c;99元预算的极限操作&#xff01; 一、项目背景&#xff1a;穷学生的倔强 作为一枚即将毕业的大三狗&#xff0c;自己撸了个CMS新闻管理系统&#xff0c;但后台编辑器太挫——从Word复制内容粘贴进…

2025年值得关注的高温塑料回收厂家有哪些?,排行前列的高温塑料回收精选国内优质品牌榜单 - 品牌推荐师

随着全球高温塑料应用场景的持续扩展,工业生产中产生的PEEK、PI、PTFE等特种塑料废弃物规模激增。据行业数据显示,2024年国内高温塑料回收市场规模已突破120亿元,但企业间技术水平、服务能力参差不齐,导致采购方在…

基于SpringBoot框架的社区网格化管理平台

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在构建一个基于SpringBoot框架的社区网格化管理平台&#xff0c;以实现社区资源的优化配置、提高社区管理效率、提升居民生活质量。具体研究目的如下&am…

2026年不锈钢EP管供应企业推荐,南通地区十大厂家有哪些? - 工业品牌热点

本榜单依托全维度市场调研与真实行业口碑,深度筛选出五家不锈钢EP管领域标杆企业,为半导体、新能源、医药等对流体输送纯度有严苛要求的行业企业选型提供客观依据,助力精准匹配适配的不锈钢EP管供应伙伴。 TOP1 推荐…

基于SpringBoot的社区疫情管理系统毕业设计源码

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于SpringBoot框架的社区疫情管理系统&#xff0c;以满足当前疫情防控工作的实际需求。具体研究目的如下&#xff1a;构建一个高效、可…

【开题答辩全过程】以 基于SSM框架的药店管理系统的设计与开发为例,包含答辩的问题和答案

个人简介 一名14年经验的资深毕设内行人&#xff0c;语言擅长Java、php、微信小程序、Python、Golang、安卓Android等 开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。 感谢大家…

历年CSP-J初赛真题解析 | 2017年CSP-J初赛

​欢迎大家订阅我的专栏:算法题解:C++与Python实现! 本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战! 专栏特色 1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的…

基于SpringBoot的社区防疫物资申报系统毕业设计源码

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在开发一套基于SpringBoot框架的社区防疫物资申报系统&#xff0c;以满足当前疫情防控形势下社区防疫物资管理的需求。具体研究目的如下&#xff1a;提高…

人间美味——胡萝卜炒包菜粉丝

做法极其简单,包菜切丝,胡萝卜切丝,葱切丝,白粉丝泡上。起锅烧油,炒素菜,加一点大油,下葱丝,下两辣椒段,下包菜丝。包菜稍软,下胡萝卜丝、粉丝。翻炒一会,加盐、酱油、味精调味,出锅装盘。 包菜是甜口的,…

【开题答辩全过程】以 基于SSM框架的健身房管理系统为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人&#xff0c;语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

一个例子带你看懂,火爆全网的 Skills 到底是啥。

上一篇文章有讲到&#xff0c;TRAE 添加了对 Skills 的支持最近爆火的 Skills&#xff0c;TRAE SOLO 也支持了&#xff01; 现在&#xff0c;Google Antigravity 的最新版本&#xff0c;也支持 Skills 了。 01 举个栗子 下面&#xff0c;用一个栗子来分享下在 Antigravity 中…

基于SpringBoot的笔记记录分享网站毕设源码

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于SpringBoot框架的笔记记录分享网站&#xff0c;以解决当前笔记记录和分享过程中存在的诸多问题。具体研究目的如下&#xff1a;提高…

【开题答辩全过程】以 高校消防器材库管理系统的设计与实现为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人&#xff0c;语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

基于SpringBoot的箱包存储系统毕设

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于SpringBoot框架的箱包存储系统&#xff0c;以满足现代物流行业中对于高效、智能、安全存储管理的需求。具体研究目的如下&#xff…

【开题答辩全过程】以 基于SSM框架的网上书城系统设计与实现为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人&#xff0c;语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

Nginx 配置示例及核心模块详解

Nginx 配置详解 一、配置文件结构 # 全局块&#xff08;主配置&#xff09; main# 事件块 events {... }# HTTP 块 http {# HTTP 全局配置...# 虚拟主机块&#xff08;一个或多个&#xff09;server {# 服务器配置...# 位置块&#xff08;一个或多个&#xff09;location {...}…

深度解析 Agent Skills:赋予 AI 真正的行动力

在人工智能的演进历程中&#xff0c;如果说大语言模型&#xff08;LLM&#xff09;是“大脑”&#xff0c;那么 Agent (智能体) 就是拥有手脚的“完整人”&#xff0c;而 Skills (技能) 正是这些手脚能完成的具体动作。 从单纯的对话机器人&#xff08;Chatbot&#xff09;向能…

基于ssm+vue的智能化在线学习系统[ssm]-计算机毕业设计源码+LW文档

摘要&#xff1a;随着互联网技术的飞速发展&#xff0c;在线学习已成为教育领域的重要趋势。本文介绍了一个基于SSM&#xff08;SpringSpringMVCMyBatis&#xff09;后端框架和Vue前端框架的智能化在线学习系统的设计与实现。该系统旨在为用户提供一个高效、便捷、个性化的在线…

Relink:动态构建查询导向的知识图谱推理框架,新一代 GraphRAG

Graph-based Retrieval-Augmented Generation: Relink Framework文章摘要针对大语言模型幻觉问题&#xff0c;现有GraphRAG方法依赖静态知识图谱&#xff0c;面临知识不完整和干扰事实两大挑战。本文提出Relink框架&#xff0c;突破传统"先构建后推理"范式&#xff0…

导师严选2026 AI论文软件TOP8:开题报告文献综述神器测评

导师严选2026 AI论文软件TOP8&#xff1a;开题报告文献综述神器测评 2026年AI论文软件测评&#xff1a;精准匹配学术需求的工具指南 随着人工智能技术在学术领域的深度应用&#xff0c;越来越多的研究生开始依赖AI写作工具提升论文撰写效率。然而&#xff0c;面对市场上琳琅满目…