<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Arvin_Mr的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Arvin_Mr</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Arvin_Mr]]></copyright><item><title><![CDATA[Linux 查看日志常用的三大命令与应用场景]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/108326173</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/108326173</guid><author>Arvin_Mr</author><pubDate>Mon, 31 Aug 2020 17:59:23 +0800</pubDate><description><![CDATA[Linux查看日志常用命令
一.查看日志常用命令


tail命令：-n  是显示行号；相当于nl命令；例子如下：
tail -100f test.log      实时监控100行日志
tail  -n  10  test.log   查询日志尾部最后10行的日志;
tail -n +10 test.log     查询10行之后的所有日志;



head命令：跟tail是相反的，tail是看后多少行日志；例子如下：
head -n 10  test.log     查询日志文件中的头10行日志;
he]]></description><category></category></item><item><title><![CDATA[不推荐使用BeanUtils属性转换工具，帮你解答]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/107411941</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/107411941</guid><author>Arvin_Mr</author><pubDate>Fri, 17 Jul 2020 16:52:42 +0800</pubDate><description><![CDATA[关注我，带了熟悉Java趣事，Java进阶攻略等着你

背景
之前在专栏中讲过“不推荐使用属性拷贝工具”，推荐直接定义转换类和方法使用 IDEA 插件自动填充 get / set 函数。
不推荐的主要理由是：

有些属性拷贝工具性能有点差
有些属性拷贝工具有“BUG”
使用属性拷贝工具容易存在一些隐患（后面例子会讲到）

示例
首先公司内部就遇到过 commons 包的 BeanUtils 进行属性拷贝性能较差的真实案例，然后该同事换成了 Spring 的 BeanUtils 性能好了很多，感兴趣大家可以使]]></description><category></category></item><item><title><![CDATA[Redis关于缓存穿透，缓存击穿，缓存雪崩，缓存失效，缓存并发的问题及解决方案]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/107409980</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/107409980</guid><author>Arvin_Mr</author><pubDate>Fri, 17 Jul 2020 15:51:49 +0800</pubDate><description><![CDATA[关注我，带了熟悉Java趣事，Java进阶攻略等着你

什么是缓存击穿
缓存击穿是指缓存中没有，但数据库中有的数据（一般是缓存时间到期），这时由于并发用户特别多，同时读缓存没有读到的数据，又同时区数据库读取，引起数据库压力瞬间增大，造成的过的压力。
解决方案：

设置热点数据永远不过期。
加互斥锁，互斥锁参考代码如下

什么是缓存穿透
缓存穿透是指缓存和数据库中都没有的数据，而用户不断发起请求，如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者，攻击会导致数据库压力过大。
解决]]></description><category></category></item><item><title><![CDATA[SpringBoot实战：SpringBoot+Mybatis配置Druid多数据源]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/107383000</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/107383000</guid><author>Arvin_Mr</author><pubDate>Thu, 16 Jul 2020 15:10:23 +0800</pubDate><description><![CDATA[关注公众号，有更好的文章等着你

SpringBoot+Mybatis配置Druid多数据源
开篇之前，说一句题外话。多数据源和动态数据源的区别。
1.多数据源，一般用于对接多个业务上独立的数据库（可能异构数据库）。
2.动态数据源，一般用于大型应用对数据切分。
配置参考
如何配置多数据源，网上教程一大堆。可参考 SpringBoot+MyBatis多数据源最简解决方案。
问题描述
在实际开发配置中发现，如果要启用Druid的防火墙监控（WallFilter）和统计监控（StatFilter），多个异构数据]]></description><category></category></item><item><title><![CDATA[HashMap底层实现和原理（源码解析）]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105736506</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105736506</guid><author>Arvin_Mr</author><pubDate>Fri, 24 Apr 2020 17:49:58 +0800</pubDate><description><![CDATA[一、先来熟悉一下我们常用的HashMap
1、概述
HashMap基于Map接口实现，元素以键值对的方式存储，并且允许使用null 建和null　值，　因为key不允许重复，因此只能有一个键为null,另外HashMap不能保证放入元素的顺序，它是无序的，和放入的顺序并不能相同。HashMap是线程不安全的。
2、继承关系
public class HashMap&lt;K,V&gt;extend...]]></description><category></category></item><item><title><![CDATA[Java面试题（十九个模块）面试必备]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105729712</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105729712</guid><author>Arvin_Mr</author><pubDate>Fri, 24 Apr 2020 15:56:28 +0800</pubDate><description><![CDATA[本文分为十九个模块，分别是： Java 基础、容器、多线程、反射、对象拷贝、Java Web 、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM ，如下图

共包含 208 道面试题，本文的宗旨是为读者朋友们整理一份详实而又...]]></description><category></category></item><item><title><![CDATA[java多线程分批处理数据工具类，超好用]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105725194</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105725194</guid><author>Arvin_Mr</author><pubDate>Fri, 24 Apr 2020 10:42:37 +0800</pubDate><description><![CDATA[最近由于业务需要，数据量比较大，需要使用多线程来分批处理，提高处理效率和能力，于是就写了一个通用的多线程处理工具，只需要实现自己的业务逻辑就可以正常使用，现在记录一下
ResultBean类： 返回结果统一bean
package com.ts.common.model;

import java.io.Serializable;

import com.alibaba.fastjson.JSON...]]></description><category></category></item><item><title><![CDATA[分布式事务的四种解决方案]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105713581</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105713581</guid><author>Arvin_Mr</author><pubDate>Thu, 23 Apr 2020 18:02:49 +0800</pubDate><description><![CDATA[分布式事务的四种解决方案
简述
分布式事务指事务的操作位于不同的节点上，需要保证事务的 AICD 特性。
例如在下单场景下，库存和订单如果不在同一个节点上，就涉及分布式事务。
解决方案
在分布式系统中，要实现分布式事务，无外乎那几种解决方案。
一、两阶段提交（2PC）
两阶段提交（Two-phase Commit，2PC），通过引入协调者（Coordinator）来协调参与者的行为，并最终决定这些...]]></description><category></category></item><item><title><![CDATA[JVM总结（面试必备）]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105560013</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/105560013</guid><author>Arvin_Mr</author><pubDate>Thu, 16 Apr 2020 16:17:05 +0800</pubDate><description><![CDATA[JVM知识点总结（面试必备）
JVM体系总体分为四大块
	 类的加载机制
	 JVM内存结构
 	 GC算法 垃圾回收
     GC分析 命令调优



类的加载机制
  	主要关注要点：
  		1.什么是类的加载
  		2.类的生命周期
  		3.类加载器
  		4.双亲委派模型
  		
  1. 什么是类的加载
  	   类的加载指的是将类的.class文件中的二进制数据读取到内...]]></description><category></category></item><item><title><![CDATA[浅谈 Spring框架总结]]></title><link>https://blog.youkuaiyun.com/Arvin_Mr/article/details/80287731</link><guid>https://blog.youkuaiyun.com/Arvin_Mr/article/details/80287731</guid><author>Arvin_Mr</author><pubDate>Fri, 11 May 2018 23:28:03 +0800</pubDate><description><![CDATA[Spring 总结



一、简介

​   Spring 是个开源分层的框架，其目的是用于简化企业级应用程序开发，减少侵入。它是由两个核心部分组成，IOC和AOP。



二、IOC

​   IOC：称为控制反转，也就是将对象的创建权（控制权），交给Spring管理。IOC也有个名字称为DI，也就是依赖注入，之所所以这么说，在spring创建对象的过程中，把对象依赖的属性注入到类中



IO...]]></description><category></category></item></channel></rss>