高并发场景的分布式事务,我们采用柔性事务+可靠消息+最终一致性方案(异步确保型),可靠性是最重要的,那么如何保证消息的可靠性呢? 一、消息丢失 1、消息发送出去,由于网络问题没有抵达服务器 做好容错方法(try-catch),发送消息可能会网络失败,失败后要有容错机制,可记录到数据库,采用定期扫描重发的方式。 做好日志记录,每个消息状态是否都被服务器收到都应该记录 做好定期重发,如果消息没有发
一、为什么会有分布式事务# 分布式系统经常出现的异常,如机器宕机、网络异常、消息丢失、数据错误、不可靠的TCP、存储数据丢失等等。 二、分布式事务 分布式事务是指事务的参与者,支持事务的服务器,资源服务器分别位于分布式系统的不同节点之上,通常一个分布式事物中会涉及到对多个数据源或业务系统的操作。 典型的分布式事务场景:跨银行转操作就涉及调用两个异地银行服务 三、分布式理论 1、CAP理论 CAP理
3.Seata 3.1.介绍 Seata(Simple Extensible Autonomous Transaction Architecture,简单可扩展自治事务框架)是 2019 年 1 月份蚂蚁金服和阿里巴巴共同开源的分布式事务解决方案。Seata 开源半年左右,目前已经有接近一万 star,社区非常活跃。我们热忱欢迎大家参与到 Seata 社区建设中,一同将 Seata 打造成开源分布
1.3.分布式事务 分布式事务,就是指不是在单个服务或单个数据库架构下,产生的事务: 跨数据源的分布式事务 跨服务的分布式事务 综合情况 1)跨数据源 随着业务数据规模的快速发展,数据量越来越大,单库单表逐渐成为瓶颈。所以我们对数据库进行了水平拆分,将原单库单表拆分成数据库分片,于是就产生了跨数据库事务问题。 2)跨服务 在业务发展初期,“一块大饼”的单业务系统架构,能满足基本的业务需求。但
public class MergePicUtils { /** * 拼接图片(注:图片需长宽一致) * * @param files img1 ,img2 * @param type 1:横向拼接 2:纵向拼接 * @param targetFile 合成新的图片地址 */ public stat
public class Base64ImageUtils { /** * 将网络图片进行Base64位编码 * * @param imageUrl 图片的url路径,如http://.....xx.jpg * @return */ public static String encodeImgageToBase64URL(URL
整合&体验@Cacheable 引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency> <dep
Redisson 缓存一致性
分布式缓存 StringRedisTemplate 缓存使用-缓存击穿、穿透、雪崩
public class EsConstant { //经常用的常量 抽取出来 static是全局的 可以让访问变得很方便,而且不会被修改。一般可以放配置信息,还有一些状态码的定义。 //其他的补充: static修饰的对象是放在引用的根下的,意味着几乎不会被回收 public static final String PRODUCT_INDEX ="produ
导入依赖 导入pom文件 依据自己版本 <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.4
下载安装 到/mydata/elasticsearch/config 下面直接解压ik 之后重启es 测试 post _analyze? { "text":"中华人民共和国", "analyzer":"ik_smart" } { "tokens": [ { &quo
聚合提供了从数据中分组和提取数据的能力。最简单的聚合方法大致等于SQL GROUPBY和SQL聚合函数。在Elasticsearch中, 您有执行搜索返回hits (命中结果),并且同时返回聚合结果,把一个响应中的所有hits (命中结果)分隔开的能力。这是非常强大且有效的,您可以执行查询和多个聚合,并且在一次使用中得到各自的(任何一个的)返回结果,使用次简洁和简化的API来避免网络往返。 聚合
ElasticSearch 全文搜索属于最常见的需求,开源的Elasticsearch 是目前全文搜索引擎的首选。 它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它 https://www.elastic.co/ Elasticsearch: 权威指南 https://www.elastic.co/guide/cn/elasticsearch/g
安装tree yum -y install tree 使用tree命令查看/var/log/的结构 tree /var/log/ 列出目录opt目录结构,只打印2层深度 tree -P opt -L 2
ls -l <文件名> -rw-rw-r-- 一共有10位数,其中: 最前面那个 - 代表的是类型(-文件 d 文件夹) 中间那三个 rw- 代表的是所有者(user) 然后那三个 rw- 代表的是组群(group) 最后那三个 r-- 代表的是其他人(other) 这里再解释一下后面那9位数: r 表示文件可以被读(read) w 表示文件可以被写(write) x 表示文件可以被执
修改master和node节点 vi /usr/lib/systemd/system/docker.service 修改ExecStart为: ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock 重启docker服务 systemctl daemon-reload systemctl re
学习地址 https://blog.csdn.net/qq_23518283/article/details/122193828 https://blog.csdn.net/BThinker/article/details/123688143 创建文件夹 mkdir -p /home/nexus3 chmod 777 /home/nexus3 下载镜像 docker run -d --name n
root123!@# 129.211.172.247 K8S 添加主机名与IP 对应关系 hostnamectl set-hostname <newhostname>:指定新的hostname hostnamectl set-hostname k8s-node1 hostnamectl set-hostname k8s-node2 hostnamectl set-hostname k8
docker 安装nginx docker pull nginx:1.22.0 docker run --name nginx -p 8008:80 -d nginx:1.22.0 mkdir -p /opt/resource/nginx/conf mkdir -p /opt/resource/nginx/log mkdir -p /opt/resource/nginx/html dock
查看空间信息 df -h 查看磁盘信息 lsblk fdisk -l 创建挂载目录 sudo mkdir /data 报错 mount: unknown filesystem type '(null)' 格式化 mkfs.ext4 /dev/vdb 继续挂载
写在前面 portainer 容器管理工具 docker run -d -p 9003:9000 \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ --name prtainer \ docker.io/portainer/portainer 账号 admin qwer1234 root@root:~# j
Linux crontab 定时执行脚本 https://www.runoob.com/linux/linux-comm-crontab.html bash脚本 循环目录下面 并保留原文件的修改时间,访问时间和访问权限。 #!/bin/bash time=`date +%Y%m%d -d "0 day ago"` #echo $time 当前日期 eg 2021062
正向代理 简单说就是跳板 代理服务器【服务器C】替代访问方【用户A】去访问目标服务器【服务器B】 1.访问本无法访问的服务器B;2.加速访问服务器B;3.Cache作用;4.客户端访问授权;5.隐藏访问者的行踪 简单来说,正向代理就是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务
Linux中常用的监控CPU整体性能的工具有 § mpstat: mpstat 不但能查看所有CPU的平均信息,还能查看指定CPU的信息。 § vmstat:只能查看所有CPU的平均信息;查看cpu队列信息; § iostat: 只能查看所有CPU的平均信息。 § sar: 与mpstat 一样,不但能查看CPU的平均信息,还能查看指定CPU的信息。 § top:显示的信息同ps接近,但是
vi 模式下大G 是回到底部 数字+G 到第几行 首页 gg 上一页 ctrl+b 下一页 ctrl+f 解压压缩包 tar.gz tar -xzvf .tar.gz tar -zxvf .tar.gz 压缩 tar.gz tar -czvf xxx.tar.gz xxx tar -zcvf xxx.tar.gz xxx 解压压缩包 tar tar -xvf creditLoan.tar
安装docker 卸载旧版本docke yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine 安装依赖的一些包 sudo yum inst
Nginx 正向代理 正向代理隐藏了客户端client 反向代理 反向代理是指定了特定的网址。其实也就是限定了访问的对象 概念 Nginx转发给网关 负载均衡 Ngixn官方文档 http { upstream myapp1 { server srv1.example.com; server srv2.example.com; se
云容器引擎 CCE> 视频帮助 https://support.huaweicloud.com/cce_video/index.html?utm_source=cce_Growth_map&utm_medium=display&utm_campaign=help_center&utm_content=Growth_map 编写Dockerfile文件 拉取jdk8作为
下载 wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz 解压 tar zxf docker-20.10.9.tgz 转移 mv docker/* /usr/bin ###写入文件 cat >/usr/lib/systemd/system/docker.service <<E
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号