分布式 事务 模式saga
设计模式系列文章
本系列文章介绍常见的设计模式,按照设计模式的类别注意介绍。设计模式一般可分为三种大类型:创建型、结构型,行为型。 - **创建型**:讨论的是如何创建实例,将对象的创建和对象的使用分离。 - 工厂方法 Factory Method - 抽象工厂 Abstract Factory - 建造者 Buil ......
创建型设计模式-建造者 Builder
### 简介 建造者模式可将对象的初始化转变成一步步配置的过程。如当对象的初始化时有很多可选参数,建造者模式可以定制参数实现对象的创建。好处有: 1. 定制对象参数 2. 针对不同参数,做不同的校验,如当设置了三角形的两个边长,设置第三个边时必须满足两边之和大于第三边的条件。 ### 角色 - Bu ......
创建型设计模式-抽象工厂 Abstract Factory
### 简介 拿工厂方法模式作对比,在工厂方法模式中,一个工厂只能创建一种产品,如椅子工厂只能创建椅子。而抽象工厂可以创建一系列产品,如家具工厂可以创建椅子,桌子,床等等。 抽象工厂类负责定义可以创建的抽象产品类,具体工厂编写不同风格(即各自的业务逻辑)的创建产品的过程。 ### 角色 - 抽象工厂 ......
创建型设计模式-工厂方法 Factory Method
### 简介 工厂方法中,每一个具体工厂类都对应创建一个具体产品类,所有具体工厂类都实现抽象工厂,所有具体产品类都实现抽象产品。 抽象工厂定义了创建抽象产品的方法签名,具体工厂类各自实现各自逻辑,来创建具体的产品。 ### 角色 - 抽象工厂 Abstract Factory 定义创建产品的方法签名 ......
4.端口模式与端口聚合
## 端口模式 ### 端口的自协商与强制 自动协商模式是端口根据另一端设备的连接速度和双工模式,自动把它的速度调节到最高的公共水平,即线路两端能具有的最快速度和双工模式。 自动协商的内容主要包括双工模式、运行速率、流控等内容,一旦协商通过,链路两端的设备就锁定在这样一种运行模式下。 自协商功能允许 ......
pytorch分布式训练报错:Duplicate GPU detected : rank 1 and rank 0 both on CUDA device 35000
之前使用的比较老的torch 1.8.1,换到torch 2.0后报错 "rank 1 and rank 0 both on CUDA device 35000" 将main函数开头部分的初始化 ```python distributed.init_process_group(backend='nc ......
【原创】基于QT编写的支持IPv4/IPv6双协议栈,TCP/UDP双模式,DLL内存加载的模块化远控木马
本人已经本科毕业一年有余,在平常实习过程中,发现大佬都对我的本科毕设--双协议栈远控木马感兴趣。 据我所知,目前流行的C2远控软件 中,MSF支持IPv4和IPv6,但是MSF生成的单个木马只是支持其中的一种协议,而不是双协议栈。Cobalt Strike目前尚无IPv6的使用案例。其他支持双协议栈 ......
事务理论 - ACID
> 事务的四个基本特性: Atomicity(原子性):事务是一个不可分割的整体,事务内所有操作要么全做成功,要么全失败。Consistency(一致性):务执行前后,数据从一个状态到另一个状态必须是一致的(A向B转账,不能出现A扣了钱,B却没收到)。Isolation(隔离性): 多个并发事务之间 ......
分布式理论 - BASE
> BASE是“Basically Available, Soft state, Eventually consistent(基本可用、软状态、最终一致性)”的首字母缩写。其中的软状态和最终一致性这两种技巧擅于对付存在分区的场合,并因此提高了可用性。 # 什么是BASE > eBay 的架构师 Da ......
分布式理论 - CAP
> CAP理论是分布式系统、特别是分布式存储领域中被讨论的最多的理论。其中C代表一致性 (Consistency),A代表可用性 (Availability),P代表分区容错性 (Partition tolerance)。CAP理论告诉我们C、A、P三者不能同时满足,最多只能满足其中两个。 # CA ......
事件总线(发布订阅者模式)
点击查看代码 ``` class EventEmitter { constructor() { this.cache = {} } on(name, fn) { if (this.cache[name]) { this.cache[name].push(fn) } else { this.cache ......
redis分布式锁幂等性问题
一.与Transcational注解同时使用 如果是自定义的切面,切面类要加@Order(Ordered.HIGHEST_PRECEDENCE), 保证redis锁的切面在事务切面外面,让事务先提交,再释放redis锁。 二.日期字段是datetime 背景:jmeter 500并发测试接口出现重复 ......
【23种设计模式】桥接模式(七)
## 前言 【**桥接模式**】是【**结构型**】设计模式的第二个模式,也有叫【桥模式】的,英文名称:**Bridge Pattern**。 大家第一次看到这个名称会想到什么呢?我第一次看到这个模式根据名称猜肯定是连接什么东西的。因为桥在我们现实生活中经常是连接着A地和B地,再往后来发展,桥引申为 ......
解耦---组件模式
优点: 1、代码复用,对比。 2、通过使用组件容器对象,可以降低组件之间得耦合。 缺点: 1、组件之间通信比较复杂。 组件之间通信方式: 1、组件容器对象保存组件需要的状态 优点:组件之间可以直接从容器对象获取所需要的数据,降低组件之间的耦合 缺点:当使用相同的组件容器,但是使用不同的组件配置,并且 ......
Web前端设计模式
- [CSS Modules](https://github.com/css-modules) : A CSS Module is a CSS file in which all class names and animation names are scoped locally by defaul ......
C++实现一个简易的生产者消费者模式
1 #include <bits/stdc++.h> 2 #include <mutex> 3 using namespace std; 4 #define maxn 10 5 mutex m; 6 condition_variable full_con; //缓冲池已满,让full_con等待 7 ......
思科无线:将⼀个AP转换为ME模式(思科 Mobility Express、内嵌在AP上的无线控制器 )
(转)思科无线:将⼀个AP转换为ME模式(思科 Mobility Express、内嵌在AP上的无线控制器 ) 将⼀个AP转换为ME模式 思科 Mobility Express 概述 (内嵌在AP上的无线控制器功能)这是一种嵌入在思科 Aironet® 1560、1815W、1815I、1830、1 ......
4分布数据库系统
全局外模式 全局概念模式 分片模式 分布模式 局部概念模式 局部内模式 局部数据库 分布透明性 分片透明性:分不分片,用户感受不到:水平分片、垂直分片、混合分片 位置透明性:数据存放在哪里,用户不用管 局部数据模型透明性(逻辑透明):用户不用关系局部数据模型 分布式数据库管理系统组成 LDBMS G ......
Java实现多种单例模式
```java package com.java3y.austin.test.Mode; import java.util.HashSet; import java.util.concurrent.atomic.AtomicBoolean; // 饿汉式单例 class Singleton1 { p ......
单例设计模式
### 单例设计模式 #### 基本介绍 类的单例设计模式,就是采取一定的方式保证在整个的软件系统中,对某个类只能有一个对象实例存在,且类提供一个静态方法,用以获取该对象。 例如Hibernate的SessionFactory,它是sql会话工厂,这个对象一定是很重的(创建需要加载很多资源和时间), ......
分布式锁
## 1.是什么 一个方法或属性在高并发情况下的同一时间只能被同一个线程执行,在传统单体应用单机部署的情况下,可以使用并发处理相关的功能进行互斥控制。但是,随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下的并发 ......
关于XXLJOB集群模式下调度失败的问题
xxljob在集群模式下调度高频任务时,有时会出现调度失败的问题,具体报错如下: java.io.EOFException: HttpConnectionOverHTTP@6be8bf0c(l:/10.48.2.64:38538 <-> r:/10.48.1.125:18989,closed=fal ......