<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[github_39602765的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/github_39602765</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; github_39602765]]></copyright><item><title><![CDATA[延迟队列实现]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/124154633</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/124154633</guid><author>github_39602765</author><pubDate>Wed, 13 Apr 2022 18:25:50 +0800</pubDate><description><![CDATA[延迟队列定义
首先，队列这种数据结构相信大家都不陌生，它是一种先进先出的数据结构。普通队列中的元素是有序的，先进入队列中的元素会被优先取出进行消费；
延时队列相比于普通队列最大的区别就体现在其延时的属性上，普通队列的元素是先进先出，按入队顺序进行处理，而延时队列中的元素在入队时会指定一个延迟时间，表示其希望能够在经过该指定时间后处理。
延时队列的应用
延时队列在项目中的应用还是比较多的，尤其像电商类平台：
1、订单成功后，在30分钟内没有支付，自动取消订单
2、外卖平台发送订餐通知，下单成功后 60s 给用]]></description><category></category></item><item><title><![CDATA[Consul 入门]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/122539471</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/122539471</guid><author>github_39602765</author><pubDate>Mon, 17 Jan 2022 14:48:29 +0800</pubDate><description><![CDATA[Consul 旨在为微服务、服务网格下提供服务计算网络解决方案，通过 Raft 共识算法和 Gossip 提供高可用和一致性。]]></description><category></category></item><item><title><![CDATA[Java 中的 lambda 表达式如何工作？]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/113599581</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/113599581</guid><author>github_39602765</author><pubDate>Wed, 03 Feb 2021 13:27:13 +0800</pubDate><description><![CDATA[lambda 表达式在 Java 代码和 JVM 内部是什么样的？显然，它是某种类型的值，而 Java 只允许两种类型的值：原始类型和对象引用。lambda 显然不是原始类型，因此 Lambda 表达式必须是某种返回对象引用的表达式。]]></description><category></category></item><item><title><![CDATA[Java 日期类]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/113599331</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/113599331</guid><author>github_39602765</author><pubDate>Wed, 03 Feb 2021 13:23:24 +0800</pubDate><description><![CDATA[Java 的 API 提供了很多有用的组件，能帮我们构建复杂的应用。比如日期处理，Java 从 1.0，就提供了 java.util.Date 类用于支持日期和时间的处理，不过由于该 API 设计的缺陷，产生了糟糕的易用性。随着 1.0 退出舞台，Date 类中的很多方法都被废弃了，Java 1.1 使用 java.util.Calendar 类取而代之，很不幸，Calendar 类也有类似的问题和设计缺陷，导致使用这些方法写出的代码非常容易出错。
所有这些缺陷和不一致导致用户们转投第三方的日期和时间库，比]]></description><category></category></item><item><title><![CDATA[Java8 Stream学习]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/89053679</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/89053679</guid><author>github_39602765</author><pubDate>Sat, 06 Apr 2019 11:44:55 +0800</pubDate><description><![CDATA[系统的整理一下 java8 Streams 的使用。

思想

是函数式编程（functional programming）的一种 Java 实现


强调将计算过程分解成可复用的函数，主要使用 map 方法和 reduce 方法组合而成的 MapReduce 算法，最好的实现 Apache Hadoop


关于函数式编程，请参考阮一峰 的 函数式编程初探


Streams 和 Collect...]]></description><category></category></item><item><title><![CDATA[解决 Hibernate N+1 问题]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/89053614</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/89053614</guid><author>github_39602765</author><pubDate>Sat, 06 Apr 2019 11:38:26 +0800</pubDate><description><![CDATA[问题
作为一个例子，我将使用在线图书订购应用程序的简化版本。在这样的应用程序中，我可能会创建一个如下所示的实体来代表采购订单：
@Entity
public class PurchaseOrder {

    @Id
    private String id;
    private String customerId;

    @OneToMany(cascade = ALL, fetch...]]></description><category></category></item><item><title><![CDATA[Java Cache 入门]]></title><link>https://blog.youkuaiyun.com/github_39602765/article/details/89053497</link><guid>https://blog.youkuaiyun.com/github_39602765/article/details/89053497</guid><author>github_39602765</author><pubDate>Sat, 06 Apr 2019 11:31:13 +0800</pubDate><description><![CDATA[什么是缓存
术语缓存在计算机中无处不在。在应用程序设计的上下文中，它经常被用来描述应用程序开发人员利用单独的内存或低延迟的数据结构。缓存，用于临时存储或缓存信息的副本或引用，应用程序可能会在稍后的某个时间点重复使用，从而减轻重新访问或重新创建它的成本。
在 JCache 的上下文中，术语缓存描述了 Java 的技术开发人员使用缓存提供程序临时缓存 Java 对象。
JSR107(JCache)
J...]]></description><category></category></item></channel></rss>