自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

粗茶淡饭

经历中的积累与总结是自己的一种财富

  • 博客(47)
  • 收藏
  • 关注

原创 JVM常用配置参数操作与GC回收机制解释

JVM笔记jvm 配置参数-verbose:gc -XX:+PrintGCDetails 打印GC回收的信息-XX:ParallelGCThreads=4 (PreNew垃圾回收)垃圾回收的线程数(推荐为CPU的核数作为值,过多线程会导致上下文切换)-XX:MaxGCPauseMills GC回收停顿时间毫秒数(数值太小会发生频繁GC)-XX:GCTimeRation...

2020-05-05 22:48:31 511

原创 synchronized与ReentrantLock区别

在这里插入代码片##### 功能区别在未优化前synchronized是属于重量级锁,系统切换用户态与核心态来实现阻塞与唤醒Synchronized的使用比较方便简洁,并且由编译器去保证锁的加锁和释放,而ReenTrantLock需要手工声明来加锁和释放锁,为了避免忘记手工释放锁造成死锁,需要lock()和unlock()方法配合try/finally语句块来完成JAVA使用s...

2019-11-21 11:38:55 205

原创 配置多数据源

SpringBoot+Mybatis配置多数据源配置文件## master 数据源配置master.datasource.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8master.datasource.username=rootmaster.datasource.passw...

2019-01-28 11:15:50 235

原创 springcloud以git作为配置中心

SpringCloud配置中心配置中心服务端pom.xml<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spri

2019-01-28 11:14:21 351

原创 ip频繁调用接口过滤设置黑名单

针对某个IP频繁恶意调用API接口,将ip设置成黑名单代码如下(可以在拦截中添加)package net.dotclouds.rule;import net.dotclouds.common.Constants;import net.dotclouds.conf.ChatConf;import net.dotclouds.config.RedisClient;import net...

2019-01-28 11:11:56 6790

原创 Spring IOC解析

