- 新增未读消息提醒,可在个人主页查看未读消息啦~~~
- 登录可以收到通知哦。。。
- 登录也可以发送悄悄话哦。。。
- 愿你有前进一寸的勇气,亦有后退一尺的从容。
- 登录可以收到通知哦。。。
- 告诉自己,明天,肯定会更好。
- 登录也可以发送悄悄话哦。。。
Redis的三种延迟队列
简介:Redis的延迟队列优点,Redis延迟队列的实现方式,使用Sorted Set实现,监听过期key,Redis发布订阅模式,启用键空间通知,延迟队列实现原理,Redisson实现延迟队列,实现原理,Redis延迟队列的使用场景,订单超时自动处理,消息重试机制,异步通知和提醒,定时任务调度,分布式锁的超时处理,Redisson实现延迟队列,Sorted Set(有序集合),Redis的过期key机制,推荐方式
Redis特殊数据结构
简介:Bitmap (位图)
Bitmap 存储的是连续的二进制数字(0 和 1),通过 Bitmap, 只需要一个 bit 位来表示某个元素对应的值或者状态,key 就是对应元素本身 。我们知道 8 个 bit 可以组成一个 byte,所以 Bitmap 本身会极大的节省储存空间。
HyperLogLog(基数统计)
Geospatial (地理位置)
Nginx配置文件
简介:Nginx常用的命令
Nginx基本概念
Nginx文件目录结构及原理图
配置文件详解
location语法规则
user
worker_processes
error_log
pid
events
http
include
log_format
sendfile
keepalive_timeout
gzip
server
pid 打开失败及解决方案
配置 Nginx 为静态资源提供服务
Nginx的日志文件配置
日志文件的存储路径
Nginx访问日志轮询切割
Nginx的缓存配置
缓存配置
自动列目录配置
Nginx反向代理
什么是正向代理?
什么是反向代理?(Reverse Proxy)
Nginx负载均衡
什么是负载均衡?
负载均衡的实现
HTTP Upsteam模块
ip_hash指令
server指令
upstream指令及相关变量
Java中CAS机制详解
简介:在执行CAS操作时,计算机会检查内存位置当前是否存放着期望值,如果是,则将内存位置的值更新为新值;若不是,则不做任何修改,保持原有值不变,并返回当前内存位置的实际值。CAS的基本概念CAS基本原理Java中的CAS实现什么是unsafe原子操作类解析CAS机制的优缺点CAS应用场景CAS机制优化
Java反射Reflect机制详解
简介:反射的基本概念;反射基本原理;反射应用场景;反射基本使用;获取类的Class对象;获取构造方法并实例化对象;获取和调用方法;获取和修改字段;反射工具类;反射源码解读;反射优缺点;为什么需要反射;
反射关键信息
Java反射是一个强大的工具,极大地增强了Java语言的动态性和灵活性。然而,在使用反射时需要权衡其性能开销和安全风险。`Java反射`有优点也有缺点,从整体上看,`Java反射`是以牺牲了小部分的性能换取了更好的扩展性和灵活性,`牺牲小我成就大我`,而且,随着现代硬件设备能力越来越强,这点小性能的牺牲是完全值得的。理解反射的原理和使用场景,可以更好地应用反射技术来解决实际开发中的问题。
- `Class`: 代表类的实体,在运行时加载类时会创建对应的Class对象。
- `Constructor`: 代表类的构造方法。
- `Method`: 代表类的方法。
- `Field`: 代表类的字段。
`Java反射`最核心的类位于JDK源码 `java.lang.reflect`包下,比如`Class、Constructor、Field 和 Method`等,他们提供了对类和对象运行时信息进行检查和操作的方法。
Mybatis 一级缓存和二级缓存
简介:查询缓存
一级缓存
应用场景
生效的条件
测试
一级缓存原理
工作流程
源码分析
一级缓存总结
二级缓存
二级缓存配置
源码分析
为什么 MyBatis 默认不开启二级缓存?
关于Spring中的@Async注解以及为什么不建议使用
简介:Spring 已经实现的线程池
异步的方法
Spring中启用@Async
配置类
启用方式
@Async默认线程池
使用方式
无返回值调用
有返回值Future调用
@Async应用自定义线程池
实现接口AsyncConfigurer
继承类AsyncConfigurerSupport
配置自定义的TaskExecutor
源码解析
为什么不建议直接使用 @Async 注解?
Async 注解的优点
Async 注解的局限性
不建议直接使用 Async 注解的原因
如何更好地使用 Async 注解
Spring事件ApplicationEvent源码浅读
简介:demo应用 实现 基于注解 事件过滤 异步事件监听 源码解读 总结 ApplicationContext 中的事件处理是通过 ApplicationEvent 类和 ApplicationListener 接口提供的。如果将实现了 ApplicationListener 接口的 bean 部署到容器中,则每次将 ApplicationEvent 发布到ApplicationContext 时,都会通知到该 bean,这简直是典型的观察者模式。设计的初衷就是为了系统业务逻辑之间的解耦,提高可扩展性以及可维护性。
Java8中Stream流的常用姿势
简介:1 Stream概述
2 Stream的创建
3 Stream的使用
3.1 遍历/匹配(foreach/find/match)
3.2 筛选(filter)
3.3 聚合(max/min/count)
3.4 映射(map/flatMap)
3.5 归约(reduce)
3.6 收集(collect)
3.6.1 归集(toList/toSet/toMap)
3.6.2 统计(count/averaging)
3.6.3 分组(partitioningBy/groupingBy)
3.6.4 接合(joining)
3.6.5 归约(reducing)
3.7 排序(sorted)
3.8 提取/组合
4 Stream源码解读
三元运算符引发的自动拆装箱问题
简介:Java中的自动拆箱和装箱问题,以及三元运算符中类型不一致导致的空指针异常问题。作者通过查看Java字节码,演示了代码中出现空指针异常的原因,并提醒读者在编写代码时要注意类型的转换问题。
【面试系列】JDK动态代理和CGLIB静态代理
简介:JDK动态代理代码实例
Cglib 代理代码实例
两者优缺点JDK动态代理只能代理接口实现类,原因是JDK动态代理是基于接口实现的,代理对象的类型由接口列表决定。如果你想代理一个类而不是一个接口,你需要使用其他的代理技术,比如CGLIB。
修改jar包中的文件内容
简介:导引
查找是否存在需要修改的文件
vim命令修改配置文件
jar命令替换jar包中的文件(也可新增)
解压jar包,修改后重新打包jar
修改clas文件
jar命令参数
Go语言的容器
简介:Arrays(数组)
Slices(切片)
Slice literals(切片字面量)
切片默认值
切片长度和容量
用 make 创建切片
切片追加元素
Range
Map
定义 Map
map 容量
修改 Maps
用切片作为 map 的值
Map 的长度
遍历map
排序map
map删除key和value
清空 map 中的所有元素
sync.Map(在并发环境中使用的map)
list(列表)
初始化列表
列表中插入元素
列表中删除元素
遍历列表
Go语言的基本概念与语法
简介:包package
Imports(导入)
基本数据类型
bool
string
int
byte
rune
float
complex
变量
变量声明
变量的初始化
匿名变量
常量
iota 常量生成器
for语句
for语法结构
for 是Go中的while
if语句
If 和 else
switch
switch 的求值顺序
没有条件的switch
Stacking defers(defer栈)
go中关键字
类型转换
类型推断
Go函数
Multiple results(多值返回)
Named return values(命名的返回值)
函数值
函数闭包
从注解@EventListener和@TransactionalEventListener掌握Spring的事件机制原理
简介:Spring事件监听机制概述Spring为我们提供的一个事件监听、订阅的实现,内部实现原理是观察者设计模式;为的就是业务系统逻辑的解耦,提高可扩展性以及可维护性。事件发布者并不需要考虑谁去监听,监听具体的实现内容是什么,发布者的工作只是为了...
ClickHouse之Explain查看执行计划
简介:ClickHouse之Explain查看执行计划
基本语法
EXPLAIN 类型
EXPLAIN PLAN
EXPLAIN AST
EXPLAIN SYNTAX
EXPLAIN PIPELINE
EXPLAIN ESTIMATE
ClickHouse常见问题之使用另一个表中的值更新行
简介:问题描述有两张表,A表是广告活动名称,B表是广告活动产生的报表数据(包含广告活动名称);想把B表中的名称修改为B表中的名称。更新语句如下:内部查询没问题,但是总是异常。结果如下:问题排查经官网和google查询ClickHouse不支持AL...
ClickHouse之常见的时间周期函数
简介:前言在工作中,如果使用了ClickHouse作为数据的存储的话,那么难免会遇到关于时间的转换问题比如:字符串转时间,日期等特定格式。时区相关timeZone返回服务器的时区。如果它在分布式表的上下文中执行,那么它会生成一个普通列,其中包含与...
ClickHouse之采样查询(SAMPLE)
简介:SAMPLE概念该SAMPLE子句允许近似于SELECT查询处理。启用数据采样时,不会对所有数据执行查询,而只对特定部分数据(样本)执行查询。例如,如果您需要计算所有访问的统计信息,只需对所有访问的1/10分数执行查询,然后将结果乘以10即...