摘要:
笔试题: 两个线程交替打印1-100的整数 题目说明:两个线程交替打印1-100的整数,一个打印奇数,一个打印偶数,要求输出结果有序。 。public class Test { private static volatile Integer counter = 1; private static v 阅读全文
摘要:
Redis对已过期的key如何处理? 设置了expire的key缓存过期了,但是服务器的内存还是会被占用,这是因为redis所基于的两种删除策略。 redis有两种策略: (主动)定时删除 定时随机的检查过期的key,如果过期则清理删除。(每秒检查次数在redis.conf中的hz配置) (被动)惰 阅读全文
摘要:
什么是事务? 事务是指是程序中一系列严密的逻辑操作,而且所有操作必须全部成功完成,否则在每个操作中所作的所有更改都会被撤消。可以通俗理解为:就是把多件事情当做一件事情来处理,好比大家同在一条船上,要活一起活,要完一起完 。 事物的四个特性(ACID) ● 原子性(Atomicity):操作这些指令时 阅读全文
摘要:
为什么wait notify会放在Object里边?wait(),notify(),notifyAll()用来操作线程为什么定义在Object类中? 1、这些方法存在于同步中; 2、使用这些方法必须标识同步所属的锁; 3、锁可以是任意对象,锁在Java中是对象头中的数据结构中的数据,在JVM中每个对 阅读全文
摘要:
Nacos是阿里巴巴开源的动态服务发现、配置管理和服务管理平台中间件,一个搞定了注册中心和配置中心。 Nacos的安装不再赘述,可以看官网的手册,也比较简单。 下面结合Feign怎么实现基于Nacos实现服务的提供者和消费者。 项目结构如下: feign-provider 是服务提供者: 先搭建一个 阅读全文
摘要:
经典题 爬楼梯: https://leetcode-cn.com/problems/climbing-stairs/ 硬币兑换: https://leetcode-cn.com/problems/coin-change/ 有效括号: https://leetcode-cn.com/problems/ 阅读全文
摘要:
RocketMQ如何保证消息零丢失呢? Producer消息零丢失的解决方案: 1、事务消息机制:使用事务消息能保证生产者一定会将消息写入MQ,但是会降低吞吐量。 2、同步消息重试机制:发送同步消息,如果发生异常,则重试,如果重试超过一定次数仍然失败,则可以先入库,后续再补偿。 Broker消息零丢 阅读全文
摘要:
从ES分页查询数据实例代码(JAVA) 最近做的项目中,为了减轻数据库的压力,许多查询接口都改为走ES去查,而不是直接查MySQL。 当然不是所有的查询都要走ES,还是根据你的业务来,对实时性要求不高的,可以走ES查,如果实时性要求很高,还是建议走MySQL去查。 我的项目工程是SpringBoot 阅读全文
摘要:
RocketMQ 集群部署模式有以下几种: 单 master 模式: 也就是只有一个 master 节点,称不上是集群,一旦这个 master 节点宕机,那么整个服务就不可用,适合个人学习使用。 多 master 模式: 多个 master 节点组成集群,单个 master 节点宕机或者重启对应用没 阅读全文
摘要:
写一个固定容量的同步容器,拥有put和get方法,以及getCount方法,能够支持2个生产者线程以及10个消费者线程的阻塞调用 第一种写法: /** * 面试题:写一个固定容量同步容器,拥有put和get方法,以及getCount方法, * 能够支持2个生产者线程以及10个消费者线程的阻塞调用 * 阅读全文