自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 G1垃圾收集器jvm参数设置

#堆内存最大最小值为4g,新生代内存2g-Xms4g -Xmx4g -Xmn2g #元空间128m,最大320m-XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m #开启远程debug-Xdebug -Xrunjdwp:transport=dt_socket,address=9555,server=y,suspend=n #使用G1垃圾收集器,在低延迟和高吞吐间寻找平衡,可以调整最大停止时间,设置新生代大小来提高吞吐量,让出cpu资源-XX:+

2022-04-13 10:56:07 2816 2

原创 慢日志分析工具mysqldumpslow

慢查询分析工具mysqldumpslowmysqldumpslow[OPTS…][LOGS…] --后跟参数以及log文件的绝对地址;-s 按照那种方式排序c:访问计数l:锁定时间r:返回记录al:平均锁定时间ar:平均访问记录数at:平均查询时间-t 是top n的意思,返回多少条数据。-g 可以跟上正则匹配模式,大小写不敏感。1.得到返回记录最多的20个sqlmysqldumpslow -s r -t 20 sqlslow.log2.得到平均访问次数最多的20条sqlm

2022-04-12 15:02:25 271

原创 mysql主从配置文件

主节点配置文件# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.## This program is free software; you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation;

2022-04-12 14:59:42 1135

原创 基于docker容器的myql主从复制

基于docker容器的myql主从复制1.拉取mysql镜像docker pull mysql:5.72.查看mysql镜像docker images3.根目录/data/mysql_3306下新建文件夹cd /data/mysql_3306mkdir cnfmkdir datamkdir logs4.启动mysql容器实例,映射主机3306端口docker run --name mysql_3306 -v /data/mysql_3306/logs:/logs -v /data/m

2022-03-21 11:48:46 1439

原创 扩展配置文件EnvironmentPostProcessor

有时我们想要修改引入jar包配置,例如第三方jar包。那么我们必须自定义配置去覆盖原有jar包属性。Springboot提供了扩展接口EnvironmentPostProcessor自定义配置文件加载优先级:相对路径,放在tomcat服务器同一级目录,优先级最高绝对路径,根据配置的路径加载配置文件,优先级第二默认方式,properties文件放在resources文件夹下,优先级排第三1.实现EnvironmentPostProcessor接口,加载自定义配置文件package com.z

2022-03-16 11:40:42 922

原创 idea远程debug

idea远程调试配置步骤

2022-03-16 10:53:59 339

原创 linux下springboot项目启动脚本

linux启动springboot项目脚本指定初始jvm参数,开启远程调试#!/bin/bash#定义jar文件名称RESOURCE_NAME=txlcn-tm-5.0.2.RELEASE.jar#停止服务PID=$(ps -ef | grep $RESOURCE_NAME | grep -v grep | awk '{ print $2 }')if [ -z "$PID" ]then echo $RESOURCE_NAME Application is already stop

2022-03-16 10:50:18 1717

原创 jvm常用参数

-Xms2g 堆内存初始化大小–Xmx2g 堆内存可分配最大内存-Xmn750m 对-XX:newSize、-XX:MaxnewSize同时配置,新生代大小-XX:+PrintGCDateStamps 打印gc日志时间-XX:+PrintGCDetails 打印gc日志详细信息-XX:+PrintGCApplicationStoppedTime 打印gc停顿时间-XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息-Xloggc:/data/jvm/gc.log 打印gc日志到指

2022-03-15 10:38:50 494

原创 linux下Local Adress(本地ip:端口)和Foreign Address(外部ip:端口)

linux下查看端口时会有Local Adress(本地ip:端口)和Foreign Address(外部ip:端口)其中Local Adress分为0.0.0.0所有ip都可访问,127.0.0.1只有本机可访问

2022-01-25 10:20:20 7790

原创 @value注解设置默认值

如果配置文件中没有demo.num配置属性,启动时就会报错,spring加载不到此属性值。@value("${demo.num}")如果配置文件中没有demo.num配置属性,取默认值100。@value("${demo.num:100}")

2021-12-14 10:41:22 14358

原创 linux下mysql定时备份

数据库备份说明备份路径:/data/mysql-back/java-practice备份脚本:/data/mysql-back/java-practice/database-java-practice-backup.sh备份时间:每天02:00备份备份要求:备份的数据只保留1周1.备份脚本见同级目录下database-java-practice-backup.sh2.为脚本加上权限chmod +x /data/mysql-back/java-practice/database-java-p

2021-12-10 16:48:17 197

原创 自定义实现布隆过滤器

