自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Innodb与MyIASM引擎

Innodb与MyIASM引擎一、 区别1、事务innodb支持事务,myiasm不支持事务2、锁机制innodb支持行锁,myiasm支持表锁3、SELECT UPDATE,INSERT,Delete操作innodb: 大量insert、update;myiasm:大量select时选择MyISAM适合查询以及插入为主的应用,InnoDB适合频繁修改以及涉及到安全性较高的应用4、count()行数select count() from table,MyISAM只要简单的读出保存

2022-01-22 16:08:04 689

原创 docker创建内部网络时产生冲突的解决方法

Docker 创建内部网络的时候network报:Error response from daemon: Pool overlaps with other one on this address space1、查看docker网卡 docker network ls2、查看具体信息,找到冲突的网卡 docker network inspect <网卡id>3、 删除冲突的网卡 docker network rm <网卡id>4、如果不想删除网卡,换一个网段

2021-12-21 14:38:30 1498

原创 shell脚本备份与还原mysql

同步正式环境7天前的数据用到的命令定时任务: 设置:crontab -e 查看 crontab -l 删除全部:crontab -r(警惕)脚本检测 bash -n xxx.sh || sh -n xxx.sh脚本跟踪调试 bash -vx xxx.sh || sh -vx xxx.sh脚本执行 bash xxx.sh || sh xxx.sh执行sql脚本1、 进入命令行mysql –u用户名 –p密码 –D数据库< sql脚本路径示例

2021-11-11 15:02:56 1181

转载 【RabbitMQ】消息可靠投递【下篇】

一、说明上一篇文章里,我们了解了如何保证消息被可靠投递到RabbitMQ的交换机中,但还有一些不完美的地方,试想一下,如果向RabbitMQ服务器发送一条消息,服务器确实也接收到了这条消息,于是给你返回了ACK确认消息,但服务器拿到这条消息一看,找不到路由它的队列,于是就把它丢进了垃圾桶,emmm,我猜应该属于可回收垃圾。二、如何让消息可靠投递到队列  如果你对上面的描述还不是很清楚,那我再用代码来说明一次。  在仅开启了生产者确认机制的情况下,交换机接收到消息后,会直接给消息生产者发送确认消息,

2021-05-28 11:23:22 642

转载 【RabbitMQ】消息可靠投递【上篇】

一、说明前几天,突然发生线上报警,钉钉连发了好几条消息,一看是RabbitMQ相关的消息,心头一紧,难道翻车了?[橙色报警] 应用[xxx]在[08-15 16:36:04]发生[错误日志异常],alertId=[xxx]。由[org.springframework.amqp.rabbit.listener.BlockingQueueConsumer:start:620]触发。应用xxx 可能原因如下服务名为: 异常为:org.springframework.amqp.rabbit.listene

2021-05-28 11:09:22 233

转载 一文带你搞定RabbitMQ延迟队列

一、说明在上一篇中,介绍了RabbitMQ中的死信队列是什么,何时使用以及如何使用RabbitMQ的死信队列。相信通过上一篇的学习,对于死信队列已经有了更多的了解,这一篇的内容也跟死信队列息息相关,如果你还不了解死信队列,那么建议你先进行上一篇文章的阅读。这一篇里,我们将继续介绍RabbitMQ的高级特性,通过本篇的学习,你将收获:什么是延时队列延时队列使用场景RabbitMQ中的TTL如何利用RabbitMQ来实现延时队列二、本文大纲以下是本文大纲:本文阅读前,需要对RabbitM

2021-05-26 17:40:53 153

转载 一文带你搞定RabbitMQ死信队列

一、说明RabbitMQ是流行的开源消息队列系统,使用erlang语言开发,由于其社区活跃度高,维护更新较快,性能稳定,深得很多企业的欢心(当然,也包括我现在所在公司【手动滑稽】)。为了保证订单业务的消息数据不丢失,需要使用到RabbitMQ的死信队列机制,当消息消费发生异常时,将消息投入死信队列中。但由于对死信队列的概念及配置不熟悉,导致曾一度陷入百度的汪洋大海,无法自拔,很多文章都看起来可行,但是实际上却并不能帮我解决实际问题。最终,在官网文档中找到了我想要的答案,通过官网文档的学习,才发现对于死信

2021-05-26 15:11:50 343

转载 分布式锁-快速实战

目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题就存在问题,解决方案分布式锁。下面介绍两种首先分布式锁的方案:1、基于Spring Integration实现分布式锁2、基于redisson实现分布式锁优缺点:第一种引入简单,使用方便,但只支持重入锁。第二种较第一种麻烦一点点,但支持重入锁、公平锁、读锁、写锁等多种类型。第一种方案:提供的全局锁目前为以下存储提供了实现GemfireJDBCRedisZookeeper因为第二种方案基于redis存储,为了方便该方案

2021-04-21 15:27:47 108

转载 Redis-缓存穿透、缓存雪崩、缓存击穿等

