分布式 事务 模式saga

2_策略模式

1 简介 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换 2 使用策略模式计算奖金 以年终奖的计算为例 公司的年终奖是根据员工的工资基数和年底绩效情况来发放的。你负责编写代码来给财务计算员工的年终奖 1. 代码实现 /** * caculateBonus 计算每个人的奖金数额 * @ ......
策略 模式

3_代理模式

1 简介 为一个对象提供一个代用品或占位符,以便控制对它的访问 应用:明星都有经纪人作为代理 关键:当客户不方便直接访问一个对象或不满足需求时,提供一个替身对象来控制对这个对象的访问,实际上访问的是替身对象 2 例子 -- 小明追mm的故事 1. 不使用代理 class Flower {} let ......
模式

6_命令模式

1 命令模式的用途 应用场景: 有时需要向某些对象发送请求, 但是并不知道请求的接收者是谁, 也不知道被请求的操作是什么 此时希望用一种松耦合的方式来设计程序,使得请求发送者和请求接收者能够消除彼此之间的耦合关系 订餐 命令模式将客人订餐的请求(订单)封装成 command 对象 订单从服务员手中传 ......
命令 模式

7_组合模式

1 简介 用小的子对象来构建更大的对象,而这些小的子对象本身也许是由更小的“孙对象”构成的 回顾宏命令 marcoCommand 被称为组合对象 closeDoorCommand、openPcCommand、openQQCommand 都是叶对象 marcoCommand 的 execute 并不执 ......
模式

13_状态模式

1 初识状态模式 关键:区分事物内部的状态 事物内部的状态改变往往会带来行为改变 有一个电灯,电灯上面只有一个开关 当电灯开着的时候,此时按下开关,电灯会切换到关闭状态 再按一次开关,电灯又将被打开 同一个开关按钮,在不同的状态下,表现出来的行为是不一样的 1.1 电灯程序 1. 定义Light类 ......
状态 模式 13

1_单例模式

1 简介 保证一个类仅有一个实例,并提供一个访问它的全局访问点 线程池、全局缓存、浏览器中的window对象 2 实现单例模式 思路:用一个变量来标志当前是否已为某个类创建过对象,是则在下一次获取该类的实例时直接返回之前创建的对象 function Singleton(name) { this.na ......
模式

4_迭代器模式

1 简介 提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示 jQuery 中的迭代器 $.each([1, 2, 3], (i, n) => { console.log('当前下标:' + i) console.log('当前值:' + n) }) 2 实现自己的迭代器 ......
模式

5_发布订阅模式

1 简介 作为一种优秀的设计模式,发布订阅者模式被广泛应用在前端领域 eg: 在 vue 的源码中,为了让数据劫持和视图驱动解耦 就是通过架设一层消息管理层实现的,而这一层消息管理层实现的原理就是发布订阅模式 现在举个现实中的例子来感受一下:你看上了一套房,到了售楼处被告知该楼盘的房子早已售罄。然后 ......
模式

8_模板方法模式

1 模板方法模式的定义和组成 1.1 定义: 基于继承的设计模式 1.2 组成 1. 抽象父类 封装了子类的算法框架 公共方法 封装子类中所有方法的执行顺序 2. 具体的实现子类 2 第一个例子 -- Coffee or Tea 2.1 先泡一杯咖啡 class Coffee { construct ......
模板 模式 方法

9_享元模式

1 初识享元模式 用于性能优化的模式 运用共享技术来有效支持大量细粒度的对象 获取内衣广告图片 内衣工厂,目前的产品有50种男士内衣和50种女士内衣,各有50个模特做展示拍照片 class Modal { constructor(sex, underwear) { this.sex = sex th ......
模式

10_职责链模式

1 现实中的职责链模式 中学时代的期末考试,如果你平时不太老实,考试时就会被安排在第一个位置。遇到不会答的题目,就把题目编号写在小纸条上往后传递,坐在后面的同学如果也不会答,他就会把这张小纸条继续递给他后面的人。 优点:请求发送者只需要知道链中的第一个节点,从而弱化了发送者和一组接收者之间的强联系 ......
职责 模式 10

12_装饰者模式

1 简介 为对象动态增加职责:不改变对象自身的基础上,在程序运行期间给对象动态地添加职责 2 模拟传统面向对象语言的装饰者模式 编写一个飞机大战的游戏,随着经验值的增加,操作的飞行对象可以升级成为更厉害的飞机 2.1 原始飞机类 class Plane { constructor() {} fire ......
模式 12

14_适配器模式

1 简介 作用:解决两个软件实体间的接口不兼容的问题 现实中的适配器 港式插头转换器 电源适配器 USB 转接口 2 应用 亡羊补牢 渲染广东省地图 从第三方资源里获得了广东省的所有城市以及它们所对应的 ID,并且成功地渲染到页面中 let guangdongCity = [ { name: 'sh ......
适配器 模式 14

playwright中常用的几种方法(同步模式下)

playwright中常用的几种方法(同步模式下) 简单介绍 在 Python 环境下,Playwright 提供了比较完善的同步 API,开发者可以根据自己的喜好来选择使用异步 API 还是同步 API。以下是介绍 Playwright 常用同步方法的介绍。 具体方法 1. page.goto(u ......
playwright 常用 模式 方法

Java设计模式-代理模式

简介 代理模式是一种结构型设计模式,它可以让我们通过一个代理对象来访问一个真实的目标对象,从而实现对目标对象的功能扩展或保护。代理模式的主要角色有三个: 抽象主题(Subject):定义了真实主题和代理主题的公共接口,使得在任何使用真实主题的地方都可以使用代理主题。 真实主题(RealSubject ......
模式 设计模式 Java

工厂模式

#include <iostream> #include <string> using namespace std; class ExportFileApi { public: virtual bool exportData(string data) = 0; protected: ExportFi ......
工厂 模式

一文搞懂事务四大特性、隔离级别、传播机制

事务四大特性、隔离级别、传播机制 事务四大特性(ACID) 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: 原子性(Atomic) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响 ......
特性 级别 机制 事务

django中ORM开启事务

django中ORM开启事务 一、全局开启 ATOMIC_REQUESTS设置为True,每个请求过来时,Django会在调用视图方法前开启一个事务。如果请求正确处理并正确返回了结果,Django就会提交该事务,否则,Django会回滚该事务。 DATABASES = { 'default': { ......
事务 django ORM

谈一谈如何使用etcd中的事务以及自己的理解

01、谈一谈etcd事务的如何使用以及自己的理解 本文内容来源于自己学习时所做的记录,主要来源于文章最后的参考链接,如有侵权,请联系删除,谢谢! etcd 是一个 key/value 类型的数据库。既然我们需要存储数据,必然会面临这样一个需求,即希望无论什么样的场景下,一组操作要么同时完成,要么都失 ......
事务 etcd

【深入浅出 Yarn 架构与实现】6-3 NodeManager 分布式缓存

不要跳过这部分知识,对了解 NodeManager 本地目录结构,和熟悉 Container 启动流程有帮助。 一、分布式缓存介绍 主要作用就是将用户应用程序执行时,所需的外部文件资源下载缓存到各个节点。 YARN 分布式缓存工作流程如下: 客户端将应用程序所需的文件资源 (外部字典、JAR 包、二 ......

Hadoop的运行模式

Hadoop官方网站 http://hadoop.apache.org/ Hadoop运行模式 本地模式:单机运行,只是用来演示一下官方案例。生产环境不用。 伪分布式模式:也是单机运行,但是具备Hadoop集群的所有功能,一台服务器模拟一个分布式的环境。个别缺钱的公司用来测试,生产环境不用。 完全分 ......
模式 Hadoop

7.5 正态分布

基础知识 正态分布的概念 若连续型随机变量$\xi$的概率密度函数为 $f(x)=\dfrac{1}{\sigma \sqrt{2 \pi}} e^{-\dfrac{(x-\mu)^2}{2 \sigma^2}}, x \in(-\infty,+\infty)$, 其中$\sigma$,$\mu$为 ......
正态分布 7.5

spring事务传播的Propagation.REQUIRES_NEW以及NEVER MANDATORY验证,及其失效的诡异问题

NEVER 不使用事务,如果当前事务存在,则抛出异常 验证: @Service public class PrService { @Autowired PrDao dao; @Transactional public void savea() { dao.a();//保存第一条数据 saveb(); ......

Python设计模式面试题

单例模式 1请手写一个单例 #encoding=utf8 import threading import time #这里使用方法__new__来实现单例模式 class Singleton(object):#抽象单例 def __new__(cls, *args, **kw): if not ha ......
设计模式 模式 Python

事务隔离机制

一 事务隔离机制/级别介绍 事务具有原子性、一致性、隔离性、持久性四大特性,而隔离性顾名思义指的就是事务彼此之间隔离开,多个事务在同时处理一个数据时彼此之间互相不影响,如如果隔离的不够好就有可能会产生脏读、不可重复度、幻读等读现象,为此,隔离性总共分为四种级别 由低到高依次为Read uncommi ......
机制 事务

事务的redo与undo

MySQL事务中的redo与undo 一 前言 众所周知InnoDB 是一个事务性的存储引擎,在上一小节我们提到事务有4种特性:原子性、一致性、隔离性和持久性,在事务中的操作,要么全部执行,要么全部不做,这就是事务的目的。 那么事务的四种特性到底是基于什么机制实现呢??? 1、事务的原子性、隔离性由 ......
事务 redo undo

2023.5.8 单例设计模式

单例设计模式 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问, ......
设计模式 模式 2023

7.2 随机变量及其分布

基础知识 随机变量 ① 概念 一般地,对于随机试验样本空间$Ω$中每个样本点$ω$,都有唯一的实数$X(ω)$与之对应,我们称$X$为随机变量. ② 分类 随机变量分为离散型随机变量与连续型随机变量. ** 【例】**投掷一个骰子,得到的点数为$X$,它是离散型随机变量,能够一一列举出来;一人一天摄 ......
变量 7.2

2023.5.8 设计模式简介

1,设计模式概述 1.1 软件设计模式的产生背景 "设计模式"最初并不是出现在软件设计中,而是被用于建筑领域的设计中。 1977年美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心主任克里斯托夫·亚历山大(Christopher Alexander)在他的著作《建筑模式语言:城镇、建筑、构造》中 ......
设计模式 模式 简介 2023

第六节:受控 、高阶组件、portals、fragment、严格模式、动画

一. 受控组件 二. 高阶组件 三. portals 四. fragment 五. 严格模式 六. 动画 ! 作 者 : Yaopengfei(姚鹏飞) 博客地址 : http://www.cnblogs.com/yaopengfei/ 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。 声 明2 ......
高阶 组件 fragment portals 模式