<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[粗茶淡饭]]></title><description><![CDATA[经历中的积累与总结是自己的一种财富]]></description><link>https://blog.youkuaiyun.com/YouthStrive</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; YouthStrive]]></copyright><item><title><![CDATA[JVM常用配置参数操作与GC回收机制解释]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/105940792</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/105940792</guid><author>YouthStrive</author><pubDate>Tue, 05 May 2020 22:48:31 +0800</pubDate><description><![CDATA[JVM笔记


jvm 配置参数


-verbose:gc -XX:+PrintGCDetails 打印GC回收的信息


-XX:ParallelGCThreads=4 (PreNew垃圾回收)垃圾回收的线程数(推荐为CPU的核数作为值,过多线程会导致上下文切换)


-XX:MaxGCPauseMills GC回收停顿时间毫秒数(数值太小会发生频繁GC)


-XX:GCTimeRation...]]></description><category></category></item><item><title><![CDATA[synchronized与ReentrantLock区别]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/103179743</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/103179743</guid><author>YouthStrive</author><pubDate>Thu, 21 Nov 2019 11:38:55 +0800</pubDate><description><![CDATA[在这里插入代码片##### 功能区别


在未优化前synchronized是属于重量级锁,系统切换用户态与核心态来实现阻塞与唤醒


Synchronized的使用比较方便简洁，并且由编译器去保证锁的加锁和释放，而ReenTrantLock需要手工声明来加锁和释放锁，
为了避免忘记手工释放锁造成死锁，需要lock()和unlock()方法配合try/finally语句块来完成


JAVA使用s...]]></description><category></category></item><item><title><![CDATA[配置多数据源]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86630751</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86630751</guid><author>YouthStrive</author><pubDate>Mon, 28 Jan 2019 11:15:50 +0800</pubDate><description><![CDATA[SpringBoot+Mybatis配置多数据源

配置文件

## master 数据源配置
master.datasource.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&amp;amp;amp;characterEncoding=utf8
master.datasource.username=root
master.datasource.passw...]]></description><category></category></item><item><title><![CDATA[springcloud以git作为配置中心]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86630797</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86630797</guid><author>YouthStrive</author><pubDate>Mon, 28 Jan 2019 11:14:21 +0800</pubDate><description><![CDATA[SpringCloud配置中心

配置中心服务端

pom.xml



&amp;amp;lt;dependencies&amp;amp;gt;
    &amp;amp;lt;dependency&amp;amp;gt;
        &amp;amp;lt;groupId&amp;amp;gt;org.springframework.cloud&amp;amp;lt;/groupId&amp;amp;gt;
        &amp;amp;lt;artifactId&amp;amp;gt;spri]]></description><category></category></item><item><title><![CDATA[ip频繁调用接口过滤设置黑名单]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86630903</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86630903</guid><author>YouthStrive</author><pubDate>Mon, 28 Jan 2019 11:11:56 +0800</pubDate><description><![CDATA[针对某个IP频繁恶意调用API接口,将ip设置成黑名单

代码如下(可以在拦截中添加)

package net.dotclouds.rule;

import net.dotclouds.common.Constants;
import net.dotclouds.conf.ChatConf;
import net.dotclouds.config.RedisClient;
import net...]]></description><category></category></item><item><title><![CDATA[Spring IOC解析]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611586</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611586</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:36:11 +0800</pubDate><description><![CDATA[Spring IOC解析
问题:Spring怎么加载配置文件,怎么注册bean,怎么获取bean
1.XmlBeanFactory

new Resource(ClassPathResource 实现类获取bean配置文件和当前类加载器)传给XmlBeanFactory构造方法

	ClassPathResource resource = new ClassPathResource(&amp;quot;beans....]]></description><category></category></item><item><title><![CDATA[Redis问题]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611471</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611471</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:35:56 +0800</pubDate><description><![CDATA[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...]]></description><category></category></item><item><title><![CDATA[重启tomcat脚本]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611558</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611558</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:35:21 +0800</pubDate><description><![CDATA[使用Shell 重启Tomcat脚步
#!/bin/sh
TOMCAT_PATH=/data/soft/tomcat-king/bin/

TOMCAT_SERVER_NAME=tomcat-king

echo &amp;quot;TOMCAT_PATH is $TOMCAT_PATH&amp;quot;

PID=`ps aux | grep $TOMCAT_SERVER_NAME | grep java | awk '{pri...]]></description><category></category></item><item><title><![CDATA[Redis分布式锁实现]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611420</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611420</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:35:06 +0800</pubDate><description><![CDATA[分布式锁实现


使用Redis的SETNX命令实现分布式锁。
方案:Redis SETNX 语法 SETNX key value  当设置成功时会返回1表示该key没有资源占用反之返回为0表示该资源被占
为每个锁设置一个生命时间,防止独占锁而没有释放导致阻塞(比如异常),在程序的finally块内释放锁资源,在释
放锁资源后将链接Redis的对象返回给链接池或者关闭,否则会导致等待阻塞超时抛异常...]]></description><category></category></item><item><title><![CDATA[RDB与AOF持久化配置与工作流程]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611382</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611382</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:34:51 +0800</pubDate><description><![CDATA[RDB与AOF持久化配置与工作流程
RDB概述
RDB是在某个时间点将数据写入一个临时文件，持久化结束后，用这个临时文件替换上次持久化的文件，达到数据恢复。
优点：使用单独子进程来进行持久化，主进程不会进行任何IO操作，保证了redis的高性能
缺点：RDB是间隔一段时间进行持久化，如果持久化之间redis发生故障，会发生数据丢失。所以这种方式更适合数据要求不严谨的时候


配置RDB持久化
re...]]></description><category></category></item><item><title><![CDATA[Redis数据备份与容灾数据恢复]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611441</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611441</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:33:59 +0800</pubDate><description><![CDATA[Redis数据备份与恢复

企业级的持久化的配置策略

在企业中，RDB的生成策略，用默认的也差不多
save 60 10000：如果你希望尽可能确保说，RDB最多丢1分钟的数据，那么尽量就是每隔1分钟都生成一个快照，低峰期，数据量很少，也没必要
10000-&amp;amp;gt;生成RDB，1000-&amp;amp;gt;RDB，这个根据你自己的应用和业务的数据量，你自己去决定
AOF一定要打开，fsync，everyse...]]></description><category></category></item><item><title><![CDATA[Redis主从复制读写分离故障主从切换]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611490</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611490</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:33:46 +0800</pubDate><description><![CDATA[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...]]></description><category></category></item><item><title><![CDATA[SpringBoot整合Redis]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611510</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611510</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:33:36 +0800</pubDate><description><![CDATA[SpringBoot整合Redis

在pom.xml文件添加

&amp;amp;lt;dependency&amp;amp;gt;
	&amp;amp;lt;groupId&amp;amp;gt;org.springframework.boot&amp;amp;lt;/groupId&amp;amp;gt;
	&amp;amp;lt;artifactId&amp;amp;gt;spring-boot-starter-data-redis&amp;amp;lt;/artifactId&amp;amp;gt]]></description><category></category></item><item><title><![CDATA[Rocketmq安装]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611530</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611530</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:33:17 +0800</pubDate><description><![CDATA[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...]]></description><category></category></item><item><title><![CDATA[SpringBoot整合Rocketmq]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611550</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611550</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:32:59 +0800</pubDate><description><![CDATA[SpringBoot整合RocketMq

在pom.xml配置文件添加

&amp;amp;lt;dependency&amp;amp;gt;
	&amp;amp;lt;groupId&amp;amp;gt;org.apache.rocketmq&amp;amp;lt;/groupId&amp;amp;gt;
	&amp;amp;lt;artifactId&amp;amp;gt;rocketmq-client&amp;amp;lt;/artifactId&amp;amp;gt;
	&amp;amp;lt;]]></description><category></category></item><item><title><![CDATA[Spring Session实现tomcat集群session共享配置]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611955</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611955</guid><author>YouthStrive</author><pubDate>Thu, 24 Jan 2019 17:32:37 +0800</pubDate><description><![CDATA[Spring Session实现tomcat集群session共享配置

添加maven依赖

&amp;amp;lt;dependency&amp;amp;gt;
     &amp;amp;lt;groupId&amp;amp;gt;org.springframework.session&amp;amp;lt;/groupId&amp;amp;gt;
     &amp;amp;lt;artifactId&amp;amp;gt;spring-session&amp;amp;lt;/artifactId&]]></description><category></category></item><item><title><![CDATA[Nginx的5种负载模式]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611334</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611334</guid><author>YouthStrive</author><pubDate>Wed, 23 Jan 2019 15:31:24 +0800</pubDate><description><![CDATA[Nginx的5种负载模式

轮询（默认）

每个请求按时间顺序逐一分配到不同的后端服务器，如果后端服务器down掉，能自动剔除。

weight
指定轮询几率，weight和访问比率成正比，用于后端服务器性能不均的情况。
例如：

upstream bakend {  
	server 192.168.0.14 weight=10;  
	server 192.168.0.15 weight=10...]]></description><category></category></item><item><title><![CDATA[mysql主从复制服务器配置]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611313</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611313</guid><author>YouthStrive</author><pubDate>Wed, 23 Jan 2019 15:30:38 +0800</pubDate><description><![CDATA[mysql主从复制

主服务器配置
vim my.cnf 添加
log-bin=mysql3306-bin  //将mysql二进制日志取名为mysql3306-bin

binlog_format=mixed //二进制日志的格式，有三种：statement/row/mixed,具体分别不多做解释，这里使用mixed
server-id=106 //为服务器设置一个独一无二的id便于区分，这里使...]]></description><category></category></item><item><title><![CDATA[mysql查询时间段]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611273</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611273</guid><author>YouthStrive</author><pubDate>Wed, 23 Jan 2019 15:28:55 +0800</pubDate><description><![CDATA[mysql查询时间段数据

查询今天数据

SELECT 	
	*
FROM
	tbl_finance_paymentreport
WHERE TO_DAYS(estimateInLoanTime)=TO_DAYS(now())


查询昨天数据

SELECT 	
	*
FROM
	tbl_finance_paymentreport
WHERE 
TO_DAYS(NOW( )) - TO_DAY...]]></description><category></category></item><item><title><![CDATA[maven生成指定环境jar包]]></title><link>https://blog.youkuaiyun.com/YouthStrive/article/details/86611225</link><guid>https://blog.youkuaiyun.com/YouthStrive/article/details/86611225</guid><author>YouthStrive</author><pubDate>Wed, 23 Jan 2019 15:26:46 +0800</pubDate><description><![CDATA[ &amp;lt;build&amp;gt;

 	&amp;lt;resources&amp;gt;
      &amp;lt;resource&amp;gt;
        &amp;lt;directory&amp;gt;src/main/resources&amp;lt;/directory&amp;gt;

        &amp;lt;!-- 资源根目录排除各环境的配置，防止在生成目录中多余其它目录 --&amp;gt;

        &amp;lt;excludes&amp;gt;
]]></description><category></category></item></channel></rss>