自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 注册异步线程池

new ThreadPoolTaskExecutor()创建线程池。设置任务等待时间,如果超过该值还没有销毁就强制销毁,允许线程执行完毕后再关闭线程池。设置线程池的拒绝策略。

2023-11-03 15:48:19 56

原创 socket笔记

向对方发送消息使用socket.getOutPutStream(),然后利用PrintWriter的write方法写入。通过socket可以在服务端和客户端传输和接收数据。读取对方发送的消息使用bufferedReader。客户端连接服务器要指定IP地址和端口。服务器和客户端相互传输数据使用流。服务器接收客户端要监听该端口。机械臂项目中的使用如下。

2023-11-02 16:36:28 42

原创 springboot整合mongodb

二,编写application.properties文件。

2023-05-04 17:13:43 102

原创 在拦截器中使用threadlocal进行登录校验

三,编写注解NoAuthorization。二,编写tokenInterCepter。一,编写UserThreadLocal类。五,使用threadLocal。

2023-05-03 11:04:23 314 1

原创 redis相关面试题

但是风险在于,如果请求b在查询缓存的时候,正好缓存数据过期,查到数据库的旧数据,然后网络出现问题,没有更新完缓存,这时候请求a将缓存删除,然后请求b也将旧值更新到缓存,导致缓存不一致。一般使用redision实现分布式锁,原理就是只要线程开启成功,就会开启一个看门狗,看门狗会每隔一段时间就检查锁的过期时间,如果快要过期了,线程对资源的处理还没有完成,就会对锁延期,数据库中的数据发生变化的同时对缓存中的数据进行删除,当再次请求数据的时候,缓存中没有就回到数据库中查询,再放到缓存。

2023-04-17 15:32:52 81 1

原创 rocketMQ如何确保顺序性消费?

rocketMQ错乱性消费消息主要发生在一个队列(queue)对应多个消费者(consumer)的情况中。假如有三个消息,三条消息的消费时间依次是2s,10s,5s,那很可能第一条和第三条被先消费,第二条最后消费。2,就是用一个queue和一个consumer,在consumer内部用内存队列的形式给消息排队。1,拆分queue。有几个消费者就拆分为几个queue,使queue和consumer一一对应;

2023-04-14 20:02:05 303 1

原创 rocketMQ如何确保消息不丢失?

生产者每次发送消息,就会给消息分配一个id,并将消息记录到消息表中,如果mq接收到了消息,就会给生产者发送一个ack消息,告诉生产者收到消息了。如果mq没有收到消息,就会给生产者发送一个nack消息,告诉生产者消息没收到,并将消息的状态标记为失败,生产者就可以在消息表中根据消息状态进行重试。开启持久化机制,mq就会将消息持久化到磁盘,如果程序挂了,消息也不会丢失。这种情况我们在我们代码中处理完消息的时候,再手动调用一下ack,如果还有消息没有处理完,mq就会将没处理完的消息给其他消费者消费。

2023-04-14 19:50:54 375 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除