什么是布隆过滤器?以下摘自百度百科布隆过滤器(BloomFilter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。以下为借鉴其他资料实现布隆过滤器代码package com.zmx.common.common.utils.bitmap;import java.util.BitSet;import java.util.conc

2021-12-02 16:10:49 611

原创 BitMap过滤整数

简易版对整数进行过滤、判断是否已存在代码如下:package com.zmx.common.common.utils.bitmap;import lombok.extern.slf4j.Slf4j;/** * @Description: 简易版对整数进行过滤、判断是否已存在 * @ClassName: SimpleBitMapUtil * @Author zhaomxr * @Date 2021-12-02 10:30 */@Slf4jpublic class SimpleBitM

2021-12-02 16:05:45 559

原创 Oracle与Mysql获取系统时间

Oracle中获取当前时间函数为 SYSDATEselect SYSDATE from dual;Mysql中获取当前时间函数为 SYSDATE()select SYSDATE() from dual;select NOW() from dual;

2021-11-24 11:28:13 513

原创 Springboot基于jpa生成entity等代码

1.View -> Tool Windows -> Database2.右键选择数据库表,点击下方Scripted extensions -> Generate POJOs.groovy

2021-11-22 15:06:23 880

原创 spring cloud gateway中请求过滤器

spring cloud gateway中请求过滤器package com.zmx.gateway.filter;import com.zmx.gateway.properties.MallAuthProperties;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang.StringUtils;import org.springframework.beans.factory.annotation.Autowired;i

2021-11-18 16:53:35 361

原创 spring cloud gateway中跨域问题

spring cloud gateway中跨域问题package com.zmx.gateway.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfiguration;import org.springframework.we

2021-11-18 16:51:47 80

原创 axios请求拦截器

main.js中添加axios请求前拦截器、接受拦截器import axios from 'axios'// 添加请求拦截器,在请求头中加token,Cookieaxios.interceptors.request.use( config => { if (localStorage.getItem('Authorization')) { config.headers.Authorization = localStorage.getItem('Authorization'

2021-11-18 16:49:44 4202

原创 coalesce函数

coalesce函数可支持大部分主流数据库作用coalesce(var1,var2,var3)会从第一个开始向后寻找,直到返回一个不为空的值使用场景可用于兼容mysql中ifnull与oracle中nvl函数不一致问题

2021-11-18 16:46:24 682

原创 redis与数据库数据一致性问题

采用先更新数据库,再删除缓存方式(推荐) | 如果是热点key比较多情况下,用先更新数据库,再更新缓存方式分布式锁对当前更新数据加锁,保证并发数据一致性修改订单状态此订单加入延时队列中,补偿删除对应缓存中数据删除缓存@Transactional(rollbackFor = Exception.class) public B2cOrderDto updateOrderStatusByCode(String orderCode, OrderStatusEnum orderStatusEnu

2021-10-26 11:46:17 99

原创 net.sf.json-lib

net.sf.json-lib分为两个不同版本,注意加入classifier区别版本<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk13</classifier></depen

2021-10-26 11:43:30 1792

原创 过滤重复数据

定时任务或者一些需要大量处理数据操作时,传统方式都是查询数据库后进行判断,带来弊端就是大量IO造成数据库连接打满,严重影响性能。基于两级缓存优化数据判重实现代码如下:package com.mingxing.study.common.utils;import com.google.common.collect.Maps;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.A.

2021-09-16 17:00:12 209

原创 @Autowired初始化内幕

spring初始化时会将当前bean按照类型和名称注入到ioc容器中@Autowired会根据bean类型取对应对象引用,如果检查到bean类型只有一个就直接取,如果有多个就按照当前bean名称匹配取注意点:一个类B实现或继承类A,在容器中B的类型仍然为A...

2021-09-15 16:55:44 467

原创 pojo转换接口说明方法

pojo转换接口说明方法package com.yonyou.convert.service;import com.alibaba.fastjson.JSON;import com.yonyou.convert.dto.ResponseDto;import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;import lombok.extern.slf4j.Slf4j;import

2021-08-24 15:48:25 123

原创 Jackson转换工具类

spring自带 Jackson转换工具类package com.yonyou.convert.common.utils;import com.fasterxml.jackson.core.JsonProcessingException;import com.fasterxml.jackson.core.type.TypeReference;import com.fasterxml.jackson.databind.DeserializationFeature;import com.faster

2021-08-24 15:42:47 229

原创 基于NIO实现Discard服务器

基于NIO实现Discard服务器1.服务端DisCardServerpackage com.netty.redis.zookeeper.netty.unit1.oneday;import lombok.extern.slf4j.Slf4j;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.SelectionKey;

2021-07-13 11:44:31 237

原创 基于nio的DatagramChannel传输数据

DatagramChannel是一个接受UDP包的通道,不保证数据传输的可靠性1.服务端serverpackage com.netty.redis.zookeeper.netty.unit1.oneday;import lombok.extern.slf4j.Slf4j;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channel

2021-07-13 10:30:36 218

原创 基于nio的ScoktChannel数据传输

java中nio的ScoktChannel数据传输1.服务端serverpackage com.netty.redis.zookeeper.netty.unit1.oneday;import lombok.extern.slf4j.Slf4j;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.ServerSocketC

2021-07-13 10:28:01 222

原创 基于java nio的channel实现高效率复制文件

基于java nio的channel实现高效率复制文件关键:其中的transferFrom基于零拷贝技术package com.netty.redis.zookeeper.netty.unit1;import lombok.extern.slf4j.Slf4j;import java.io.*;import java.nio.channels.FileChannel;/** * @Description: 第一天练习 * 通过使用 Channel 通道,完成复制文件。 * 本环节的目

2021-07-12 16:51:20 262

原创 高并发下扣减库存及DB数据库更新数据到redis

高并发下扣减库存及DB数据库更新数据到redis直接上代码,里面有详细注释哦~1.pom.xml中引入redis和redission相关依赖<!--redis--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency>

2021-06-30 09:27:09 373

原创 无重复字符的最长子串

无重复字符的最长子串package com.example.demo.study.shuanfa;import lombok.extern.slf4j.Slf4j;import java.util.HashSet;/** * @Description: 无重复字符的最长子串 * @ClassName: LongestSubstringWithoutRepeatingCharacters * @Author zhaomx * @Version 1.0 * @Date 2021-06-2

2021-06-29 15:24:09 53

原创 两数相加问题

两数相加问题package com.example.demo.study.shuanfa;import com.alibaba.fastjson.JSON;import lombok.Data;import lombok.extern.slf4j.Slf4j;/** * @Description: 两数相加 * @ClassName: AddTwoNUmbers * @Author zhaomx * @Version 1.0 * @Date 2021-06-29 11:05 */

2021-06-29 11:41:10 93

原创 两数之和问题

两数之和问题例如:输入:int[] nums = {9, 7, 11, 2}; int number = 9;输出:[1,3]解释:因为 nums[1] + nums[3] == 9 ,返回 [1, 3] 。package com.example.demo.study.shuanfa;import com.alibaba.fastjson.JSON;import lombok.extern.slf4j.Slf4j;import java.util.HashMap;/** * @De

2021-06-29 10:45:38 61

原创 反转链表算法

反转链表package com.example.demo.study.shuanfa;import com.alibaba.fastjson.JSON;import lombok.Data;import lombok.extern.slf4j.Slf4j;/** * @Description: 反转链表 * @ClassName: ReverseLinkedList * @Author zhaomx * @Version 1.0 * @Date 2021-06-29 09:02 *

2021-06-29 09:28:53 64

原创 mysql的InnoDb引擎更新一条数据流程

mysql的InnoDb引擎更新一条数据流程1.开启事务2.查询出对应数据,将其放入内存3.记录undo_log到内存buffer4.记录redo_log到内存buffer5.更改内存中的数据记录6.提交事务,出发redo_log刷盘7.记录bin_log,二进制追加记录(用于主从同步)8.事务结束...

2021-06-28 15:23:05 233

原创 docker开机自启动

一、docker服务设置自动启动查看已启动的服务systemctl list-units --type=service查看是否设置开机启动systemctl list-unit-files | grep enable设置开机启动systemctl enable docker.service关闭开机启动systemctl disable docker.service二、docker容器设置自动启动启动时加–restart=alwaysdocker run -tid --name isal

2021-06-28 15:18:13 434

原创 CentOS8.2安装docker

CentOS8.2安装docker1.安装必要工具sudo yum install -y yum-utils device-mapper-persistent-data lvm22.安装repo包sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3.更新 Docker-CE(CentOS8.2中没有fast参数)sudo yum makecache4

2021-06-25 08:59:17 165

原创 redis的string,hash,list,set,zet常用方法总结

redis五种类型 string,hash,list,set,zet常用方法总结:package com.example.demo.study.redis;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.Cursor;import org.springframework

2021-06-17 17:00:39 235

原创 spring事务传播特性

spring事务传播特性1.Propagation.REQUIRED(spring中@Transactional默认方式)如果当前有事务就加入当前事务,如果没有事务就新建一个事务2.Propagation.SUPPORTS支持当前事务,如果当前没有事务,就以非事务方式运行3.Propagation.MANDATORY使用当前事务,如果当前没有事务,就抛出异常4.Propagation.REQUIRES_NEW新建一个事务,如果当前有事务就将当前事务挂起。外部事务不会影响内部事务5.Prop

2021-06-07 15:25:58 279

原创 jdk1.8中常用线程池总结

常用线程池总结1.ThreadPoolExecutor2.newFixedThreadPool3.newCachedThreadPool4.newSingleThreadExecutor5.newScheduledThreadPoolpackage com.example.demo.study.thread;import java.util.concurrent.*;import java.util.concurrent.atomic.AtomicInteger;import stat

2021-06-03 17:02:54 236

空空如也

空空如也

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

TA关注的人

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