V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kaka6
V2EX  ›  .NET

还有人用.Net 吗,亲测.Net5 性能飞升

  •  3
     
  •   kaka6 · 2021-01-04 15:58:49 +08:00 · 29219 次点击
    这是一个创建于 1448 天前的主题,其中的信息可能已经有所发展或是发生改变。

    下午亲测了下.Net5,性能确实飞升

    性能逼近以高并发著称的 Go

    当然我的测试还比较简单,打印:hello + 当前时间

    使用云服务器:centos 7.6 2 核 4G

    所有程序都打包在 docker 中运行

    使用 abtest 测试 与其它语言对比结果如下图: image

    PS:要用.Net5, 需要装 VS2019 V16.8 以上版本,不然会出错

    231 条回复    2021-10-19 12:51:31 +08:00
    1  2  3  
    leeg810312
        201
    leeg810312  
       2021-01-05 23:17:35 +08:00 via Android
    @zxCoder JAVA 8 2014 年发布的,我看也不先进。只有你大学计算机课程考古,不要带上其他学校
    qianlifeng
        202
    qianlifeng  
       2021-01-05 23:23:26 +08:00   ❤️ 1
    一开始写.net 的时候觉得.net 很好,超无敌.
    后来觉得 python 写不错,轮子多,方便
    再后来用 java 觉得还是 java 好,生态好,工作好找
    最后用到 golang,觉得 golang 是真香.

    现在也看开了,哪个合适就用哪个. 没有最好的语言,只有最合适的语言. 性能问题绝大部分并不是语言本身带来的,数据结构,算法,系统架构等等才是影响系统性能的最主要的因素.
    nguoidiqua
        203
    nguoidiqua  
       2021-01-05 23:32:59 +08:00
    @systemcall

    微软的技术体系我向来都觉得挺容易上手,微软一向都好像特别照顾新人学习,工具上有意简化了。
    nguoidiqua
        204
    nguoidiqua  
       2021-01-05 23:50:40 +08:00   ❤️ 1
    听说 Linux 系统免费开源,不错,准备研究下,于是搜索 Linux 下载,Ubuntu Debian Redhat Fedora Gentoo openSUSE Slackware Mandriva 之类名字就冒出来了,于是搜索这些有什么区别,看到各种新概念,不是很懂啊,直接接着搜索哪个更好,各种争论,难以判断,最后就放弃了。

    用 Windows 就不会有这个烦恼,什么家庭版专业版旗舰版,一看就知道哪个更高级,我从来没有搜过 Windows 用哪个版本更好,各个版本有什么区别,不需要,就旗舰。

    .NET 我初次接触差不多就是 Linux 各种发行版的感觉,不过装发行版还是成本低多了,装上看看也不需要学什么东西。但我 2008 年就装过 Ubuntu,到这几年才重新学的,一下放出太多信息以致让人迷惑本身就是网络时代一个常见问题。

    另外,我看过之前改名的新闻,谈到原因之类的:

    Scott 在其中也解释了改名的根本原因:之前称之为“ASP .NET 5”确实让人感觉这是 ASP .NET 4.6 的升级版,比其功能更加强大,未来会替代 ASP .NET 4.6 。其实不是的,因为“ASP .NET 5”是另起炉灶开发,和 ASP .NET 4.6 是并行独立的关系。

    所在现在的名字变动如下:

    ASP .NET 5 –> ASP .NET Core 1.0
    .NET Core 5 –> .NET Core 1.0
    Entity Framework 7 –> Entity Framework Core 1.0

    这样的重命名可以让人(特别是.NET 圈子之外的人)马上了解到这个技术栈是微软在 Web 开发领域的一个“重新出发”。

    .NET Core 跳過 4.0 並更名為 .NET 5.0 的目的在於避免與 .NET Framework 4.x 混淆,這也代表 .NET Framework 將不再有新版了,.NET Framework 4.8 是最後一個 .NET Framework 版本。

    还有 What's new in .NET 5 里面也提到各种 avoid confusion 。

    不是我一个人感觉有点搞不清。

    正如我当初希望微软改掉五颜六色的大色块一样,我希望有一天 .NET 就剩这一个宣传的名字,等到学进去再告诉别人有各种方向。
    beyondex
        205
    beyondex  
       2021-01-06 00:01:30 +08:00
    @nguoidiqua 名字是有点乱,主要原因是 .NET Core 之后跨平台了,于是所有微软官方下的 .NET 框架都改名加了个 Core 。。。
    而为了让 .NET Framework 能够平稳过渡到 .NET Core,使得过渡期两者可以在一个项目共用、共处,还有一些额外的技术命名,比如 .NET Standard 。
    最后过渡完成了,形成统一的一个 .NET ,叫 .NET 5
    对于不知道这些历史的人来说,确实会有些困惑。。
    durban126
        206
    durban126  
       2021-01-06 00:03:59 +08:00
    @qianlifeng 你说的非常对
    xcstream
        207
    xcstream  
       2021-01-06 01:23:02 +08:00
    这个测试主要测了读取当前时间的速度
    stevefan1999
        208
    stevefan1999  
       2021-01-06 03:20:01 +08:00 via Android
    @nguoidiqua 你這個.net 黑, 就是命名方式你也能在這裏無限上綱

    說白了 你本身是沒有心機去學.net 和理解.net 要脫胎換骨 改過自身時 在這方面所要承受的小痛苦, 在你的眼裡 .net 就是原罪 所以就要無限放大
    nguoidiqua
        209
    nguoidiqua  
       2021-01-06 03:59:21 +08:00 via Android
    @stevefan1999

    我看你真是扯得远了,还痛苦、原罪…

    我就觉得没必要分出那么多名字,全部都叫 .NET 得了,仅此而已。

    我不觉得说名字有点混乱算是黑,这本身又不是什么大问题,是你们自己把它捧得太高了,好像神一样完美无缺说不得,不就一种技术么,别太狂热了。我本来只是发一个帖子,一堆人非要添油加醋的扭曲我的观点,当然要解释一下了。

    我说它命名有点迷糊,没有一个人证明它不迷糊,新人一看就懂。

    全在那说其实学习很简单,别的学起来也很复杂,别的也有很多名字。这不是典型转移话题、观点扭曲攻击之类诡辩手段么?

    他们说的都是对的,但不能用来反驳 .NET 命名很迷糊的观点。
    coolcfan
        210
    coolcfan  
       2021-01-06 09:02:36 +08:00 via Android   ❤️ 4
    帖子说 .NET 5 性能起飞,然后下面吵了上百楼的命名乱不乱的问题……所以性能起不起飞不重要……
    Keyes
        211
    Keyes  
       2021-01-06 09:08:37 +08:00 via iPhone
    @coolcfan 哈哈哈小机灵鬼
    kaka6
        212
    kaka6  
    OP
       2021-01-06 09:31:41 +08:00
    @coolcfan 终于被你拉回主题了
    惶恐,这么多回复👦
    回到主题.Net5 性能确实比较以往好很多了,也革命性的大一统
    我们是否愿意试试,搞点什么项目,或方向
    据说微信支付的大后端,财付通有大部分是用.net 开发的
    wangxiaoaer
        213
    wangxiaoaer  
       2021-01-06 09:55:54 +08:00   ❤️ 1
    笑哭,我跟楼里另一个老弟看法接近,觉得名称过于复杂,没有辨识度,导致入门难,结果被扣上了黑子的帽子……

    有些人连 求同存异都做不到了。

    楼里有人发了 dot.net 的链接,昨天到今天上午粗略把 web 那一块看了下,自己感受如下:

    1 单单只论".Net",不考虑前面帖子提到的各种什么 Framework,而是把".Net Core"本身作为一个独立的开发框架,入门还可以,起码 web 方面还行。

    2 框架完备度方面,站在一般应用的角度和 spring 相比,该有的都有了,MVC ORM DI Restful 都是浑然一体的,另外对异步、中间件(过滤器)的支持跟 NodeJS 很接近,也更易用。OAuth 的支持也是个大杀器,不弱于 Spring Security ( SS 新版好像不打算支持 IdentityServer 了)。

    3 跨平台部署。

    如果是个人应用,我会尝试一下,起码比 golang 那恶心人的语法舒服多了。

    但是这并没有改变我之前对".Net"这个流派的看法,相似概念太多,没有辨识度。
    liuhan907
        214
    liuhan907  
       2021-01-06 11:32:30 +08:00   ❤️ 1
    @wangxiaoaer
    我同意微软在统一过去割裂的生态,进而造成命名有些乱。但是你不觉得类似这样的问题只需要去微软的文档看上 10 分钟就能解决么?如果一个想学习新技术的人连花 10 分钟了解一下这个技术的始末都不愿意,你觉得这人能学好东西么?
    然后有一点我觉得,C#对异步的支持可比 nodejs 强多了。
    stevefan1999
        215
    stevefan1999  
       2021-01-06 11:34:15 +08:00
    @wangxiaoaer

    說起 Spring 請細分 Spring MVC, Spring WebFlux, Spring Boot, Spring Data, Spring Data JDBC, Spring Data JPA
    提起 JPA 還有 JPA 和 Hibernate 和 EclipseLink 給我分下
    還有什麼 log4j, slf4j, logback 的也是看起來亂七八糟的
    簡而言之 你們 java 狗不也是一樣嗎
    stevefan1999
        216
    stevefan1999  
       2021-01-06 11:37:43 +08:00
    作爲一個.net 過來人 我第一件事看見 java 生態就是亂 相比.net 的亂還真是小.net 巫見 java 大巫
    這可花了我多少時間去釐清這裏多少的關係...這是幾個星期啊

    你能說我是 java 黑 因爲我就是你們這些 java 人內卷 影響到了其他人的生計 才迫不得已學 jvm 學 kotlin 的
    stevefan1999
        217
    stevefan1999  
       2021-01-06 11:44:34 +08:00
    @nguoidiqua #134
    別扯 C# ASP.NET 什麼的, C#一開始你學語法就是了,根本不用了解到 ASP.NET 什麼呢,等接觸到 ASP.NET 的時候已經學得差不多了。

    懂了麼?
    crclz
        218
    crclz  
       2021-01-06 12:00:56 +08:00
    好起来了 .net 讨论度这么高
    hanmiao
        219
    hanmiao  
       2021-01-06 12:39:21 +08:00
    我第一眼看成百日飞升了
    godoway
        220
    godoway  
       2021-01-06 16:40:28 +08:00
    .net 没有源码绑定,开发体验上有点不友好,想要知道某接口有哪些实现还要去翻文档才能看到类的层级。
    除开这个外,其他体验还行。
    coolcfan
        221
    coolcfan  
       2021-01-06 17:07:19 +08:00
    @kaka6 #212 讲真,看主题,就算吵起来,也应该是有人说性能强有人说性能垃圾之类的……歪到乱不乱这儿是真没想到 23333333
    treblex
        222
    treblex  
       2021-01-06 17:33:50 +08:00
    看着挺香的
    ![]( https://tva1.sinaimg.cn/large/008eGmZEgy1gme3uxwto0j31tn0u0420.jpg)
    啥都能搞
    有人了解 Android and iOS with Xamarin 吗,好上手吗
    kaka6
        223
    kaka6  
    OP
       2021-01-06 17:36:23 +08:00   ❤️ 1
    @suke971219 web 都上打包上 app
    所以实现应该问题不大,就是深度匹配问题
    开发的资源配套的丰富程序
    不然搞个发信息、打电话的 demo 肯定是没有问题
    要看做什么 app
    hihanley
        224
    hihanley  
       2021-01-06 18:37:21 +08:00   ❤️ 1
    @coolcfan 哈哈哈哈,这说明.net 性能公认好没什么可喷的啊
    hantsy
        225
    hantsy  
       2021-01-06 19:06:42 +08:00   ❤️ 1
    @suke971219 据说都用 Flutter 去了。
    stone981023655
        226
    stone981023655  
       2021-02-01 00:17:13 +08:00
    @Mithril
    OpenJDK 和 OracleJDK 和 AdoptedJDK 随便你开心选, 结果都是一样的
    Spring 和 Spring Boot 什么区别 自行车和滴滴的区别
    Spring Boot 和 OpenJDK 有关系吗 V2EX 和 Browser 的关系
    讲句良心话, Spring 和 SpringBoot 只要人不蠢, 就能看出来多了个 Boot
    但是 .NET 命名瞎也没啥好反驳的.
    Mithril
        227
    Mithril  
       2021-02-01 08:29:50 +08:00
    @stone981023655 连 License 都不看的就不要回我了。
    SystemLight
        228
    SystemLight  
       2021-02-02 19:26:11 +08:00
    .Net 5 最令我欣喜的是写个简单的控制台程序终于不用定义类,而是使用函数式编程思想就可以完成了,.Net 5 可以通过在 Program.cs 中写一句就能完成一个最简单的 Hello world,我认知中这个都是 python 和 node 才能做到的,如果未来可以把不同命名空间中的类也去掉想 python 那个样子,我感觉就太屌了
    ```c#
    System.Console.WriteLine("Hello world");
    ```
    ettingshausen
        229
    ettingshausen  
       2021-06-09 15:23:09 +08:00
    今天尝试了一下,确实很牛逼。开箱即用,对于开发来说可以专注业务。不过,多年没写 C#,有点跟不上 C#的突飞猛进,语法看起来有点累。
    ljrdxs
        230
    ljrdxs  
       2021-08-04 13:50:58 +08:00
    @nguoidiqua 作为 ASP.NET 开发者,我来当个异类支持你。因为猎头们就根本搞不清楚,这确实给我带来麻烦,推荐的工作岗位不合适。
    JAVA 开发,最多分安卓或后端。不像 ASP.NET ,分 ASP 、ASP.NET Webforms 、ASP.NET MVC 、ASP.NET Web API 、ASP.NET Core 、.NET 5,而且还分 VB 和 C#。好点的猎头知道锁定关键词,坏点的就乱推荐。
    nguoidiqua
        231
    nguoidiqua  
       2021-10-19 12:51:31 +08:00
    @ljrdxs

    能控制自己情绪实事求是的人始终是少数,在 .NET 相关的社区大家都会吐槽的东西(微软也想解决的问题),在别的地方说出来大家就会群起攻之,原因是人有维护自身利益相关事物的情绪倾向,而这种情绪使人变得盲目。

    说起来也是我当时很无聊,硬要解释清楚,实际上我自己也明白那不是因为道理没讲清楚。说到底是我当时定力还不够,还不能包容别人有自己的情绪,这本身也陷入了一种执着于要求别人实事求是的情绪。
    1  2  3  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2740 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 09:53 · PVG 17:53 · LAX 01:53 · JFK 04:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.