<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Goodmorning_Java的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Goodmorning_Java</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Goodmorning_Java]]></copyright><item><title><![CDATA[springboot获取动态配置]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/100513397</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/100513397</guid><author>Goodmorning_Java</author><pubDate>Tue, 03 Sep 2019 10:48:50 +0800</pubDate><description><![CDATA[用于实现 项目部署在各个环境的配置切换。。无需手动去修改项目active配置。。也可以实现 获取远程配置文件，避免不同环境（开发、测试、生产）的配置切换
动态获取到配置文件信息
1、实现接口 EnvironmentPostProcessor
public class DynamicEnvironmentPostProcessor implements EnvironmentPostProcesso...]]></description><category></category></item><item><title><![CDATA[如何解决redis的并发竞争key的问题]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/97613409</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/97613409</guid><author>Goodmorning_Java</author><pubDate>Sun, 28 Jul 2019 12:55:31 +0800</pubDate><description><![CDATA[分布式锁


普通的加锁是能是单点的


分布式项目需要使用分布式锁，实现方式：redis、zookeeper等


分布式锁的要求
 互斥性：在任意一个时刻，只有一个客户端持有锁。
 无死锁：即便持有锁的客户端崩溃或者其他意外事件，锁仍然可以被获取。
 容错：只要大部分Redis节点都活着，客户端就可以获取和释放锁



分布式锁的实现方式，推荐zookeeper方式
 数据库
 Memcach...]]></description><category></category></item><item><title><![CDATA[kafka的选型]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/97612966</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/97612966</guid><author>Goodmorning_Java</author><pubDate>Sun, 28 Jul 2019 12:22:39 +0800</pubDate><description><![CDATA[背景：项目中使用到了kafka，可你知道为什么使用kafka吗
kafka是什么：

分布式的消息队列

消息队列带来的优势：

解耦 	冗余 	削峰

kafka带来的优势：

高扩展（动态扩展）：当需要增加broker结点时，新增的broker会向zookeeper注册，而producer及consumer会通过zookeeper感知这些变化，并及时作出调整。
消息有序：topic中每一个区的...]]></description><category></category></item><item><title><![CDATA[redis如何保证数据都是热点数据]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/97244415</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/97244415</guid><author>Goodmorning_Java</author><pubDate>Thu, 25 Jul 2019 11:27:56 +0800</pubDate><description><![CDATA[背景
众所周知，redis是纯内存的操作。所以速度极快。然而内存的大小是有限的。
如:mysql中有2000w的数据，redis中只存20w的数据，那么如何保证redis中的数据都是热点数据呢？
答案：redis内存数据集达到一定大小的时候，就会实行数据淘汰策略，内存的淘汰机制的初衷是为了更好地使用内存
写在淘汰策略之前：reids 过期策略
我们在设置一个key的时候，一般会给这个key设置一个...]]></description><category></category></item><item><title><![CDATA[springBoot启动时的初始化]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/90715060</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/90715060</guid><author>Goodmorning_Java</author><pubDate>Thu, 13 Jun 2019 18:24:35 +0800</pubDate><description><![CDATA[springBoot启动时的初始化方法
1、实现 CommandLineRunner 接口。重写run方法。使用注解。启动时自动执行
2、实现 ApplicationRunner 接口。重写run方法。使用注解。启动时自动执行
3、实现 ApplicationListener 接口。重写onApplicationEvent方法。需要手动注入到启动类
@SpringBootApplication(e...]]></description><category></category></item><item><title><![CDATA[mongoDB读写分离]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/90695845</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/90695845</guid><author>Goodmorning_Java</author><pubDate>Thu, 30 May 2019 13:54:42 +0800</pubDate><description><![CDATA[背景
最近项目数据量越来越大，导致mongo的数据库压力也越来越大。在结构优化、索引优化之后，为了进一步优化系统，想到读写分离。
java端配置读写分离
这里，mongo采用的是副本集（Replica Set）的部署方式
这里采用的事xml配置文件形式:
read-preference=“SECONDARY_PREFERRED”，这个配置
&lt;!--读写分离详细说明：
		mongodb复制集...]]></description><category></category></item><item><title><![CDATA[mongoDB的写入安全机制]]></title><link>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/90519344</link><guid>https://blog.youkuaiyun.com/Goodmorning_Java/article/details/90519344</guid><author>Goodmorning_Java</author><pubDate>Fri, 24 May 2019 16:51:47 +0800</pubDate><description><![CDATA[mongo写操作造成数据丢失问题解决方案

在项目开发过程中，不免用到nosql数据库，mongoDB是最常用的数据库之一。mongoDB是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
问题
mongoDB自身的安全机制，默认normal，insert 不会返回结果。update 、remove操作返回的结果是mongo刷新到内存的...]]></description><category></category></item></channel></rss>