-
【Redis】| 总结/Edison Zhou---新浪微博作为Redis深度用户,对Redis做了一些优化,一起来看看吧。1微博对Redis的技术需求微博对Redis的三大具体需求如下能够提供高性能、高并发的读写访问,保证读写低延迟;(高 ...
-
【Redis】| 总结/Edison Zhou1Redis集群方案一:CodisCodis整体架构Codis集群的整体架构和关键组件如下所示,其中心思想是基于代理(Proxy)设计实现。Codis集群保证高可靠性的架构:配置了 server group 的 Codis ...
-
【Redis】| 总结/Edison Zhou1Redis的纵向扩展与横向扩展对于Redis来说,其扩展性也可以分为两类:纵向扩展(scalce up) 与 横向扩展(scale out)。纵向扩展所谓纵向扩展,就是给单台Redis实例升级资源配置,如C ...
-
1. 引言最近翻看最新3.0 eShopOncontainers源码,发现其在架构选型中补充了 gRPC 进行服务间通信。那就索性也写一篇,作为系列的补充。2. gRPC老规矩,先来理一下gRPC的基本概念。gRPC是Google开源的RPC框架,比肩d ...
-
引言客户端与微服务的通信问题永远是一个绕不开的问题,对于小型微服务应用,客户端与微服务可以使用直连的方式进行通信,但对于对于大型的微服务应用我们将不得不面对以下问题:如何降低客户端到后台的请求数量, ...
-
引言客户端与微服务的通信问题永远是一个绕不开的问题,对于小型微服务应用,客户端与微服务可以使用直连的方式进行通信,但对于对于大型的微服务应用我们将不得不面对以下问题:如何降低客户端到后台的请求数量, ...
-
[源码路径:Github-EventBus:https://github.com/yanshengjie/EventBus] 1. 引言事件总线这个概念对你来说可能很陌生,但提到观察者(发布-订阅)模式,你也许就很熟悉。事件总线是对发布-订阅模式的一种实现。它 ...
-
1. 引言断断续续,感觉这个系列又要半途而废了。趁着假期,赶紧再更一篇,介绍下如何将eShopOnContainers部署到K8S上,进而实现大家常说的微服务上云。2. 先了解下 Helm读过我上篇文章ASP.NET Core 借助 K8S 玩转容 ...
-
1. 引言Ordering microservice(订单微服务)就是处理订单的了,它与前面讲到的几个微服务相比要复杂的多。主要涉及以下业务逻辑:订单的创建、取消、支付、发货库存的扣减2. 架构模式如上图所示,该服务基于CQRS ...
-
引言Basket microservice(购物车微服务)主要用于处理购物车的业务逻辑,包括:购物车商品的CRUD订阅商品价格更新事件,进行购物车商品同步处理购物车结算事件发布订阅订单成功创建事件,进行购物车的清空操作架构 ...
-
引言Catalog microservice(目录微服务)维护着所有产品信息,包括库存、价格。所以该微服务的核心业务为:产品信息的维护库存的更新价格的维护架构模式如上图所示,本微服务采用简单的数据驱动的CRUD微服务架构, ...
-
环境准备Win10(开启Hyper-V).NET Core SDKDocker for WindowsVS2017 or VS CodeGitSQL Server Management Studio(可选)Redis Desktop Manager(可选)Node.js(可选)Bower(可选)Clone代码到本地执行命令 git ...
-
引言Basket microservice(购物车微服务)主要用于处理购物车的业务逻辑,包括:购物车商品的CRUD订阅商品价格更新事件,进行购物车商品同步处理购物车结算事件发布订阅订单成功创建事件,进行购物车的清空操作架构 ...
-
1. 引言事件总线这个概念对你来说可能很陌生,但提到观察者(发布-订阅)模式,你也许就很熟悉。事件总线是对发布-订阅模式的一种实现。它是一种集中式事件处理机制,允许不同的组件之间进行彼此通信而又不需要相互 ...
-
1. 引言事件总线解决了微服务间如何基于集成事件进行异步通信的问题。然而只有事件总线正常运行,微服务之间基于事件的通信才得以运转。而现实情况是,总有这样或那样的问题,导致事件总线不稳定或不可用,比如:网 ...
-
引言Catalog microservice(目录微服务)维护着所有产品信息,包括库存、价格。所以该微服务的核心业务为:产品信息的维护库存的更新价格的维护架构模式如上图所示,本微服务采用简单的数据驱动的CRUD微服务架构, ...
-
1. 引言事件总线这个概念对你来说可能很陌生,但提到观察者(发布-订阅)模式,你也许就很熟悉。事件总线是对发布-订阅模式的一种实现。它是一种集中式事件处理机制,允许不同的组件之间进行彼此通信而又不需要相互 ...
-
首先感谢晓晨Master和EdisonChou的审稿!也感谢正在阅读的您!引言通常,服务所公开的资源和 API 必须仅限受信任的特定用户和客户端访问。那进行 API 级别信任决策的第一步就是身份认证——确定用户身份是否可靠。 ...
-
引言在微服务大行其道的今天,Java阵营的Spring Boot、Spring Cloud、Dubbo微服务框架可谓是风水水起,也不得不感慨Java的生态圈的火爆。反观国内.NET阵营,微服务却不愠不火。微软在其官网的架构体系上推出了eShop ...
-
环境准备Win10(开启Hyper-V).NET Core SDKDocker for WindowsVS2017 or VS CodeGitSQL Server Management Studio(可选)Redis Desktop Manager(可选)Node.js(可选)Bower(可选)Clone代码到本地执行命令 git ...
-
大家好,我是Edison。最近有群友在问:.NET能搞AI应用开发吗?并一直觉得只有用Python才能搞。其实,我最近一直在学习 Microsoft Agent Framwork 开发Agent智能体,接触了很多的概念和框架,包括但不限于M.E.AI/M.E ...
-
【Redis】| 总结/Edison Zhou1Redis的哨兵机制概览对于Redis来说,主从库模式下,如果主库发生故障了,就会影响到从库的同步,对于系统服务来说是不可接受的。那么问题来了,如何解决主库挂掉的情况?Redis在主从 ...
-
大家好,我是Edison。MAF(Microsoft Agent Framwork)已经出来有一段时间,最近看到它的commit比较频繁,估计是为了在.NET Conf 2025发布1.0.0的正式版。预览版也并不妨碍我们的学习,那么从今天开始,我们就通过 ...
-
【Redis】| 总结/Edison Zhou1Redis的数据同步机制概览对于Redis来说,其高可用性是由两方面来保证的:一方面是数据尽量少丢失,前一篇总结推文提到的AOF和RDB实现了。另一方面是服务尽量少中断,Redis则是靠增加 ...
-
【Redis】| 总结/Edison Zhou1Redis性能的5大因素总体来说,Redis的性能一般具有上图所示的5大因素(建议收藏)。本文下面的总结会聚焦在Redis关键系统配置部分。2Redis变慢的场景在应用服务端有时会存在一个事务 ...
-
【Redis】| 总结/Edison Zhou1Redis的持久化机制一旦Redis服务器宕机,内存中的数据会全部丢失。如果单靠从后端DB中恢复,一来会给DB带来巨大的压力,二来从DB拉取数据性能较低会导致应用程序响应变慢。因此,Redi ...
-
【Redis】| 总结/Edison Zhou1Redis 6.0我们经常说Redis是高性能的单线程应用处理,但是Redis 6.0开始,它变成了多线程。那么,Redis 6.0到底是真多线程 还是 伪多线程呢?今天我们来看看Redis 6.0的新特性。2新特 ...
-
【Redis】| 总结/Edison Zhou1Redis的单线程认知一个基本事实我们通常说的Redis单线程,主要是指:Redis 6.0 之前版本的 网络I/O 和 键值对读写 是由一个线程来完成的。除了网络I/O 和 键值对读写 之外的其他功 ...
-
【Redis】| 总结/Edison Zhou1保证并发访问的方法在Redis中存在一些“读取-修改-写回”的操作流程(Read-Modify-Write, RMW),并发的RMW操作可能会导致数据错误,因此Redis提供了两种保证并发访问正确性的方法: ...
-
【Redis】| 总结/Edison Zhou1秒杀场景的系统支撑要求在Redis中的应用场景,秒杀场景是一个经典的应用场景,相信大家或多或少都在使用Redis支撑不同量级的秒杀应用。那么,秒杀场景到底具有什么特征呢?特征1:瞬 ...
-
【Redis】| 总结/Edison Zhou1设置多大的缓存容量合适?容量规划不能一概而论,是需要结合应用数据实际访问特征和成本开销来综合考虑的。一般来说,建议把缓存容量设置为总数据量的 15% 到 30%,兼顾访问性能和内 ...
-
【Redis】| 总结/Edison Zhou1集合的应用场景在很多业务场景中,一个key可能对应了一个数据集合,Redis的集合类型非常适合这类场景,比如:统计新增用户数和留存用户数最新评论列表用户签到数网页独立访客量这些典 ...
-
【Redis】| 总结/Edison Zhou1缓存异常问题总览对于Redis来说,使用其作为缓存,一般会碰到的缓存异常问题有以下几类:缓存中的数据和DB不一致缓存雪崩缓存击穿缓存穿透2缓存数据和DB不一致问题数据不一致问题定义 ...
-
【Redis】| 总结/Edison Zhou0写在开头作为Key/Value键值数据库,Redis的应用非常广泛。在之前多年的工作生涯中,我也只是关注了零散的技术点,没有对Redis建立起一套整体观,但只有建立了系统整体观,才能更好地定 ...
-
【Redis】| 总结/Edison Zhou1上一篇的遗留问题上一篇总结了一个KV数据库的基本架构 和 Redis的底层数据结构概览,重点总结了Sorted Set的两个数据结构的切换,但没有介绍List的两个数据结构的切换,因此本文试着总 ...
-
【精选转载】| 作者/阿里云MVP社区快狗打车CTO沈剑的直播分享文字总结分享与你!---沈剑,公众号“架构师之路”的作者,曾任百度高级工程师和58同城高级架构师、技术委员会主席、技术学院优秀讲师,现为到家集团技 ...
-
这是张队在腾讯云+社区社区做的分享,题目为《基于Kubernetes 构建.NET Core技术中台》,下面是演讲内容的视频://v.qq.com/txp/iframe/player.html?origin=https%3A%2F%2Fmp.weixin.qq.com&containerId=js_tx_vide ...
-
【NoSQL】| 总结/Edison Zhou---前面我们学习了在MongoDB中如何使用索引来提高查询效率,本篇我们开始进入事务管理部分,首先我们来看看写操作事务。1writeConcern详解通过前面的介绍,我们了解了如何搭建一个Mongo ...
-
【NoSQL】| 总结/Edison Zhou---前面我们学习了模型设计中的内嵌模式与引用模式的使用,本篇我们来看看在模型设计中如何套用常见的设计模式来降低设计难度,提高查询效率。1MongoDB也有设计模式?在使用C#/Java等开 ...
-
【NoSQL】| 总结/Edison Zhou---前面我们学习了MongoDB的基本查询命令操作,作为后端开发的我们大部分场景都是在应用程序中和MongoDB进行交互,因此本篇我们来学习一下如何在ASP.NET Core中集成MongoDB。1配置Mongo ...
-
【Redis】| 总结/Edison Zhou1String并不适合所有场景对于我们在实际应用中来说,大部分场景下我们都会选择“万金油”的String来保存各种键值对,特别是“单值”场景,即一个键对应一个具体的值(而不是一个集合) ...
-
去年9月初去了川西的稻城亚丁,体会了金色世界秋日童话,还写了一篇游记《从你的全世界路过一群程序员的稻城亚丁游记》,也是得到了很多朋友和童鞋的点赞。今年11月初趁着周末的两天时间和朋友去了川西的四姑娘山, ...
-
前言在上一篇《Kubernetes网络三部曲~Service网络》中,波波讲解了K8s的4层网络栈中的第2层Service网路。有了Service网络,K8s集群内的应用可以通过服务名/ClusterIP进行统一寻址和访问,而不需要关心应用集群中到 ...
-
【Blazor】| 总结/Edison Zhou---大家好,我是Edison。今天是2023年的最后一天,让我以这篇推文作为2023年的结束吧!在上一篇我们学习了Blazor和JavaScript的互操作性,这一篇我们了解下如何创建和使用Razor类库。 ...
-
【Blazor】| 来源:互联网---大家好,我是Edison。在Blazor推出之时的2020年,有人发布了这么一篇文章《Blazor vs JavaScript:谁会成为前端应用的首选框架?》,它将Blazor与JavaScript进行了全方位的比较,这里我 ...
-
【Blazor】| 总结/Edison Zhou---大家好,我是Edison。为了实现一个Web应用系统,需要有个看起来不丑的UI,而对于.NET程序员来说要做全栈开发还是有点难,而本篇介绍的这个UI组件库正好可以帮助我们解决这个问题! ...
-
Photo :庆余年(第一季)文 | Edison Zhou最近,《庆余年》这部电视剧应该是火遍了朋友圈,腾讯和爱奇艺搞的VVIP模式也是让大家累觉不爱,纷纷转入46集的盗版阵容。上周末两天,作为屌丝腾讯视频VIP的我也开始了 ...
-
【数据库技术】| 作者 / Edison Zhou这是恰童鞋骚年的第169篇原创文章---《Microsoft SQL Server 2008技术内幕:T-SQL语言基础》是一本关于T-SQL方面的好书,可能现在我们在京东上都买不到了,我也是在2014年在淘 ...
-
更新记录:-- 2019-11-16 增加Docker容器监控系列文章// 此外,今天是11月17日,我又老了一岁,祝我自己生日快乐!---近期在学习Kubernetes,基于之前做笔记的习惯,已经写了一部分文章,因此给自己立一个flag:完 ...
-
【Redis】| 总结/Edison Zhou---Redis核心技术与实战学习总结到此结束,Edison整理了一份目录索引,希望对你有帮助。1Redis学习路径在《Redis核心技术与实战》课程的学习中,我经常看到一位课代表的发言,他就是Ka ...