《架构整洁之道》学习笔记 Part 2 编程范式
计算机编程发展至今,一共只有三个编程范式: - 结构化编程 - 面向对象编程 - 函数式编程 ### 编程范式和软件架构的关系 - 结构化编程是各个模块的算法实现基础 - 多态(面向对象编程)是跨越架构边界的手段 - 函数式编程是规范和限制数据存放位置与访问权限的手段 **软件架构的三大关注重点** ...阅读全文
计算机编程发展至今,一共只有三个编程范式: - 结构化编程 - 面向对象编程 - 函数式编程 ### 编程范式和软件架构的关系 - 结构化编程是各个模块的算法实现基础 - 多态(面向对象编程)是跨越架构边界的手段 - 函数式编程是规范和限制数据存放位置与访问权限的手段 **软件架构的三大关注重点** ...阅读全文
![](https://img2023.cnblogs.com/blog/3076680/202307/3076680-20230713135333820-1976638091.png) # 1. 互连层是可以真正构建高可用性的地方 ## 1.1. 流量管理 ## 1.2. 负载均衡 ## 1.3. ...阅读全文
## 引言 软件开发过程中,我们经常会遇到各种设计问题,例如如何管理对象之间的关系、如何优化代码的可复用性和可维护性等等。为了解决这些问题,我们可以使用设计模式。 设计模式是一种被广泛接受的软件设计思想,它提供了一套通用的解决方案,可以帮助我们更好地解决常见的软件设计问题。设计模式是从实践中总结出来 ...阅读全文
## 引言 软件开发过程中,我们经常会遇到各种设计问题,例如如何管理对象之间的关系、如何优化代码的可复用性和可维护性等等。为了解决这些问题,我们可以使用设计模式。 设计模式是一种被广泛接受的软件设计思想,它提供了一套通用的解决方案,可以帮助我们更好地解决常见的软件设计问题。设计模式是从实践中总结出来 ...阅读全文
本文详细介绍了搭建系统工程架构时需要关注的几个重要方面。基于产品的价值,做出决策。并从系统工程架构的演进、技术方案的选型、系统规范共识的达成等方面入手,对实施过程中的常见问题给出了解决思路。 ...阅读全文
清晰架构是将领域驱动、整洁架构等架构的部分优势整合之后产生的另一种架构,因其2017年已经出现,已经不算是一种新的架构,实际应用的项目尚且较少。以下主要介绍架构的形成及各步骤的意义 ...阅读全文
## 引言 **责任链模式**是一种行为型设计模式,它通过一条由多个处理器组成的链来处理请求,每个处理器都有机会处理请求,如果一个处理器不能处理该请求,它会将请求传递给下一个处理器,直到请求被处理为止。 在实际应用中,责任链模式常用于处理请求的分发、事件处理等场景,它的优点在于可以动态地添加、删除处 ...阅读全文
#### 模板模式的定义 其定义如下: Define the skeleton of an algorithm in an operation,deferring some steps to subclasses.Template Method lets subclasses redefine ce ...阅读全文
## 一:场景 20w的QPS的场景下,服务端架构应如何设计? ## 二:常规解决方案 可使用分布式缓存来抗,比如redis集群,6主6从,主提供读写,从作为备,不提供读写服务。1台平均抗3w并发,还可以抗住,如果QPS达到100w,通过增加redis集群中的机器数量,可以扩展缓存的容量和并发读写能 ...阅读全文
## 引言 **原型模式**是一种创建型设计模式,它允许我们创建一个对象的副本,而不需要显式地使用构造函数来创建一个新的对象。这种模式通常用于创建那些具有复杂创建过程或需要大量资源的对象。 在原型模式中,我们首先定义一个原型接口,该接口包含一个克隆方法。然后我们创建一个原型对象,该对象实现了原型接口 ...阅读全文
![](https://img2023.cnblogs.com/blog/3076680/202307/3076680-20230704152811386-132747394.png) # 1. 记录日志 ## 1.1. 传统的日志文件仍然是最可靠和最灵活的信息载体 ## 1.2. 日志文件反映应用 ...阅读全文
## 引言 **观察者模式**是一种行为型设计模式,它允许对象之间建立一种一对多的关系,使得当一个对象状态改变时,所有依赖它的对象都能够自动得到通知并更新自己的状态。该模式可以帮助我们实现松耦合的系统,以便更好地应对变化和扩展。 在观察者模式中,有两个角色:**观察者**和**被观察者**。被观察者 ...阅读全文
## 引言 **工厂方法模式**是一种创建型设计模式,它定义了一个用于创建对象的接口,但是让子类决定将哪一个类实例化。换句话说,工厂方法模式让一个类的实例化延迟到其子类。 工厂方法模式有以下几个主要角色: - 抽象工厂(AbstractFactory):声明用于创建抽象产品的操作的接口。 - 工厂实 ...阅读全文
## 引言 **抽象工厂模式**一种创建型设计模式,它提供了一种方式来封装一组具有相同主题的工厂,而不必指定它们具体的类。这样,客户端代码就可以使用抽象工厂来创建一组相关的对象,而不必关心实际创建的具体类。 抽象工厂模式有以下几个主要角色: - 抽象工厂(AbstractFactory):声明用于创 ...阅读全文
一、表结构设计 二、实现思路 1.系统启动时将字典数据加载到redis作为可选常量池,以及mapper.xml、dao、数据规则信息加载到redis 2.用访问时通过springmvc拦截器对用户进行拦截获取token然后通过RSA解密获取用户信息,将用户信息,以及请求参数加入本地线程 3.myba ...阅读全文
数字化转型会带来大量的研发需求,如何更好更快的交付这些需求成为一个突出问题,该怎么打造一个平台去解决该问题?能不能用第一性原理思维去推导出发展方向? ...阅读全文
只要将配置信息存放在与源代码不同的存储库中,将其锁好,仅对有权访问的人开放,并且管理员能够根据过程、程序和执行人等授予或撤销对相关配置信息的访问权限,那么配置信息也可以存放在版本控制系统中 ...阅读全文
![](https://img2023.cnblogs.com/blog/3076680/202307/3076680-20230704144741811-1382373830.png) # 1. 术语的定义 ## 1.1. 服务 ### 1.1.1. 指共同协作、以单元的形式对外提供功能的跨机器进 ...阅读全文
![](https://img2023.cnblogs.com/blog/3076680/202307/3076680-20230703164452820-448646113.png) # 1. 物理主机 ## 1.1. 以前数据中心硬件就是建立在单个物理机器的高可靠性上的 ## 1.2. 如今通过 ...阅读全文
![](https://img2023.cnblogs.com/blog/3076680/202307/3076680-20230703163125832-353926546.png) # 1. 面向恢复的计算 ## 1.1. ROC,recovery-oriented computing ## 1 ...阅读全文