摘要:MS.Microservice 微服务架构设计 此项目主要是个人在学习微服务的过程中所了解到的知识点 .NET 微服务 - 体系结构电子书-原文英文版 .NET 微服务 - 体系结构电子书 Martin Fowler 对微服务特征的概括:微服务 上下文边界 领域命令模式处理程序 领域命令验证 贫血领 阅读全文
.NET API 接口数据传输加密最佳实践
2022-10-29 17:31 by 沉睡的木木夕, 4193 阅读, 25 推荐, 收藏, 编辑
摘要:.NET API 接口数据传输加密最佳实践 我们在做 Api 接口时,相信一定会有接触到要给传输的请求 body 的内容进行加密传输。其目的就是为了防止一些敏感的内容直接被 UI 层查看或篡改。 其实粗略一想就能想到很多种方案,但是哪些方案是目前最适合我们项目的呢? 硬编码方式 最先想到的应该就是硬 阅读全文
[翻译] Cassandra 分布式结构化存储系统
2022-04-08 23:42 by 沉睡的木木夕, 605 阅读, 0 推荐, 收藏, 编辑
摘要:Cassandra 分布式结构化存储系统 摘要 Cassandra 是一个分布式存储系统,用于管理分布在许多商品服务器上的大量结构化数据,同时提供无单点故障(no single point of failure)的高可用服务。Cassandra 的目标是在数百个节点(可能分布在不同的数据中心)的基础 阅读全文
老项目的倔强——性能优化篇
2022-02-27 23:10 by 沉睡的木木夕, 6498 阅读, 24 推荐, 收藏, 编辑
摘要:老项目的倔强——性能优化篇 由于各种原因我们总是要与公司各种老项目打交道。天有不测风云,谁也不知道这坨屎山会从哪个方向把你的嘴塞的满满的,还不让你吐出来。既然如此...那只能细嚼慢咽的吞下去吧。 说实在话,只要业务不死,那些老大伯项目就还有价值。更何况这个本就没什么人关注的项目突然被公司高层盯住了。 阅读全文
RWMutex——一种细粒度的Mutex互斥锁
2021-07-17 17:38 by 沉睡的木木夕, 373 阅读, 0 推荐, 收藏, 编辑
摘要:RWMutex —— 细粒度的读写锁 我们之前有讲过 Mutex 互斥锁。这是在任何时刻下只允许一个 goroutine 执行的串行化的锁。而现在这个 RWMutex 就是在 Mutex 的基础上进行了拓展能支持多个 goroutine 持有读锁,而在尝试持有写锁时就会如 Mutex 一样就会陷入等 阅读全文
重新梳理调度器——GMP 调度模型
2021-07-17 01:11 by 沉睡的木木夕, 865 阅读, 0 推荐, 收藏, 编辑
摘要:调度器——GMP 调度模型 Goroutine 调度器,它是负责在工作线程上分发准备运行的 goroutines。 首先在讲 GMP 调度模型之前,我们先了解为什么会有这个模型,之前的调度模型是什么样子的?为什么要改成现在的模式? 我们从当初的Goroutine 调度设计文档得知之前采用了 GM 的 阅读全文
探索互斥锁 Mutex 实现原理
2021-07-15 01:46 by 沉睡的木木夕, 2862 阅读, 3 推荐, 收藏, 编辑
摘要:Mutex 互斥锁 概要描述 mutex 是 go 提供的同步原语。用于多个协程之间的同步协作。在大多数底层框架代码中都会用到这个锁。 mutex 总过有三个状态 mutexLocked: 表示占有锁 mutexWoken: 表示唤醒 mutexStarving: 表示等待锁的饥饿状态(从正常模式进 阅读全文
关于个人微服务相关的学习资料
2021-07-08 00:32 by 沉睡的木木夕, 266 阅读, 3 推荐, 收藏, 编辑
摘要:MS.Microservice 微服务架构设计 此项目主要是个人在学习微服务的过程中所了解到的知识点 .NET 微服务 - 体系结构电子书-原文英文版 .NET 微服务 - 体系结构电子书 Martin Fowler 对微服务特征的概括:微服务 上下文边界 领域命令模式处理程序 领域命令验证 贫血领 阅读全文
深入理解 sync.Once 与 sync.Pool
2021-06-24 18:24 by 沉睡的木木夕, 686 阅读, 0 推荐, 收藏, 编辑
摘要:深入理解 sync.Once 与 sync.Pool sync.Once 代表在这个对象下在这个示例下多次执行能保证只会执行一次操作。 var once sync.Once for i:=0; i < 10; i++ { once.Do(func(){ fmt.Println("execed..." 阅读全文
基于 RabbitMQ-EasyNetQ 实现.NET与Go的消息调度交互
2020-12-02 21:30 by 沉睡的木木夕, 1031 阅读, 1 推荐, 收藏, 编辑
摘要:基于 RabbitMQ 实现跨语言的消息调度 微服务的盛行,使我们由原来的单机”巨服务“的项目拆分成了不同的业务相对独立的模块,以及与业务不相关的中间件模块。这样我们免不了在公司不同的模块项目使用不同的团队,而各自的团队所擅长的开发语言也会不一致(当然,我想大多数都是统一了语言体系)。但是在微服务体 阅读全文