promise时效架构升级方案的实施及落地
重构有利于项目的健壮和精简,平时要养成重构的好习惯,“小步快走”,尽量避免留着统一重构的思想,积累很多技术债后重构精力、时间成本很大,风险也会大很多 ...阅读全文
重构有利于项目的健壮和精简,平时要养成重构的好习惯,“小步快走”,尽量避免留着统一重构的思想,积累很多技术债后重构精力、时间成本很大,风险也会大很多 ...阅读全文
基本介绍: 命令模式,顾名思义就是将命令抽象化,然后将请求者和接收者通过命令进行绑定。 而命令的请求者只管下达命令,命令的接收者只管执行命令。 从而实现了解耦,请求者和接受者二者相对独立。 单独理解起来比较困难,咱们还是通过具体实例来说明吧。 举例说明: 生活中遥控控制电器就是命令模式,比如智能开关 ...阅读全文
需求落地分布式应用服务 将需求转化为分布式应用服务的过程可以按照以下步骤进行: 理解需求:首先,你需要仔细阅读和理解业务需求。与相关的利益相关者(如业务分析师、产品经理等)进行沟通,确保你对需求的理解是准确的。 设计架构:根据需求,设计一个适合的分布式应用架构。这包括确定应用的组件和模块,以及它们之 ...阅读全文
趁着双十一备战封板,终于又有一些时间可以梳理一下最近的心得。最近这半年跟同事讨论比较多的是分层架构,然后就会遇到两个触及灵魂的问题,一个是如何做好分层架构,二是DDD在架构层面该如何落地。 ...阅读全文
一、定义 给某一个对象提供一个代理或占位符,并由代理对象控制对原对象的访问。代理模式是一种结构型模式。 二、描述 代理模式的结构比较简单,其核心是代理类,为了让客户端能够一致性地对待真实对象和代理对象,在代理模式中引入了抽象层。包含以下三个角色: 1、Subject(抽象主题角色):它声明真实主题和 ...阅读全文
基础介绍: 将抽象部分与它的实现部分分离,使它们都可以独立地变化。适用于不希望在抽象和实现部分之间有固定的绑定关系的情况,或者类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充的情况。 将抽象部分与实现部分分离,使它们都可以独立地变化。 其实两个都是抽象的部分,更准确的说,是将一个事物中多个维 ...阅读全文
清晰架构原则对于任何希望创建健壮、可维护和可扩展软件的软件开发者来说都至关重要。理解并实施这些概念可以显著提升你的编程技能。以下是对20个基本架构洞见的深入探讨:依赖规则: 清晰架构的核心是依赖规则。它规定源代码的依赖关系应始终指向内部。这种内向的方向确保了一个具有弹性的基础,强调了关注点的分离,并 ...阅读全文
架构目标 高可用性 整体系统可用性最低99.9%,目标99.99%。全年故障时间整个系统不超过500分钟,单个系统故障不超过50分钟。 高可扩展性 系统架构简单清晰,应用系统间耦合低,容易水平扩展,业务功能增改方便快捷。 低成本 增加服务的重用性,提高开发效率,降低人力成本; 最终一致性 服务设计能 ...阅读全文
本文介绍Util应用框架如何记录日志. 日志记录共分4篇,本文是正文,后续还有3篇分别介绍写入不同日志接收器的安装和配置方法. 概述 日志记录对于了解系统执行情况非常重要. Asp.Net Core 抽象了日志基础架构,支持使用日志提供程序进行扩展,提供控制台日志等简单实现. Serilog 是 . ...阅读全文
我们可以采取多种方法对数据架构进行分类,且每种方法都有自己的优缺点。它们可以帮助你做出明智的决定,选择适合与你需求最匹配的设计。两种最流行的基于速度的架构是Lambda和Kappa,本文将介绍基于速度的数据架构,以及它们在总体方案中的位置。 ...阅读全文
基础介绍: 组合模式用于表示部分-整体的层次结构。适用于希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象的情况。 顾名思义,什么叫部分-整体,比如常见的前端UI,一个DIV标签中可以存在多个A标签、P标签、DIV标签等等。 相较于DIV这个容器整体而言,其中所含的A标签、P ...阅读全文
基础介绍: 动态地给一个对象添加一些额外的职责。适用于需要扩展一个类的功能,或给一个类添加多个变化的情况。 装饰器,顾名思义就是在原有基础上添加一些功能。 大家都只知道如果想单纯的给原有类增加一些功能,可以直接继续该类生成一个子类就可以。 举个例子,如果现在有个手机类,想给手机贴膜,传统的做法就是新 ...阅读全文
基础介绍: 想象这样一个场景,原项目中接口返回的数据是XML格式的数据,但现在来了一个新客户,它期望接口返回的数据类型为json格式的。 想要实现要么就是改原有接口,但这样就违反了开闭原则,容易出现未知bug,影响到老客户的正常使用。 而如果写一个适配器类也就是转换类(第三方类),将原本返回的XML ...阅读全文
从接触领域驱动设计的初学阶段,到实现一个旧系统改造到DDD模型,再到按DDD规范落地的3个的项目。对于领域驱动模型设计研发,从开始的各种疑惑到吸收各种先进的理念,目前在技术实施这一块已经基本比较成熟。在既往经验中总结了一些在开发中遇到的技术问题和解决方案进行分享。 ...阅读全文
一、定义 运用共享技术有效地支持大量细粒度对象的复用,享元模式是一种结构型模式。 二、描述 享元模式要求能够共享的对象必须是细粒度对象,因此它又称为轻量级模式。享元模式的结构较为复杂,一般结合工厂模式一起使用,在其结构图中包含了一个享元工厂类,包含以下四个角色: 1、Flyweight(抽象享元类) ...阅读全文
哈喽大家好,我是咸鱼 想必大家都听说过 Instagram ,它是全球最受欢迎的社交媒体平台之一,拥有数十亿的活跃用户 Instagram 诞生于 2010 年,上线一周就坐拥 10 万注册用户,一年之内就拥有了 1400 万用户,可见扩张趋势突飞猛进。 Instagram 诞生的时候只有 3 个工 ...阅读全文
基础介绍: 具体可分为2个角色: Prototype(原型类):声明一个Clone自身的接口; ConcretePrototype(具体原型类):,实现一个Clone自身的操作。 在原型模式中,Prototype通常提供一个包含Clone方法的接口,具体的原型ConcretePrototype使用C ...阅读全文
本节介绍Util应用框架如何进行验证. 概述 验证是业务健壮性的基础. .Net 提供了一套称为 DataAnnotations 数据注解的方法,可以对属性进行一些基本验证,比如必填项验证,长度验证等. Util应用框架使用标准的数据注解作为基础验证,并对自定义验证进行扩展. 基础用法 引用Nuge ...阅读全文
本文介绍了结构型设计模式中的桥接模式,讲解了它的特点和相关构成,并通过相应的案例,使用Java代码进行演示。 ...阅读全文
前言 什么是设计模式? 设计模式是软件设计人员、软件开发人员在程序代码编写中总结出来的一套编码规范,设计模式起一个指导作用,用来指导我们写出高内聚低耦合,具有良好的可扩展性和可维护性的代码。 为什么要学设计模式? 当然,设计模式不是非学不可,不了解设计模式一样可以在工作中写出符合产品要求的功能。但是 ...阅读全文