存档

作者存档

位图在 12306 中的应用

2021年5月30日 没有评论

记得 12306 刚上线的时候,就在想 12306 是如何卖票,一趟车从北京到上海,中间经过了 N 个站,大家可以买其中的任意两站,而因为卖出了一个一张票,从北京到上海很多站的车票都会变动,当时就感觉这个算法太复杂了,一般人还真写不出来,由此虽然很多人都在吐槽 12306,但是我却一直任务 1230[……]

Read more

分类: Redis 标签: , ,

再谈 ThreadLocal

2021年4月22日 没有评论

几年前我曾经写过两篇关于 ThreadLocal 的文章,分别是ThreadLocal类之简单理解ThreadLocal类之简单应用示例,不过限于当时的水平,有些问题并没有说的很明白,所以今天再写一篇文章,重新说说这个类。

我们首先看一个例子:


package cn.bridg[......]

Read more

分类: Java 标签:

以 Java 为例简单说明常见 IO 模型

2021年3月30日 没有评论

1. BIO

我们先看一个 Java 例子:


package cn.bridgeli.demo;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;[......]

Read more

分类: Java 标签: ,

Java 的引用类型和使用场景

2021年2月28日 没有评论

每种编程语言都有自己操作内存中元素的方式,例如在 C 和 C++ 里是通过指针,而在 Java 中则是通过“引用”。在 JDK.1.2 之后,Java 对引用的概念进行了扩充,将引用分为了:强引用(Strong Reference)、软引用(Soft Reference)、弱引用(Weak Refe[……]

Read more

分类: Java 标签: ,

用两个线程交替打印数字和字母

2021年2月7日 没有评论

前一段时间听马士兵老师讲课,讲到某公司的一个面试,两个线程,其中一个线程输出ABC,另一个线程输出123,如何控制两个线程交叉输出1A2B3C,由于本人多线程掌握的一直不是很好,所以听完这道题,个人感觉收获良多,这是一个学习笔记。这道题有多种解法,不过有些属于纯炫技,所以只记录常见的三种解法。首先看[……]

Read more

利用 DeferredResult 实现 http 轮询实时返回数据接口

2021年1月9日 没有评论

博客有半年没更新了,不是我偷懒,而是之前服务器到期了,开博客这么多年,钱其实花了不少,但是没有一点收益,所以上了谷歌广告,如果文章对你稍稍有一点帮助,希望能花一秒钟帮忙点一下广告,谢谢。

今天这篇文章呢,不难,其实是解答我一直以来心里的一个疑问。是这样的,之前看五八技术委员会主席沈剑老师的公众[……]

Read more

分类: Java 标签: , ,

规则引擎入门

2020年7月12日 没有评论

关于规则引擎,我们在工作中应该会经常遇到,例如我们对不同的用户给不同的折扣。前一段时间在网上闲逛,发现一个很简单的规则引擎,一下是学习笔记。

在使用之前,我们要先导入 jar 包:


        <dependency>
            <group[......]

Read more

分类: Java 标签: ,

关于 CPU 乱序执行的证明

2020年7月5日 没有评论

在学习 volatile 关键字的时候,我们都知道他有两个作用:1. 内存可见性;2. 禁止指令重排序。但是我们一般都是说,那么怎么证明呢?请看下面这段代码:


package cn.bridgeli.demo;

/**
 * @author BridgeLi
 * @date[......]

Read more

分类: Java 标签: ,

Redis 实现布隆过滤器

2020年6月6日 没有评论

昨天听马士兵教育张福刚讲公开课,里面讲解了布隆过滤器,今天无聊没事干,整理了一下笔记。关于布隆过滤器是什么东西,有什么应用场景就不做讨论了,网上有很多,大家可以自行了解,只记录实现:

1. pom 依赖


        <dependency>[......]

Read more

分类: Java 标签:

Mac:终端和 shell 配置

2020年5月2日 没有评论

今天不写博客了,水一篇玩玩。老祖宗说,工欲善其事,必先利其器。很多做开发的同学都喜欢 Mac,我也是,自从用了之后爱不释手,但是当帮助一些同学解决问题的时候,总是发现,有些同学的终端使用的是 Mac 自带的终端和 shell,特别难用,完全无法发挥 Mac 的威力,然后给他们推荐怎么配置一下更好用,[……]

Read more

分类: 其他 标签: , , , ,