07 2024 档案
摘要:在 MySQL 集群架构中有两种主流的集群实现,一种是读写分离,而另外一种则是数据分片。所谓的数据分片其实就是今天要聊的分库分表技术。 分库分表技术不但是日常工作中用于解决数据库中的数据量会急剧增长,解决单库单表性能瓶颈的一种方案,更是面试中的高频知识点。 在阿里巴巴的《Java 开发手册》中规定:
阅读全文
摘要:所谓的一致性问题是指,在同时使用缓存和数据库的情况下,要确保数据在缓存与数据库中的更新操作保持同步。也就是当对数据进行修改时,无论是先修改缓存还是先修改数据库,最终都要保证两者的数据是一样的,不会出现数据不一样的问题。 1.一致性问题解决方案 缓存和数据库一致性的经典解决方案有以下两个: 使用延迟双
阅读全文
摘要:StampedLock 是 Java 8 引入的一种高级的锁机制,它位于 java.util.concurrent.locks 包中。与传统的读写锁(ReentrantReadWriteLock)相比,StampedLock 提供了更灵活和更高性能的锁解决方案,尤其适用于读操作远多于写操作的场景。
阅读全文
摘要:XXL Job 是一个开源的分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展的分布式任务调度框架。 这两天咱们开发的 AI Cloud 项目中,也使用到了 XXL Job 来执行分布式任务的调度,可以看出它的部署和使用虽然步骤很多,但用起来还是很简单的。 因为其本身为 Spri
阅读全文
摘要:使用 RabbitMQ 和 RocketMQ 的人是幸运的,因为这两个 MQ 自身提供了延迟队列的实现,不像用 Kafka 的同学那么苦逼,还要自己实现延迟队列。当然,这都是题外话,今天咱们重点来聊聊 RabbitMQ 延迟队列的实现原理,以及 RabbitMQ 实现延迟队列的优缺点有哪些? 很多人
阅读全文
摘要:萝卜快跑是百度旗下的自动驾驶出行服务平台,提供全无人、半无人、有人驾驶三种模式的出行选择,目前已经正式投放到武汉市场开始运营了。 我们可以通过百度地图 APP、“萝卜快跑”小程序等打到“萝卜快跑”无人驾驶网约车。不过目前“萝卜快跑”只开放了汽车的后排座位,所以一辆车最多能乘坐三人。 也有很多人会担忧
阅读全文
摘要:在职业生涯中,几乎每个 Java 开发者都可能遇到所谓的“空窗期”(一段没有正式工作的时间),而这些空窗期有长有短,短的空窗期一般不用担心,HR 和技术面试官通常不会追究,也不会影响获得面试的机会。 但如果空窗期比较长,那就比较麻烦了,首先它可能会影响你拿到面试机会,其次招聘方也一定会询问空档期长的
阅读全文
摘要:@Async 是 Spring 3.0 提供的一个注解,用于标识某类(下的公共方法)或某方法会执行异步调用。 接下来,我们来看下 @Async 的基本使用和实现原理。 1.基本使用 @Async 基本使用可以分为以下 3 步: 项目中开启异步支持 创建异步方法 调用异步方法 1.1 开启异步支持 以
阅读全文
摘要:简历的重要性相信大家都是清楚的,简历的好坏直接决定了面试机会的多少,以及是否有面试机会。 例如,上周我这把一个 92 院校的同学推荐给朋友表哥了,他表哥是某知名电商公司 Leader 级别的人物,他去这个 PDD 已经 5 年了,是位不折不扣的大佬,但推荐的结果却令人感到失望,不出意外的挂掉了,这是
阅读全文
摘要:零拷贝技术和多路复用技术是现代计算机系统和网络编程中两项重要的优化手段,旨在提高数据处理和传输的效率。如高性能框架 Netty 中,即使用了零拷贝技术又使用了多路复用技术,同时来保证 Netty 框架的高性能运行。 1.零拷贝技术 零拷贝(Zero-copy)技术是一种计算机操作系统中用于提高数据传
阅读全文