<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[panda9527z的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/panda9527z</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; panda9527z]]></copyright><item><title><![CDATA[Redis基础数据结构]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107986521</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107986521</guid><author>panda9527z</author><pubDate>Wed, 28 Oct 2020 17:53:50 +0800</pubDate><description><![CDATA[Redis使用接近计算机底层的C语言编写而成，并且在c语言的基础上设计实现了多种基础数据结构，在实现功能的同时达到了非常出色的性能表现。Redis对外提供的String、List、Hash、Set和Zset五种Redis对象皆是基于其基础数据结构实现的。
Redis底层数据结构
简单动态字符串SDS
Redis并未使用C语言内部的字符串表示，而是使用自己构建的简单动态字符串（SDS）作为默认字符串实现。在Redis里，C字符串只会在无需对字符串值进行修改的地方使用，如打印日志。
SDS结构内部包含三个属性：]]></description><category></category></item><item><title><![CDATA[SpringCloud各组件学习记录]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107636844</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107636844</guid><author>panda9527z</author><pubDate>Tue, 28 Jul 2020 20:31:14 +0800</pubDate><description><![CDATA[《Spring Cloud与Docker微服务架构实战》（周立著）摘抄笔录
微服务架构优势与挑战
如今越来越多基于SpringCloud、Dubbo等框架实现的微服务架构开始涌现，逐渐代替了传统的大型单体应用架构。这种变革发生的原因不仅是相关技术进步的推动作用，也很大程度上归因于传统大型单体应用不断涌现出的各种问题：
**复杂性高：**对于百万行级别的大型应用来说，项目包含的模块过多、模块的边界模糊、依赖关系不清晰、代码质量参差不齐、混乱地堆砌在一起，这整个项目非常复杂。每次修改代码都心惊胆战，甚至添加一个]]></description><category></category></item><item><title><![CDATA[流式计算Flink与其Exactly-Once语义实现]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107533514</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107533514</guid><author>panda9527z</author><pubDate>Fri, 24 Jul 2020 15:40:42 +0800</pubDate><description><![CDATA[Flink及Storm、Spark主流流框架比较
Flink作为近年新起的大数据实时处理框架，正逐渐被各大企业采用而变为主流。其相对于Storm、Spark streaming和kafak streaming等同类数据处理框架而言，具有以下特点：
1、低延迟、高吞吐量
2、轻量级分布式快照算法保证Exactly-Once
3、支持EventTime乱序事件处理
4、流处理和批处理统一
5、支持状态计算
相关资料：
深入理解Flink的轻量级异步屏障快照（ABS）算法
解读Flink中轻量级的异步快照机制
谈]]></description><category></category></item><item><title><![CDATA[Kafka学习要点记录]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107493403</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107493403</guid><author>panda9527z</author><pubDate>Wed, 22 Jul 2020 18:13:00 +0800</pubDate><description><![CDATA[kafka基本原理
kafka通过将broker集群将生产者producer和消费者consumer解耦分离，并通过采用不同的消息消费机制实现队列消息模式和发布订阅模式，其重要术语概念如下：
topic: 消息主题，每条消息都被归为某一个topic，不同topic间的消息的生产和消费过程互不干扰，同一topic消息的生产顺序和存储顺序一致，并且消费顺序也大致一致（单一partition内顺序消费）。
partition： 消息分区，topic内部还可进一步分为多个partition，分为多个partitio]]></description><category></category></item><item><title><![CDATA[@Transactional注解式事务使用注意点]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107472677</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107472677</guid><author>panda9527z</author><pubDate>Mon, 20 Jul 2020 21:15:04 +0800</pubDate><description><![CDATA[Spring支持使用注解模式方便地使用事务，@Transactional修饰方法时表示该方法开启事务，修饰类时则表示类中所有方法皆开启事务。@Transactional具有以下属性：




属性名
说明




name
当在配置文件中有多个 TransactionManager , 可以用该属性指定选择哪个事务管理器。


propagation
事务的传播行为，默认值为 PROPAGATION_REQUIRED。


isolation
事务的隔离度，默认值采用 DEFAULT。


timeout
]]></description><category></category></item><item><title><![CDATA[Spring 三级缓存解决bean循环依赖，为何用三级缓存而非二级]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107359916</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107359916</guid><author>panda9527z</author><pubDate>Wed, 15 Jul 2020 17:02:04 +0800</pubDate><description><![CDATA[Spring  bean循环依赖即循环引用。是指2个或以上bean 互相持有对方，最终形成闭环。比如A依赖于B，B依赖于C，C又依赖于A。如下图：
产生循环依赖的方式有两种，一种是通过构造器注入形成的循环依赖，第二种是通过field属性注入形成的循环依赖。Spring通过特殊的bean生成机制解决了第二种方式产生的循环依赖问题，使得循环链的所有bean对象都能正确创建，而构造器注入方式阐释的循环依赖则会抛出异常。两者之间的差异能在bean创建机制中得到解释。
注意此处讨论的bean皆为单例，prototyp]]></description><category></category></item><item><title><![CDATA[阿里java开发手册重点记录]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107346370</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107346370</guid><author>panda9527z</author><pubDate>Tue, 14 Jul 2020 20:42:39 +0800</pubDate><description><![CDATA[编程规约
1、POJO 类中布尔类型的变量，都不要加 is，否则部分框架解析会引起序列化错误。
2、避免通过一个类的对象引用访问此类的静态变量或静态方法，无谓增加编译器解析成本，直接用类名来访问即可。
3、所有的覆写方法，必须加@Override 注解。作用一是检测覆写方法签名一致无差异，二是当抽象类方法签名更改时报错提示开发者同时修改实现。
4、Object 的 equals 方法容易抛空指针异常，应使用常量或确定有值的对象来调用equals。
5、循环体内，字符串的连接方式，使用 StringBuild]]></description><category></category></item><item><title><![CDATA[Spring Boot基于条件的自动配置]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107317478</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107317478</guid><author>panda9527z</author><pubDate>Mon, 13 Jul 2020 15:12:28 +0800</pubDate><description><![CDATA[@Conditional是Spring4新提供的注解，它的作用是按照一定的条件进行判断，满足条件给容器注册bean。
public @interface Conditional {
    Class&lt;? extends Condition&gt;[] value();
}

@Conditional需要传入一个Class数组，并且需要继承Condition接口：
public interface Condition {
    boolean matches(ConditionContext var]]></description><category></category></item><item><title><![CDATA[@SpringBootApplication注解与Starter]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107313565</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107313565</guid><author>panda9527z</author><pubDate>Mon, 13 Jul 2020 14:25:46 +0800</pubDate><description><![CDATA[@SpringBootApplication实际上是一个复合注解，其源码中包含如下注解：
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = {
		@Filter(type = FilterType.CUSTOM, classe]]></description><category></category></item><item><title><![CDATA[Spring Cloud/Feign学习记录]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107251744</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107251744</guid><author>panda9527z</author><pubDate>Fri, 10 Jul 2020 16:09:11 +0800</pubDate><description><![CDATA[Spring Cloud
SpringCloud旨在快速搭建分布式微服务架构，实现大型项目的功能拆分，将不同服务功能拆分为单独的模块。
SpringCloud的基础功能：
服务治理： Spring Cloud Eureka
客户端负载均衡： Spring Cloud Ribbon
服务容错保护： Spring Cloud Hystrix
声明式服务调用： Spring Cloud FeignAPI
网关服务：Spring Cloud Zuul
分布式配置中心： Spring Cloud Config
当搭建]]></description><category></category></item><item><title><![CDATA[RESTful与HTTP各请求方法学习记录]]></title><link>https://blog.youkuaiyun.com/panda9527z/article/details/107247330</link><guid>https://blog.youkuaiyun.com/panda9527z/article/details/107247330</guid><author>panda9527z</author><pubDate>Fri, 10 Jul 2020 12:24:45 +0800</pubDate><description><![CDATA[REST定义与RESTful
REST全称Representational State Transfer，直译即表现层状态转移，根据名称较难理解其含义，它并非某种技术框架，而是一种设计API的模式。REST定义了一系列设计API的约束规范，符合REST约束风格和原则的应用程序或设计就是RESTful。REST的主要设计原则有：
1、将网络上的所有事物抽象为资源，并且每个资源都有一个唯一资源标识符。
2、代表资源的url中仅包含名词，不包含动作。
3、对资源的操作类型体现在HTTP请求方法中，如POST、GE]]></description><category></category></item></channel></rss>