随笔分类 -  .NET Research

摘要:我们将原有ASP.NET应用升级到ASP.NET Core的过程中,会遇到一个新的概念:中间件。 中间件是ASP.NET Core全新引入的概念。中间件是一种装配到应用管道中以处理请求和响应的软件。 每个组件: 选择是否将请求传递到管道中的下一个组件。 可在管道中的下一个组件前后执行工作。 单独看以 阅读全文
posted @ 2020-04-04 20:49 Eric zhou 阅读(1377) 评论(0) 推荐(7) 编辑
摘要:将ASP.NET升级到ASP.NET Core之后,相信大家都会遇到HttpContext.Current无法使用的问题。这也是我们迁移ASP.NET Core必须解决的问题。 本文我们详细讨论一下,使用HttpContext的正确姿势。 先列一下使用HttpContext的具体场景: 1. 在Co 阅读全文
posted @ 2020-03-25 22:51 Eric zhou 阅读(5139) 评论(5) 推荐(14) 编辑
摘要:这几天微软.NET 团队发布了.NET 5 Preview 1, 如约而至。很兴奋,因为.NET Core和.NET Framework终于实现了大一统,同时也很期待,期待.NET 5能给我们带来哪些好的新特性。 让我们先把时间拨回到2019年... 一、2019年.NET 5的提前剧透 去年201 阅读全文
posted @ 2020-03-23 22:44 Eric zhou 阅读(6371) 评论(30) 推荐(23) 编辑
摘要:随着VSCode的不断完善和强大,是时候将部分开发迁移到VS Code中了。 目前使用VS2019开发.NET Core应用,一直有一个想法,在VS Code中复刻VS的开发环境,同时迁移到VS Code。 那么现在就开始吧。 首先,安装最新版的VS Code:https://code.visual 阅读全文
posted @ 2019-11-16 23:26 Eric zhou 阅读(14155) 评论(10) 推荐(20) 编辑
摘要:前段时间迁移.NET Core做了大量的试水和评估,今天整理一下分享给大家。大致有以下几个部分: 1. .NET Core的由来 2. 为什么要迁移.NET Core 3. .NET Core3.X主要特性 4. .NET Standard和.NET Core 5. .NET Core Roadma 阅读全文
posted @ 2019-10-03 08:07 Eric zhou 阅读(2864) 评论(10) 推荐(16) 编辑
摘要:在.NET Core的迁移过程中,我们将原有的.NET Framework代码迁移到.NET Core。如果线上只有一个小型的应用还好,迁移升级完成后,只需要维护.NET Core这个版本的代码。 但是,如果是一个大型分布式应用,几百台Server,上千个.NET 应用进程。这种场景下,在一定的时期 阅读全文
posted @ 2019-09-30 22:50 Eric zhou 阅读(6032) 评论(6) 推荐(11) 编辑
摘要:最近整理了一下Windbg程序调试系列的文章,做个了索引贴,方便大家查询、搜索: Windbg程序调试系列1-常用命令说明&示例 Windbg程序调试系列1-Mex扩展使用总结 Windbg程序调试系列2-内存泄露问题 Windbg程序调试系列3-线程阻塞问题 Windbg程序调试系列4-Live 阅读全文
posted @ 2019-08-06 09:35 Eric zhou 阅读(3160) 评论(5) 推荐(15) 编辑
摘要:上篇博文中给大家分享了使用Windbg分析线程阻塞问题: Windbg程序调试系列3-线程阻塞问题 本篇中我们继续,跟大家分享附加进程实时调试-Live Debugging。 先说一下使用Windbg附加进程实时调试的应用场景和注意事项: 应用场景: 集成测试环境,影响异常后,分析异常和线程上下文的 阅读全文
posted @ 2018-11-05 07:03 Eric zhou 阅读(2210) 评论(4) 推荐(3) 编辑
摘要:上一篇博文给大家分享了使用Windbg分析内存泄露问题: Windbg程序调试系列2-内存泄露问题 本篇我们继续跟大家分享,如何分析解决线程阻塞问题。 从根本上讲,线程阻塞属于程序Hang的一种,其表现主要有: 1. 随着请求的增加,线程数一直增加,可能会把线程池打爆 2. 低CPU使用率(被阻塞后 阅读全文
posted @ 2018-11-01 09:59 Eric zhou 阅读(2751) 评论(1) 推荐(7) 编辑
摘要:上篇文章给大家解释了Windbg的基本命令和说明,这一篇给大家介绍内存泄露场景的问题分析。 文章大纲: 1. 先说问题背景:生产环境IIS站点,运行一段时间后,w3wp进程内存会涨到2G,同时内存不释放。 2. 问题确认 打开性能计数器,我们重点看一段时间内,IIS站点w3wp进程相关的性能计数器的 阅读全文
posted @ 2018-10-30 11:23 Eric zhou 阅读(3463) 评论(4) 推荐(7) 编辑
摘要:Windbg程序调试是.Net高级开发需要掌握的必备技能,分析内存泄露、分析高CPU、分析线程阻塞、分析内存对象、分析线程堆栈、Live Dedugging。这个领域可以说一个技能+场景化应用的结合,如果单学Windbg命令,不理解实际Troubleshooting中的作用,是没有意义的。所以,准备 阅读全文
posted @ 2018-10-28 20:08 Eric zhou 阅读(4556) 评论(5) 推荐(9) 编辑
摘要:最近一直在频繁使用Windbg做线上Dump调试,与微软做Case交流的时候,发现微软CSS团队,用了一个非常效率的Windbg 插件,Mex: 使用介绍: https://blogs.msdn.microsoft.com/luisdem/2016/07/19/mex-debugging-exten 阅读全文
posted @ 2018-07-26 09:14 Eric zhou 阅读(4329) 评论(0) 推荐(3) 编辑
摘要:我们现在用的数据访问组件封装了IBatis.Net框架,提供了标准的数据访问接口和服务。正好总结一下老技术IBatis.Net在进行实际的数据访问开发之前,我们先了解一下:IBatis.Net中几个重要的配置文件和一些关键的技术原理:4个重要的配置文件: 关键的技术特性 开发一个数据访问的业务功能, 阅读全文
posted @ 2017-10-14 22:51 Eric zhou 阅读(2323) 评论(6) 推荐(3) 编辑
摘要:在生产环境中,通过运行日志我们会发现一些异常问题,此时,我们不能直接拿VS远程到服务器上调试,同时日志输出的信息无法百分百反映内存中对象的状态,比如说我们想查看进程中所有的Socket连接状态、服务路由信息等等。 即:如何分析.Net 运行时内存对象? 所以,今天我们推荐.Net进阶必备神器:Win 阅读全文
posted @ 2017-10-06 10:42 Eric zhou 阅读(3375) 评论(3) 推荐(6) 编辑
摘要:最近在做服务的细粒度治理,统一管理所有服务的方法、参数、返回值信息。方便后续的各个模块之间的对接和协作。 目前系统中所有的服务,管理到接口契约粒度,即服务接口声明和服务接口实现。要做服务的细粒度治理: 首先需要将服务的各个方法信息全部反射出来,然后再统一管理。 大致的思路是这样的: 1. 下载所有最 阅读全文
posted @ 2017-09-29 12:50 Eric zhou 阅读(2298) 评论(5) 推荐(3) 编辑
摘要:随着ASP.NET Core 2.0发布之后,原先运行在Windows IIS中的ASP.NET WebApi站点,就可以跨平台运行在Linux中。我们有必要先说一下ASP.NET Core。 ASP.NET Core 是新一代的 ASP.NET,第一次出现时的代号为 ASP.NET vNext,后 阅读全文
posted @ 2017-09-28 11:47 Eric zhou 阅读(3765) 评论(22) 推荐(22) 编辑
摘要:上一篇文章,我们做了内存数据库的技术选型: 内存数据库技术选型 本文中,我们继续深入研究Apache Ignite,同时分享一些我们.Net的编码实践。 首先,Apache Ignite是一个内存数据组织是高性能的、集成化的以及分布式的内存平台,他可以实时地在大数据集中执行事务和计算,和传统的基于磁 阅读全文
posted @ 2017-08-26 22:18 Eric zhou 阅读(6664) 评论(4) 推荐(3) 编辑
摘要:最近一段时间研究了内存数据库,总结了一下,分享给大家。我们先从应用场景说起。 一. 内存数据库的应用场景 数据缓存:将经常使用的数据存放在内存中,全局共享,减少和数据库之间的交互频率,提升数据访问速度,主要用于应用程序全局共享缓存。 内存计算:支持通过标准SQL或者LINQ的方式实现对内存数据的聚合 阅读全文
posted @ 2017-08-25 22:39 Eric zhou 阅读(54082) 评论(0) 推荐(5) 编辑
摘要:上两篇文章我们介绍了时序数据库Influxdb在互联网级监控系统下的应用: 互联网级监控系统必备-时序数据库之Influxdb技术 互联网级监控系统必备-时序数据库之Influxdb集群及踩过的坑 在我们监控平台V1.0和V2.0版本的演进过程中,设计上,我们在监控引擎端引入了内存存储的理念,即监控 阅读全文
posted @ 2017-08-24 23:13 Eric zhou 阅读(2352) 评论(0) 推荐(6) 编辑
摘要:上篇博文中,我们介绍了做互联网级监控系统的必备-Influxdb的关键特性、数据读写、应用场景: 互联网级监控系统必备-时序数据库之Influxdb 本文中,我们介绍Influxdb数据库集群的搭建,同时分享一下我们使用集群遇到的坑! 一、环境准备 二、一步一步搭建Influxdb集群 1. 在各个 阅读全文
posted @ 2017-07-12 08:40 Eric zhou 阅读(20583) 评论(8) 推荐(9) 编辑