摘要: Google 出的 Guava 是 Java 核心增强的库,应用非常广泛。 我平时用的也挺频繁,这次就借助日常使用的 Cache 组件来看看 Google 大牛们是如何设计的。 阅读全文
posted @ 2018-08-01 08:19 crossoverJie 阅读(818) 评论(0) 推荐(0)
摘要: 之前在做 秒杀架构实践 时有提到对 distributed-redis-tool 的一次小升级,但是没有细说。 阅读全文
posted @ 2018-07-30 08:01 crossoverJie 阅读(754) 评论(2) 推荐(2)
摘要: Netty 是一个高性能的 NIO 网络框架,本文基于 SpringBoot 以常见的心跳机制来认识 Netty。 阅读全文
posted @ 2018-07-27 08:33 crossoverJie 阅读(1853) 评论(0) 推荐(3)
摘要: 之前在 Java-Interview 中提到过秒杀架构的设计,这次基于其中的理论简单实现了一下。 本次采用循序渐进的方式逐步提高性能达到并发秒杀的效果,文章较长请准备好瓜子板凳(liushuizhang😂)。 阅读全文
posted @ 2018-07-26 08:02 crossoverJie 阅读(2808) 评论(12) 推荐(14)
摘要: 首先标题党一下,其实这篇文章主要是记录我的第二个过 1K star 的项目 Java-Interview,顺便分享下其中的过程及经验。 阅读全文
posted @ 2018-07-25 09:11 crossoverJie 阅读(1228) 评论(4) 推荐(3)
摘要: 本文接着上文应用限流进行讨论。 之前谈到的限流方案只能针对于单个 JVM 有效,也就是单机应用。而对于现在普遍的分布式应用也得有一个分布式限流的方案。 基于此尝试写了这个组件: https://github.com/crossoverJie/distributed-redis-tool 阅读全文
posted @ 2018-07-24 08:12 crossoverJie 阅读(1593) 评论(3) 推荐(3)
摘要: LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。 阅读全文
posted @ 2018-07-23 08:02 crossoverJie 阅读(671) 评论(0) 推荐(0)
摘要: 分布式锁在分布式应用中应用广泛,想要搞懂一个新事物首先得了解它的由来,这样才能更加的理解甚至可以举一反三。 首先谈到分布式锁自然也就联想到分布式应用。 在我们将应用拆分为分布式应用之前的单机系统中,对一些并发场景读取公共资源时如扣库存,卖车票之类的需求可以简单的使用同步或者是加锁就可以实现。 但是应用分布式了之后系统由以前的单进程多线程的程序变为了多进程多线程,这时使用以上的解决方案明显就不够了。 阅读全文
posted @ 2018-07-20 08:32 crossoverJie 阅读(3643) 评论(11) 推荐(0)
摘要: 开发中不免会遇到需要所有子线程执行完毕通知主线程处理某些逻辑的场景。 或者是线程 A 在执行到某个条件通知线程 B 执行某个操作。 可以通过以下几种方式实现: 阅读全文
posted @ 2018-07-19 08:31 crossoverJie 阅读(931) 评论(3) 推荐(1)
摘要: 不管是在面试还是实际开发中都是一个应该掌握的技能。 阅读全文
posted @ 2018-07-18 08:35 crossoverJie 阅读(1080) 评论(7) 推荐(1)