她微笑的脸
  • 首页
  • 归档
  • 分类
  • 标签
  • 留言板
  • 友情链接
  • 关于
如何写出 GC 友好的代码

如何写出 GC 友好的代码

前言在.NET 开发中,垃圾回收(GC)是 CLR 提供的核心能力,它自动管理内存分配与回收,大幅降低了内存泄漏的风险。但GC 并非 “无成本”—— 回收过程中会产生 “Stop-The-World”(STW)暂停,频繁的 GC 操作会直接导致程序卡顿、CPU 占用飙升,尤其在大数据处理、高并发接口等场景下,GC 压力可能成为性能瓶颈。简单GC介绍 常见的 GC 不友好代码List 扩容带来的 G
2025-08-27
.NetCore
#.NetCore
FastEndpoints 构建高性能的 Api

FastEndpoints 构建高性能的 Api

前言FastEndpoints 是一个轻量级的 REST API 开发框架,它摒弃了传统的 Controller/Action 模式,是基于REPR(Request-Endpoint-Response)设计模式设计的API。性能与Minimal APIs 不相上下。对比传统 MVC 性能上要上不少。对于性能的要求高的微服务非常推荐。 REPR 设计模式FastEndpoints 摒弃 MVC 的「
2025-08-26
.NetCore
#.NetCore
怎么定义工作的有效性

怎么定义工作的有效性

前言很多时候我们在工作中总是忙而无效,多数的时间成本都被浪费,定义程序员的产出并不应该是写代码的效率。而是创造的价值和有效性。 当接到开发功能特性的时候,应该问问产品这些问题: 我们为什么要做这个特性,它会给用户或者公司带来怎样的价值? 什么样的用户会用到这个特性,他们在什么场景下使用,他们又会怎样使用它? 达成这个目的是否有其它手段?是不是一定要开发一个系统? 上线后,怎么衡量它的有效性?
2025-01-27
熔断、限流、降级、扩容

熔断、限流、降级、扩容

为什么需要在云时代,随着业务的不断发展和扩大,分布式的系统已经是大部分企业的首选,然而分布式也会带来一个都会遇到的问题,任何一个节点或者组件出现问题都可能会导致整个服务的雪崩。 对于服务雪崩的情况主要有两个解决办法,一个是快速的失败减少系统的复杂,也就是熔断、限流、降级,另一种是快速的扩容,增加服务的负载能力。需要注意的是熔断是被动感知故障的,并且熔断肯定会导致系统的抖动。 熔断生活中就有一些熔断
2023-11-24
分布式
工作中如何有效的沟通

工作中如何有效的沟通

前言最近在公司参与一个七巧板的团队游戏,游戏规则其实很简单,但是前提是大家能有效的沟通并达成一致。最终以未能达成目标而结束,整个游戏让我意识到沟通是保证有效工作的前提条件,也是非常重要的一项工作技能,因此自己总结归纳了一些自己对于沟通以及如何沟通的感受和心得。 什么是沟通比较官方的说法:沟通是指运用语言、文字或一些特定的非语言行为(面部表情、肢体动作等),把自己的想法、要求、信息等内容传递给对方。
2023-08-09
沟通
#沟通
学习的一些感悟

学习的一些感悟

减少对学习的排斥峰值和终值。人们对一切人、事、物的感受,由峰值和终值两个因素决定。峰值是指这段体验中的最高峰,包括正向和负向。终值是指这段体验结束时给你的感觉。在学习中应该避免负向峰值的出现,艰难和轻松的任务穿插着去完成是保持愉悦和高效的重要方法,轻松的任务可以是休息,散步,听音乐,或者睡一觉。 避免负向峰值的几个方法: 在制定计划的时候,量力而行,不要制定完不成的计划。 一天内的计划种类不要太
2023-07-31
怎么复盘事故

怎么复盘事故

如何复盘系统在线上出现异常是不可避免的,但是可以降低问题发生的概率,减少问题导致的损失。所以在出现问题后及时有效复盘可以帮助团队更好的避免故障。 复盘包括事实、分析、订责、改进四个部分。 事实:首先事实是复盘的基础,如果事实都没讲清楚就开始分析改进是没有任何意义的。 分析:保证没有任何遗漏的问题,深入分析问题的根因。 定责:有明确的定责标准,不要胡乱甩锅。 改进:定制完整的可落地的改进方案。
2023-07-20
经验总结
#复盘
应用常见的部署方式

应用常见的部署方式

停机部署停机部署应该是一个已经基本被历史淘汰的部署方式,它非常简单粗暴,直接把现有服务直接停机,然后部署新的版本,停机部署现在基本只会用在一些新老版本强制切换且互不兼容的情况下。 它的优势在于不会存在新老版本兼容的问题,缺点是显而易见的,停机的时候所有的用户都将处于无法使用的状态。 蓝绿部署蓝绿部署也比较好理解。会在生成环境同时部署两个一模一样的集群,一个是老的服务,一个即将发布的新服务,也就是常
2023-07-13
运维
#部署
ApplePay 服务端单据验证

ApplePay 服务端单据验证

前言记录一下ApplePay 非订阅商品的服务端单据验证流程,以及在其中遇到的问题。总的来说苹果的这套单据验证流程还是挺反人类的。 苹果应用内支付流程 iap(in app purchase)这个是我正在使用的苹果支付大致支付成功的流程图。 首先获取商品列表,这里面包含苹果的 product_id,这个非常重要。 之后客户端直接唤醒支付并支付,这里并没有提前找商户服务创建订单,主要是为了减少流程
2023-06-28
支付
#applePay
redis 数据倾斜

redis 数据倾斜

什么是数据倾斜Redis 数据倾斜指的是在 Redis 集群中,某些节点的负载过高,而其他节点负载较轻的情况。负载包括数据量的负载和访问量的负载,譬如实例上的数据分布不均衡,某个实例上的数据特别多。在或者某个实例上的数据是热点数据,被访问得非常频繁。这些都是数据倾斜的问题,严重会影响到 Redis 性能和稳定性。 数据量倾斜原因和解决方法Hash TagHash Tag 是 Redis 中的一个客
2023-04-11
redis
#数据倾斜
123…6

搜索

Hexo Fluid
浙ICP备2021013123号-2 | police-icon 2021013123号-2