https://www.cnblogs.com/InCerry/p/microservice-migration-net-6.html
本次迁移涉及的是公司内部一个业务子系统,该系统是一个多样化的应用,支撑着公司的多个业务方向。目前,该系统由40多个基于.NET的微服务应用构成,使用数千个CPU核心和数TB内存,在数百个Linux容器中运行。每天,该系统需要处理数十亿次请求。
https://www.cnblogs.com/sdflysha/p/paddle-sharp-ocr.html
.NET Conf 2021中国我做了一次《.NET玩转计算机视觉OpenCV》的分享,其中提到了一个效果特别好的OCR识别引擎——百度飞桨PaddleOCR,可离线部署,后来我逐步把它封装了一下,代码全部开源(可点击查看原文跳转到Github):https://github.com/sdcb/paddlesharp,可以直接安装NuGet包使用,支持.NET Framework/.NET Core、支持Linux、支持GPU调用,支持14种语言模型的自动下载。
https://www.cnblogs.com/Dotnet9-com/p/17139986.html
您是否曾经遇到过不属于您但想要更改其行为的类库方法?通常,该方法是非公开的,并且没有很好的方法来覆盖其行为。你可以看到它是如何工作的(因为你很棒,并且使用像Resharper、dnSpy之类反编译工具,对吧?),你只是无法改变它。你真的需要改变它,因为XXX原因。
https://www.cnblogs.com/wucy/p/17137128.html
前一段时间得闲的时候优化了一下我之前的轮子[DotNetCoreRpc]小框架,其中主要的优化点主要是关于RPC异步契约调用的相关逻辑。在此过程中进一步了解了关于async和await
异步操作相关的知识点,加深了异步操作的理解,因此总结一下。关于async和await
每个人都有自己的理解,甚至关于异步和同步
亦或者关于异步和多线程
每个人也都有自己的理解。因此,如果本文涉及到个人观点与您的观点不一致的时候请勿喷。结论固然重要,但是在这个过程中的引发的思考也很重要。
https://www.cnblogs.com/huangxincheng/p/17139891.html
一直在追这个系列的朋友应该能感受到,我给这个行业中无数的陌生人分析过各种dump,终于在上周有位老同学找到我,还是个大妹子,必须有求必应 😁😁😁。妹子公司的系统最近在某次升级之后,在高峰期会遇到 CPU 爆高的现象,有些单位你懂的,很强势,所以就苦逼了程序媛,不管怎么说,既然找上我,得想各种办法给解决掉,用远程的方式告诉了老同学怎么用 procdump 去抓 dump,在一个小时之后 dump 成功拿到,接下来就来分析了。
一:https://mp.weixin.qq.com/s/w6nR6zOSazEi7fmHkxi3kQ
二:https://mp.weixin.qq.com/s/pduJO4E_qpL1Pqk_B4zpXQ
三:https://mp.weixin.qq.com/s/1hC7vJ3Rvl2aFolE44YV7g
四:https://mp.weixin.qq.com/s/jqQ4Wih-d9Gm-kopoLsIAQ
五:https://mp.weixin.qq.com/s/u-p4db392O07fhUV7oIFZg
六:https://mp.weixin.qq.com/s/C58z5OucltOI4WCeF2RqKw
一年前,我发布了.NET 6 中的性能改进,紧接着是.NET 5、.NET Core 3.0、.NET Core 2.1和.NET Core 2.0的类似帖子。我喜欢写这些帖子,也喜欢阅读开发人员对它们的回复。去年的一条评论特别引起了我的共鸣。评论者引用了虎胆龙威的电影名言,“'当亚历山大看到他的领域的广度时,他为没有更多的世界可以征服而哭泣'”,并质疑 .NET 的性能改进是否相似。水井干涸了吗?是否没有更多的“[性能]世界可以征服”?我有点头晕地说,即使 .NET 6 有多快,.NET 7 明确地强调了可以做的和已经做的更多。
https://mp.weixin.qq.com/s/J1rmtcCLxODQdiQa0bsrqQ
在 .NET 7 以前,项目对于 NuGet依赖项的版本依赖散落与解决方案的各个角落。这导致升级维护和查看的时候都比较麻烦。在 .NET 7 中,你可以使用一个文件来集中管理你的 NuGet 依赖版本号。本篇文章将介绍如何使用这个功能。
https://mp.weixin.qq.com/s/ut7KjJ_RqNU1BkCi8iGTmg
在有的特有的项目环境下,团队会将所有的项目使用同一个解决方案进行管理。这种方式方面了管理,但是却会导致解决方案变得非常庞大,导致加载时间过长。那么,如何部分加载解决方案中的部分项目呢?就让我们来借用微软退出的 slngen 工具来体验一下部分加载解决方案中的部分项目吧。
https://mp.weixin.qq.com/s/UccJv2cYje4bTM1qDTbyBQ
最近.NET团队在这篇文章中介绍了对.NET移植的一般政策:https://devblogs.microsoft.com/dotnet/why-dotnet/#binary-distributions。自从.NET 2014年开源以来,社区还扩展了 .NET 以在其他平台上运行。三星为其基于ARM的Tizen平台移植了.NET。Red Hat 和 IBM 将 .NET 移植到 LinuxONE/s390x。龙芯中科将.NET移植到LoongArch。 现在三星为其基于RISC-V的Tizen平台移植.NET。
https://mp.weixin.qq.com/s/jEiXcCCwAxIk9Qe1RncULw
现在,你已可以使用 Visual Studio 将所有 .NET 应用程序升级到最新版本的 .NET!这一功能可以从 Visual Studio 扩展包中获取,它会升级你的 .NET Framework 或 .NET Core 网页和桌面应用程序。一些项目类型仍正在开发中并将在不久的未来推出,请参阅以下的详细信息。
https://mp.weixin.qq.com/s/8r4xejLlJGEotS5VjyU3tA
.NET 8 的第一个 preview 版本发布了,.NET 8 是新的 LTS 版本,有三年的长期支持,体验一下 .NET 8 preview 1 看看引入进来的变化.
https://mp.weixin.qq.com/s/AjLrwsMiBPUdUj2nTqto3Q
在 .NET 8 Preview 1 中引入了两个非常实用的 Random 方法,GetItems
和 Shuffle
,下面我们简单的看个简单的示例吧。
https://mp.weixin.qq.com/s/fC21hXMtjTxwRQY__LuC4A
在 .NET 8 中 dotnet publish 和 dotnet pack 的默认行为会发生一些变化,之前 publish 和 pack 默认是 Debug,从 .NET 8 开始默认的配置就变成了 Release。
由于Mayuki大佬上周没有时间,所以国际板块没有简介,只有标题和链接。
https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-5-released/
https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-preview-1/
https://devblogs.microsoft.com/dotnet/announcing-ef8-preview-1/
https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-8-preview-1/
https://devblogs.microsoft.com/visualstudio/visual-studio-for-mac-17-5-is-now-available/
https://devblogs.microsoft.com/dotnet/february-2023-updates/
https://devblogs.microsoft.com/dotnet/improvements-to-net-framework-updates-for-windows-11-22h2/
https://devblogs.microsoft.com/dotnet/upgrade-assistant-now-in-visual-studio/
https://devblogs.microsoft.com/dotnet/winforms-codegen-update/
https://blog.jetbrains.com/dotnet/2023/02/24/rider-2023-1-eap-6/
https://github.com/microsoft/WindowsAppSDK/releases/tag/v1.2.4
https://github.com/jbogard/MediatR/releases/tag/v12.0.0
https://devblogs.microsoft.com/visualstudio/intellicode-api-usage-examples/
https://blog.jetbrains.com/dotnet/2023/02/22/getting-started-with-dottrace-on-macos-and-linux/
https://andrewlock.net/behind-the-scenes-of-minimal-apis-7-building-the-final-requestdelegate/
https://qiita.com/villhell/items/9993a132767b284ba2f6
https://codingberry.com/migration-from-net-framework-mvc-to-blazor-webassembly-faf5937acd2a
https://jonhilton.net/blazor-united/
https://zenn.dev/sbstani/articles/3c18a3a58e03b4
https://devblogs.microsoft.com/visualstudio/visual-studio-2022-can-now-always-update-on-close/
https://medium.com/@CORDEA/using-net-google-api-client-library-wit-maui-11ae98e34a35
https://qiita.com/miswil/items/9e139202337ce881ca5f
https://qiita.com/EmEpsilon/items/1e8c38ba2c5ebb906607
https://rksoftware.hatenablog.com/entry/2023/02/18/160000
https://laurentkempe.com/2023/02/20/refactoring-huge-csharp-code-base-in-minutes/
https://www.devleader.ca/2023/02/18/task-eventhandlers-the-little-secret-you-didnt-know/
https://medium.com/@epeshk/fast-console-io-on-net-6cb56a6db529
https://zenn.dev/nuits_jp/articles/2023-02-18-cancelling-console-readline
https://www.slideshare.net/mishizaki1/c-256109925
https://www.docswell.com/s/hiro128_777/K6YMNL-2023-02-19-170020#p20
https://github.com/MichalStrehovsky/sizegame
https://twitter.com/jamesnk/status/1627309572087218177?s=12
https://github.com/dotnet/runtime/issues/80807
https://github.com/dotnet/core/issues/8133
由于笔者没有那么多时间对国内的一些文章进行整理,欢迎大家为《.NET周报-国内文章》板块进行贡献,需要推广自己的文章或者框架、开源项目可以下方的项目地址提交Issue或者在我的微信公众号私信。
格式如下:
https://github.com/InCerryGit/.NET-Weekly
相信大家在开发中经常会遇到一些性能问题,苦于没有有效的工具去发现性能瓶颈,或者是发现瓶颈以后不知道该如何优化。之前一直有读者朋友询问有没有技术交流群,但是由于各种原因一直都没创建,现在很高兴的在这里宣布,我创建了一个专门交流.NET性能优化经验的群组,主题包括但不限于:
希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET性能问题和宝贵的性能分析优化经验。目前一群已满,现在开放二群。
如果提示已经达到200人,可以加我微信,我拉你进群: ls1075
另外也创建了QQ群,群号: 687779078,欢迎大家加入。