分类 技术 下的文章

Supervisor 进程守护简单教程以 Debian 为例,首先是安装(安装后会自动启动):sudo apt-get install supervisor接着可以确认一下是否自启,没有的话手动...

Realm 中转简单教程Realm 是一个中转工具:A simple, high performance relay server written in rust.项目地址:https://gi...

问:有哪些常见的SQL优化手段?这也是个高频面试题,并且并非面试造火箭的那种问题,实际项目中也会有非常多的地方需要进行SQL优化避免使用 Select *select *中,无用字段会增加网络带...

缓存雪崩:同一时间段内大量缓存失效或Redis服务宕机,导致大量请求到达数据库,给数据库带来巨大压力。解决方案:给不同的Key的TTL(存活时间)添加一个随机值Redis宕机时:利用Redis集...

缓存击穿:缓存中一个热点数据过期或失效时,由于该数据非常受欢迎,会有大量请求直接打到数据库上,导致数据库负载增大、相应变慢甚至瘫痪。解决方式:互斥锁在查询数据库之前首先获取分布式锁,更新redi...

缓存穿透:查询一个不存在的数据,Mysql查询不到也没有写入缓存,导致每次请求都会查询数据库。(比如恶意请求)解决方案:缓存空数据:返回数据为空时仍然缓存(但是需要加过期时间)。优点:简单 缺...

Java 代理的几种实现方式静态代理通过创建一个代理类来控制对目标对象的访问(也就是手动编写一个代理类)。静态代理的优点是易于理解和实现,缺点是每个接口都需要定义一个代理类,而且功能较弱。动态代...

哈希计算(Hashing)是一种将数据通过哈希函数(Hash Function)转换成固定长度的值(hash value)的过程,是一个通用的计算方式。在Java中的表现就是hashcode()...

相同点:都不能实例化都可以被实现或者继承继承或者实现的子类需要实现全部抽象方法,否则需要声明为抽象类不同点:不同点抽象类接口声明abstractinterface继承/实现extendsimpl...

只列出主要新特性Java 8Lambda 表达式函数式接口Stream API新的日期和时间 API默认方法Optional类Java 9-11Java 9模块化系统G1成为默认垃圾回收器(之...