1、缓存流程程序在处理请求时,会先从缓存中进行查询,如果缓存中没有对应的key,则会从数据库中查询,如果查询到结果,并将查询结果添加到缓存中去,反之不缓存。流程就不多解释了,基于这个我们展开下面的问题。2、缓存穿透2.1 原因当查询一个一定不存在的key时,由于不能命中缓存,所以要查询数据库,但是这个key又不存在,所以查询不到结果,不会缓存。于是就有了利用这种一定不存在的key作为查询条件,对系统进行攻击,增加数据库压力,这种现象称为缓存穿透。解决方法1、布隆过滤首先要规范key的命名,对

2021-04-21 15:05:25 107

转载 Redis的高可用:哨兵和集群

Redis的高可用在Redis中,缓存的高可用分两种,一种是哨兵,另外一种是集群,下面我们会用两节分别讨论它们。不过在讨论它们之前,需要引入对Redis的依赖,如代码清单16-1所示。引入spring-boot-redis依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artif.

2021-04-21 14:44:19 189

转载 Redis主从哨兵与集群介绍及实现

什么是Redisredis是非关系型、开源,支持水平扩展的NoSQL数据库,基于key-value存储,提供海量的数据访问,支持数据持久化(RDB、AOF模式),可用来做分布式缓存中间件。采用单线程模型使的线程安全且性能瓶颈不束于cpu,避免了不必要的上下文切换和竞争条件,同时它是非阻塞的,采用epoll作为I/O多路复用技术的实现。RDB模式:就是每隔一段时间,定时保存,有点像MySQL中进程用到的mysqldump默认redis就是开启RDB的优势每隔一段时间,全量备份灾备简单,dump.

2021-04-21 14:24:07 134

原创 docker安装nginx

使用docker安装nginx目录一、获取nginx镜像二、创建nginx容器如何修改nginx的配置文件方式一:每次都进入到nginx容器内部修改方式二:将nginx容器内部配置文件挂载到主机一、获取nginx镜像1.使用docker search nginx命令获取nginx镜像列表2.使用docker pull nginx命令拉取nginx镜像到本地,此处我们获取排名第一的是官方最新镜像,其它版本可以去DockerHub查询3.使用docker images nginx命令,查看我

2021-04-01 13:46:10 85

原创 Linux下安装lrzsz

1、使用yum安装yum -y install lrzsz2、手动1、安装包:wget https://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz2、cd /usr/local/3、mkdir lrzsz4、cd lrzsz/5、解压:tar -xvf lrzsz-0.12.20.tar.gz6、cd lrzsz-0.12.207、执行配置:./configure会提示 configure: error: no acceptable cc foun

2021-03-22 16:22:42 75

转载 linux 安装docker

1、安装环境此处在Centos7进行安装,可以使用以下命令查看CentOS版本lsb_release -a在 CentOS 7安装docker要求系统为64位、系统内核版本为 3.10 以上,可以使用以下命令查看uname -r2、用yum源安装2.1 查看是否已安装docker列表yum list installed | grep docker2.2 安装dockeryum -y install docker-y表示不询问安装,直到安装成功,安装完后再次查看安装列表2.3 启动doc

2021-03-22 16:10:24 91

原创 centOS7\centOS6 防火墙设置与端口开放的方法

centOS7:firewalld:防火墙开启某端口:firewall-cmd --zone=public --add-port=8888/tcp --permanent防火墙关闭某端口:firewall-cmd --zone=public --remove-port=8888/tcp --permanent防火墙查看某个端口状态:firewall-cmd --query-port=8888/tcp查看已经开放的端口:firewall-cmd --list-ports

2021-03-20 15:39:18 1615

转载 理解channel

.proads-space html{line-height:1.15;-webkit-text-size-adjust:100%}.proads-space body{margin:0}.proads-space main{display:block}.proads-space h1{font-size:2em;margin:.67em 0}.proads-space hr{box-sizing:content-box;height:0;overflow:vis...

2021-03-20 15:32:04 270

转载 Spring计时器StopWatch使用

转载:原文链接StopWatch是位于org.springframework.util包下的一个工具类,通过它可方便的对程序部分代码进行计时(ms级别),适用于同步单线程代码块。 正常情况下,我们如果需要看某段代码的执行耗时,会通过如下的方式进行查看:public static void main(String[] args) throws InterruptedException { StopWatchTest.test0();// StopWatchTest.test1(

2021-03-20 13:38:53 104

原创 企业微信回调配置

1、配置配置回调服务,需要有三个配置项,分别是:URL, Token, EncodingAESKey。URL :需要以https:// 开头,因为我们是http的,所以需要去nginx里面配置proxy_pass代理转发,例如:(注意路径)Token用于计算签名,EncodingAESKey用于消息内容加密,都是在企业微信后台配置的,可以填写在配置文件里,到时候要用就直接获取配置文件里的内容。后台的配置如下:(注意获取完Token和EncodingAESKey需要点击确定保存)配置白名单:

2021-03-20 13:13:15 3293

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除