Spring IOC解析问题:Spring怎么加载配置文件,怎么注册bean,怎么获取bean1.XmlBeanFactorynew Resource(ClassPathResource 实现类获取bean配置文件和当前类加载器)传给XmlBeanFactory构造方法 ClassPathResource resource = new ClassPathResource("beans....

2019-01-24 17:36:11 126

原创 Redis问题

Redis问题异常:MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details ab...

2019-01-24 17:35:56 207

原创 重启tomcat脚本

使用Shell 重启Tomcat脚步#!/bin/shTOMCAT_PATH=/data/soft/tomcat-king/bin/TOMCAT_SERVER_NAME=tomcat-kingecho "TOMCAT_PATH is $TOMCAT_PATH"PID=`ps aux | grep $TOMCAT_SERVER_NAME | grep java | awk '{pri...

2019-01-24 17:35:21 252

原创 Redis分布式锁实现

分布式锁实现使用Redis的SETNX命令实现分布式锁。方案:Redis SETNX 语法 SETNX key value 当设置成功时会返回1表示该key没有资源占用反之返回为0表示该资源被占为每个锁设置一个生命时间,防止独占锁而没有释放导致阻塞(比如异常),在程序的finally块内释放锁资源,在释放锁资源后将链接Redis的对象返回给链接池或者关闭,否则会导致等待阻塞超时抛异常...

2019-01-24 17:35:06 129

原创 RDB与AOF持久化配置与工作流程

RDB与AOF持久化配置与工作流程RDB概述RDB是在某个时间点将数据写入一个临时文件,持久化结束后,用这个临时文件替换上次持久化的文件,达到数据恢复。优点:使用单独子进程来进行持久化,主进程不会进行任何IO操作,保证了redis的高性能缺点:RDB是间隔一段时间进行持久化,如果持久化之间redis发生故障,会发生数据丢失。所以这种方式更适合数据要求不严谨的时候配置RDB持久化re...

2019-01-24 17:34:51 874

原创 Redis数据备份与容灾数据恢复

Redis数据备份与恢复企业级的持久化的配置策略在企业中,RDB的生成策略,用默认的也差不多save 60 10000:如果你希望尽可能确保说,RDB最多丢1分钟的数据,那么尽量就是每隔1分钟都生成一个快照,低峰期,数据量很少,也没必要10000->生成RDB,1000->RDB,这个根据你自己的应用和业务的数据量,你自己去决定AOF一定要打开,fsync,everyse...

2019-01-24 17:33:59 652

原创 Redis主从复制读写分离故障主从切换

Redis主从复制读写分离一. 主从复制准备3个实例Redis,端口分别为6379(master主),6380(slave1从1),6381(slave2从2)在slave1和slave2的redis.conf配置文件中分别添加slaveof 127.0.0.1 6379 (关联本地端口为6379的Redis)masterauth 123456 :master密码require...

2019-01-24 17:33:46 276

原创 SpringBoot整合Redis

SpringBoot整合Redis在pom.xml文件添加<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId&gt

2019-01-24 17:33:36 127

原创 Rocketmq安装

Rocketmq 安装环境要求:64bit OS, Linux/Unix/Mac is recommended;64bit JDK 1.8+;Maven 3.2.x从官网下载http://rocketmq.apache.org/release_notes/release-notes-4.2.0/解压unzip rocketmq-all-4.2.0-source-release.z...

2019-01-24 17:33:17 183

原创 SpringBoot整合Rocketmq

SpringBoot整合RocketMq在pom.xml配置文件添加<dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <

2019-01-24 17:32:59 395

原创 Spring Session实现tomcat集群session共享配置

Spring Session实现tomcat集群session共享配置添加maven依赖<dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session</artifactId&

2019-01-24 17:32:37 506

原创 Nginx的5种负载模式

Nginx的5种负载模式轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。weight指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。例如:upstream bakend { server 192.168.0.14 weight=10; server 192.168.0.15 weight=10...

2019-01-23 15:31:24 1199

原创 mysql主从复制服务器配置

mysql主从复制主服务器配置vim my.cnf 添加log-bin=mysql3306-bin //将mysql二进制日志取名为mysql3306-binbinlog_format=mixed //二进制日志的格式,有三种:statement/row/mixed,具体分别不多做解释,这里使用mixedserver-id=106 //为服务器设置一个独一无二的id便于区分,这里使...

2019-01-23 15:30:38 138

原创 mysql查询时间段

mysql查询时间段数据查询今天数据SELECT *FROM tbl_finance_paymentreportWHERE TO_DAYS(estimateInLoanTime)=TO_DAYS(now())查询昨天数据SELECT *FROM tbl_finance_paymentreportWHERE TO_DAYS(NOW( )) - TO_DAY...

2019-01-23 15:28:55 959

原创 maven生成指定环境jar包

<build> <resources> <resource> <directory>src/main/resources</directory> <!-- 资源根目录排除各环境的配置,防止在生成目录中多余其它目录 --> <excludes>

2019-01-23 15:26:46 882

原创 ssh

Linux SSH 连接其他服务器ssh IP地址ssh 用户名@IP地址 -p 端口号ssh 免密登陆服务器ssh-keygen 生成RSA密匙 (ssh-keygen -t 生成指定加密方式,例如:ssh-keygen -t RSA)RSARSA1DSAECDSAED25519scp id_rsa.pub root@112.74.173.215:/roo...

2019-01-23 15:25:23 153

原创 设置开机启动

Linux 设置开机启动将要设置的开机启动软件的启动命令添加到 /etc/rc.d/rc.local 文件里如:sh /root/sh/mysql.shsh /root/sh/redis.shchmod +x /etc/rc.d/rc.local 则Linux系统在开机时会执行/etc/rc.d/rc.local 里的命令...

2019-01-23 15:24:58 155

转载 linux解压与压缩

01-.tar格式解压: tar -zxvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)02-.gz格式gunzip FileName.gzgzip -d FileName.gz压缩: gzip FileName03-.tar.gz格式解压:tar -zxvf FileName.tar.gz压...

2019-01-23 15:24:02 199

原创 linux开发常用命令

根据关键字查询日志信息grep -n “关键字” zxsf360-task.logvim zxsf360-task.log +行数netstat -tnlp 查询监听的端口top -H -p端口 查询该端口的top情况实时查看项目日志tail -f 日志文件名远程连接登录ssh IP postscp user@ip dir 远程拷贝文件授权...

2019-01-23 15:23:44 115

原创 Linux设置静态IP并联网

Linux设置静态IP并联网vim /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=“eth0”BOOTPROTO=“static”HWADDR=“00:0C:29:DA:95:F1”IPV6INIT=“no”NM_CONTROLLED=“yes”ONBOOT=“yes”TYPE=“Ethernet”USERCTL=no静态I...

2019-01-23 15:23:31 295

原创 Linux升级内核

CentOS 6.8 升级内核(要联网)查看当前版本 cat /etc/issueCentOS release 6.8 (Final)Kernel \r on an \m升级CentOS yum update –y内核升级至4.4(如果执行失败可以前往http://www.elrepo.org/选择对应版本)下载升级包rpm --import https://ww...

2019-01-23 15:23:15 230

转载 linux出现Time_wait过多

Linux 并发情况下出现TCP TIME_WAIT过多导致请求进不了阻塞vim /etc/sysctl.confnet.ipv4.tcp_fin_timeout = 30 //*表示如果套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间。net.ipv4.tcp_keepalive_time = 1200 //表示当keepalive起用的时候,TCP发送k...

2019-01-22 17:51:13 742

原创 Linux查看系统信息的一些命令及查看已安装软件包的命令

Linux查看系统信息的一些命令及查看已安装软件包的命令系统uname -a 查看内核/操作系统/CPU信息head -n 1 /etc/issue #查看操作系统版本cat /proc/cpuinfo # 查看CPU信息hostname # 查看计算机名lspci -tv #...

2019-01-22 17:50:37 699

原创 linux安装jdk环境

安装jdk根据系统版本下载jdk并解压到自定义目录下在/etc/profile文件添加JAVA_HOME=/data/soft/jdk1.8 注:/data/soft/jdk1.8为jdk解压目录PATH=JAVAHOME/bin:JAVA_HOME/bin:JAVAH​OME/bin:PATHCLASSPATH=.:JAVAHOME/lib/dt.jar:JAVA_HOME...

2019-01-22 17:49:41 147

原创 linux安装svn

Linux安装Svnyum -y install subversion创建目录并配置创建目录:mkdir -p /data/svn/repo配置:svnadmin create /data/svn/repo执行上面的命令后,自动建立repo测试库,查看/data/svn/repo 文件夹发现包含了conf, db,format,hooks, locks, README.txt等...

2019-01-22 17:48:42 114

原创 linux安装Redis

linux安装Redis下载Redsi redis-3.2.8.tar.gz https://redis.io/download(下载对应版本)tar -zxvf redis-3.2.8.tar.gzmv redis-3.2.8 /data/soft/redis进入redis安装目录注:如果执行make时报错:/bin/sh: cc: command not found 执...

2019-01-22 17:48:03 113

原创 linux安装mysql

安装mysql下载 wget http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.11-Linux-glibc2.5-x86_64.tar.gztar -zxvf mysql-5.7.11-Linux-glibc2.5-x86_64.tar.gzmv mysql-5.7.11 /data/soft/mysql-3306cd my...

2019-01-22 17:46:17 165

原创 Linux-rpm安装命令

rpm -ivh 软件包名rpm -qa 查询已经安装哪些软件包。rpm -q 软件包名查询指定软件包是否已经安装。rpm -Uvh 软件包名升级一个软件包。rpm -e 软件包名删除指定软件包rpm -qa|grep -i mysql(检查有没有安装mysql)rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64(...

2019-01-22 17:44:55 639

原创 Linux-Nginx安装

下载模块依赖性Nginx需要依赖下面3个包gzip 模块需要 zlib 库 ( 下载: http://www.zlib.NET/ )rewrite 模块需要 pcre 库 ( 下载: http://www.pcre.org/ )ssl 功能需要 openssl 库 ( 下载: http://www.openssl.org/ )依赖包安装顺序依次为:openssl、zlib、pcre, ...

2019-01-22 17:44:25 140

原创 linux iptabls配置

linux iptabls配置启动指令:service iptables start重启指令:service iptables restart关闭指令:service iptables stop配置:/etc/sysconfig/iptables修改好后先service iptables restart,然后才调用/etc/rc.d/init.d/iptables sav...

2019-01-22 17:41:33 215

原创 Request多次调用InpuStream

Request中getReader()和getInputStream()只能调用一次,构建可重复读取inputStream的request添加RepeatedlyReadRequestWrapper 类并继承 HttpServletRequestWrapper 包装类package net.dotclouds.requestconfig;import org.apache.common...

2019-01-22 17:38:45 643

原创 CAS与ABA问题

CAS与操作时存在ABA问题CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做ABA问题原因:线程1准备用CAS将变量的值由A替换为B,在此之前,线程2将变量的值由A替换为C,又由C替换为A,然后线程1执行CAS时发现变量的值仍然为A,所以CAS成功。但实际上这时的现场已经和最初不同了,尽管CAS成功...

2019-01-21 16:29:35 127

原创 JAVA自定义AOP编程

JAVA 自定义AOP编程package com.king.aspect;import org.aspectj.lang.JoinPoint;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.*;import org.springframework.stereotype.Comp...

2019-01-21 16:28:05 335

原创 JAVA序列化对象

JAVA序列化对象对敏感字段加密1. 情境:服务器端给客户端发送序列化对象数据,对象中有一些数据是敏感的,比如密码字符串等,希望对该密码字段在序列化时, 进行加密,而客户端如果拥有解密的密钥,只有在客户端进行反序列化时,才可以对密码进行读取,这样可以一定程度保证序列化对象的数据安全。2. 解决:在序列化过程中,虚拟机会试图调用对象类里的 writeObject 和 readObject ...

2019-01-21 16:27:41 116

原创 线程生产者与消费者

线程生产者与消费者package com.king.thread;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * Created by Administrat...

2019-01-21 16:26:39 131

空空如也

空空如也

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

TA关注的人

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