自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

玉楼春秋的博客

我就知道你在偷看我~

  • 博客(56)
  • 资源 (3)
  • 收藏
  • 关注

原创 GCC生成动态链接库(.so文件):-shared和-fPIC选项

http://c.biancheng.net/view/2385.html

2021-11-21 16:04:40 946

原创 windows环境同时配置github | gitee | gitlab

1. 清除 git 的全局设置(针对已安装 git)新安装 git 则跳过。如果不确定当前电脑是否安装过,可以用 git config --global --list 进行查看你是否设置查看配置列表git config --global --list$ git config --global user.name "你的名字"$ git config --global user.email "你的邮箱"必须删除该全局设置$ git config --global --unset

2021-06-06 14:35:06 292

原创 RedisTemplate Serializer在springboot中使用默认序列化方式引起的问题

1.背景spring boot中使用redis,默认使用JdkSerializationRedisSerializer来序列化,但是默认的序列化会有个问题:java端存完了,取redis-cli执行:key * ,会发现键值都带有\xAC\xED\x00\x05t\x00\x05这种字符,这如果在集群环境下会导致问题!2.实践测试 @Test public void testSerializer(){ String stringRedisTemplateName =

2021-04-27 17:00:20 3871

原创 Redis数据淘汰策略 LFU深入分析 (三)

Redis数据淘汰策略 LFU深入分析 (三)

2020-12-07 01:12:45 485 1

原创 Redis数据淘汰策略 LRU深入分析 (二)

1.前言上篇文章我们整体上介绍了redis的淘汰策略,而其中LRU和LFU两种算法又是极其重要的,接下来我们从底层原理开始逐一揭开它们的神秘面纱!2. LRU2.1 LRULRU(least recently used),从字面上理解是最近最少使用的有兴趣可查看redis官方文档关于这块的介绍,点击查看实现LRU算法除了需要key/value字典外,还需要附加一个链表,聊表中元素按照一定顺序排列,当空间满的时候就剔除尾部的元素,当字典的某个元素被访问时,他在链表中的位置会被移动到表头,所以链表的

2020-12-06 19:27:27 202

原创 Redis数据淘汰策略 概论 (一)

Redis5.0数据淘汰策略详解(最新版本,面试常问)作为一个内存数据库,redis在内存空间不足的时候,为了保证命中率,就会选择一定的数据淘汰策略,这篇文章主要讲解常见的几种内存淘汰策略。和我们操作系统中的页面置换算法类似。一、参数设置我们的redis数据库的最大缓存、主键失效、淘汰机制等参数都是通过配置文件来配置的。这个文件是我们的redis.config文件,我们的redis装在了/usr/local/redis目录下,所以配置文件也在这里。首先说明一下我使用的redis是5。也是目前最新的版本

2020-12-06 17:38:18 101

原创 canal的安装和使用

1.前言canal [kə’næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费阿里巴巴将此项目开源了 点击前往简介2.配置及安装先配置mysql master[root@VM-0-15-centos ~]# whereis my.cnfmy: /etc/my.cnf[root@VM-0-15-centos ~]# vi /etc/my.cnf...[canal]log-bin=mysql-bin #添加这一行就ok ,

2020-11-29 01:32:20 383 3

原创 如何实现数据库DB与其他中间件(redis/elastic search/mongoDB)的双写一致性?

如何利用mysql的主从原理,通过binlog结合消息队列来更新redis,以实现mysql和redis 的强一致性

2020-11-27 20:33:08 4138 5

原创 rabbitmq实战(三)——RabbitMQ web管理介绍及配置

王二娃二

2020-09-30 00:07:12 618 1

原创 rabbitmq实战(五)——RabbitMQ集群(镜像集群)

可查看 rabbitmq官方集群方案架构图This guide covers mirroring (queue contents replication) of classic queues --摘自官网By default, contents of a queue within a RabbitMQ cluster are located on a single node (the node on which the queue was declared). This is in contras

2020-09-29 19:28:01 838

原创 rabbitmq实战(四)——RabbitMQ集群(主从副本集群)

架构图集群规划 node0: 192.168.226.130 mq0 master 主节点 node1: 192.168.226.131 mq1 repl1 副本节点 node2: 192.168.226.132 mq2 repl2 副本节点1.修改三台机器主机名和ip映射更改三台MQ节点的计算机名分别为mq0、mq1 和mq2,然后修改hosts配置文件vim /etc/hostname //其他两台相同 mq0.localdomainvi /etc/ho

2020-09-29 18:54:51 4227 2

原创 docker实战(九)安装elastic search

es

2020-09-29 02:46:43 182

原创 docker实战(八)安装rabbitmq

前言机器:centos7安装了docker,如果没有安装可点击这篇安装教程开始安装可以先上docker hub上查看一下rabbitmq的最新版本信息注意:需要web界面管理的话要下载 -management 的版本的拉取镜像[root@mq0 ~]# docker pull rabbitmq:3.8.9-management#也可以直接不带版本号,即最新版本[root@mq0 ~]# docker pull rabbitmq:management#查看镜像[root@mq0

2020-09-29 00:35:20 148

原创 docker实战(七)安装mongo

mongodb

2020-09-29 00:32:12 172

原创 docker实战(六)安装nginx

nginx

2020-09-29 00:30:30 295

原创 docker实战(五)安装redis

redis

2020-09-28 00:23:53 172

原创 docker实战(四)安装mysql

mysql

2020-09-27 23:06:26 93

原创 docker实战(三)镜像的打包和还原(save&load)

前言docker允许我们自定义生成和修改配置,那么我们如何备份和传输这些自定义镜像??重新看一看docker的整体架构图其实docker提供save&load这两个命令支持镜像和文件之间的转化docker save1. 描述Save one or more images to a tar archive (streamed to STDOUT by default)将一个或者多个镜像保存成tar文件(默认不带参数是标准输出流)docker save [OPTIONS] IMA

2020-09-27 22:27:28 2566

原创 docker实战(一)简介

简介

2020-09-27 18:01:46 92

原创 docker实战(二)安装

彻底卸载dockeryum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \

2020-09-25 13:59:27 99

原创 rabbitmq实战(二)——rabbitmq安装(centos7)

rabbitmq实战(二)——rabbitmq安装

2020-09-24 14:15:38 733

原创 rabbitmq实战(一)——AMQP协议

dfg 大范甘迪

2020-09-23 15:50:44 118

原创 @Configuration注释下的@Value从yml文件中获取不了值

1.背景@Configuration@EnableWebSocketMessageBrokerpublic class WebSocketConfig implements WebSocketMessageBrokerConfigurer { @Value("${spring.rabbitmq.host}") private String relayHost; @Override public void configureMessageBroker(MessageB

2020-09-22 17:32:56 4399

原创 elasticsearch 6.8.0安装错误记录

elasticsearch 6.8.0安装错误记录注:elasticsearch需要jdk8以上的环境,需要先安装有jdk8以上,才能运行。错误1:不能以root用户运行org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as rootat org.elasticsearch.bootstrap.Elasticsearch.init(Elasti

2020-09-22 17:13:15 227

原创 解决Stomp(websocket)MessageDeliveryException: Failed to send message to ExecutorSubscribableChannel

异常信息:2020-09-22 09:42:56.581 263170 [http-nio-5556-exec-1] ERROR o.s.w.s.m.StompSubProtocolHandler - Failed to send client message to application via MessageChannel in session uddpnpiw. Sending STOMP ERROR to client.org.springframework.messaging.MessageD

2020-09-22 15:31:48 5160

原创 centos7安装Redis5.0.5

1.下载redis离线上传redis-5.0.5.tar.gz到安装目录,如下[root@VM-0-15-centos ~]# cd /usr/local/software/redis/[root@VM-0-15-centos redis]# lltotal 1932-rw-r--r-- 1 root root 1975750 Sep 19 13:31 redis-5.0.5.tar.gz也可以在线下载wget http://download.redis.io/releases/redis-

2020-09-19 14:19:46 242

原创 github访问速度慢的完整解决方案

1. 修改本地hosts文件windows系统的hosts文件的位置如下:C:\Windows\System32\drivers\etc\hostsmac/linux系统的hosts文件的位置如下:/etc/hosts2. 增加映射访问https://www.ipaddress.com分别输入http://github.global.ssl.fastly.net和http://github.comhttp://github.global.ssl.fastly.net查询结果如下ht

2020-09-13 15:30:45 1568 3

原创 java位运算在实际业务中的应用 总结篇(四)

前言任何一项方案,有利必有弊;性能、实现复杂度、维护成本等等指标之中必定有所取舍的…利:节约了数据库的存储空间网络传输更少字节无需维护多表关系,原本由于字段太多需要单独建表,这张表需要和用户表关联,现在只要在用户表中加一个很短的整型字段弊:需要熟悉位操作弊 , 乍一看只是需要开发者掌握基本位操作就行实则带来了更大的问题并发问题由于页面允许很快速得来回点击,为了好的用户体验,不能限制用户点击速度我们仔细理一下思路单个点击某个按钮前端调接口,告诉后端是哪个设置变动了

2020-09-12 23:58:41 286 1

转载 java位运算在实际业务中的应用 (三)

检测第K位是否为1 (以下运行结果均未补高位0)已知数n,检测其第K位(右起)是否为1,可以用以下表达式:n & (1 << k - 1) 结果为0,说明第K位为0;结果不为0,说明第K位为1。比如我要检测965的二进制第3位是否为1public static void main(String[] args) { int a = Integer.parseInt("1110111010", 2); int k = 1 <<

2020-09-12 19:47:14 224

原创 java位运算在实际业务中的应用 (二)

前言上一章我们分析了利用“二进制浓缩大法”,这章我们分析一下具体会有哪几个具体操作分析1. 新建默认设置//具体根据业务来定//这个方法可以将二进制转成十进制Integer DEFAULT_SETTING = Integer.parseInt("101010", 2);2. 解析默认设置@Data@NoArgsConstructorpublic class NotificationSetting { @JsonSerialize(using = ToStringSeriali

2020-09-12 19:33:54 163

原创 java位运算在实际业务中的应用 (一)

https://blog.csdn.net/weixin_34261739/article/details/92407752检测第K位是否为1 (以下运行结果均未补高位0)已知数n,检测其第K位(右起)是否为1,可以用以下表达式:n & (1 << k - 1) 结果为0,说明第K位为0;结果不为0,说明第K位为1。比如我要检测965的二进制第3位是否为1public static void main(String[] args) { int a =

2020-09-12 19:30:56 250

原创 Incompatibile SockJS! Main site uses: “1.5.0“, the iframe: “1.0.0“. at s (VM6 sockjs.min.js:2)

问题背景:前后端建立websocket连接的时候,前端使用了SocketJS异常信息:

2020-09-12 17:51:45 8645 4

原创 spring boot项目中页面报错 Refused to display in a frame because it set ‘X-Frame-Options‘ to ‘DENY‘

1. 背景在springboot项目中前后端建立websocket连接,页面会报错!!!2.异常信息这个会导致使用iframe模式上传图片或者iframe嵌套页面时,会报如下异常信息:Refused to display in a frame because it set ‘X-Frame-Options’ to ‘DENY’3. 解决方法拓展WebSecurityConfigurerAdapter的配置public class SecurityConfig extends WebSecu

2020-09-08 09:46:52 1004

原创 centos7上快速安装mysql8.0

centos7上快速安装mysql一:去官网查看最新安装包https://dev.mysql.com/downloads/repo/yum/二:下载MySQL源安装包wget http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm安装MySql源yum -y install mysql80-community-release-el7-3.noarch.rpm查看一下安装效果yum repolist en

2020-09-07 02:31:19 317

原创 rabbitmq实战(四)——多种消息模型详析

1.前言With tens of thousands of users, RabbitMQ is one of the most popular open source message brokersRabbitMQ有成千上万的用户,是最受欢迎的开源消息代理之一点击rabbitmq官网教程可自行查看2.消息模型介绍1 "Hello World!"The simplest thing that does something第一种模型(直连)在上图的模型中,有以下概念:P:生产者,也就

2020-09-06 17:45:54 171

原创 mysql5.7先分组再取最新一条记录时order by失效

1. 业务场景项目中有个小型的私信功能,需要查询出聊天列表且展示与所有聊天对象的最后一条聊天记录;因此需要按照聊天对象分组,找出与每个聊天的最后一条消息,group by和order by就得同时使用;2. SQL先排序再分组取第一条SELECT p.id, COUNT( p.friend ) AS msgCnt, p.USER, p.friend, p.sender, p.receiver, p.send_time AS sendTime, p.content, u.nic

2020-09-06 15:45:43 929

原创 idea中安装docker插件连接docker server

1. 前言微服务项目原本采用的jar包的方式部署,考虑到后面会随着业务量增大,某些服务会复制多份,采用docker实现部署会更加方便和快捷;2.安装环境安装了docker的服务器,且支持远程连接idea开发环境springboot或者springcloud项目file——> setting——>plugins——>marketplace——>docker安装好重启idea后file——> setting——>docker——>新增一个连接——&g

2020-08-25 18:42:31 1063

原创 解锁雪花算法snowflake的新玩法————之隐式添加位标记

1. 背景工作中当前项目采用的是雪花算法作为主键生成策略;业务中碰到过一种情况:个体表user,和团队表team,它们都有一个雪花算法生成的id,如何做到根据id就知道这个id是属于个体还是团体呢???常规的做法我知道的有两种:1.另加一个字段,字段type一直跟着这个id;2.另加一个表,表中一个字段为id,一个字段为类型,麻烦的是要维护这个表的id和类型映射关系;我们能不能控制雪花的生成算法去更简单有效地控制这点呢???2. 简述雪花算法原理SnowFlake算法生成id的结果是一个6

2020-08-21 16:55:10 805

原创 布隆过滤器bloomfilter结合redis实现持久化且支持周期性重置

1. 业务需求业务中由于是分布式前后端分离项目,使用jwt的方式;为了提高用户体验,要求通过快要失效的token去通过接口调用获取新token;调用要求:一个用于刷新的refreshToken只能调用一次即失效,因此需要将每次来的token缓存起来,每次新来的token去缓存中查看是否存在,如果不存在(即首次调用)则返回新token,如果存在则不再返回;2. 解决策略布隆过滤器布隆过滤器(Bloom Filter)的核心实现是一个超大的位数组和几个哈希函数。假设位数组的长度为m,哈希函数的个数

2020-08-18 17:28:02 3285 1

原创 Jmeter压测工具之从入门到“入坟”

下载地址:点击Jmeter

2020-08-13 19:00:29 211

rabbitmq.config

3.8.8中没有rabbitmq.conf这个模板配置文件了,我也不知道究竟哪个版本起就没有了 3.7.x版本中默认安装完成后配置文件模板在:/usr/share/doc/rabbitmq-server-3.7.18/rabbitmq.config.example目录中,需要将配置文件复制到/etc/rabbitmq/目录中,并修改名称为rabbitmq.config

2020-09-24

esl-erlang_23.0.2-1_centos_7_amd64.rpm

erlang_23.0.2-1版本 centos7 64bit esl-erlang_23.0.2-1_centos_7_amd64.rpm

2020-09-23

rabbitmq-server-3.8.8-1.el6.noarch.rpm

对应的erlang环境的版本如下: Erlang/OTP 23 compatibility notes Erlang 22.x or 23.x is recommended Erlang 22.x dropped support for HiPE

2020-09-23

空空如也

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

TA关注的人

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