10 2024 档案

摘要:获取 cookie:@CookieValue @GetMapping("/getCookie") public String getCookie(@CookieValue(value = "JSESSIONID") String jSessionId) { return jSessionId; } 阅读全文
posted @ 2024-10-31 13:19 CyrusHuang 阅读(3) 评论(0) 推荐(0) 编辑
摘要:@Controller 默认返回页面地址 @Controller public class Test{ @RequestMapping("/index.page") public String index(){ // 会返回 src/main/resources/templates/index.ht 阅读全文
posted @ 2024-10-30 13:30 CyrusHuang 阅读(2) 评论(0) 推荐(0) 编辑
摘要:静态代理 静态代理是一种设计模式,用于在不改变目标对象的情况下,增加对目标对象的控制或功能。它的基本思想是创建一个代理类,该类实现与目标类相同的接口,并在其方法中调用目标对象的方法 优点: 增强功能:可以在不改变目标类的情况下,增强其功能。 代码复用:通过代理类可以重用目标类的代码。 缺点: 代码膨 阅读全文
posted @ 2024-10-17 13:30 CyrusHuang 阅读(5) 评论(0) 推荐(0) 编辑
摘要:Semaphore Semaphore 更加适合用于控制对有限资源的访问,特别是当你需要允许一定数量的线程同时访问资源时 CountDownLatch 更加适合用于协调多个线程的完成状态,确保在某些操作完成后再执行后续操作 它用于控制对共享资源的访问,通过维护一个许可的计数器来限制同时访问某个资源的 阅读全文
posted @ 2024-10-11 12:51 CyrusHuang 阅读(13) 评论(0) 推荐(0) 编辑
摘要:CyclicBarrier 和 CountDownLatch 有点类似,主要区别是 CyclicBarrier 可以重用,常用方法如下: CyclicBarrier barrier = new CyclicBarrier(3); // 表示条件为:要有 3 个线程达到屏障(未指定屏障动作) barr 阅读全文
posted @ 2024-10-11 12:51 CyrusHuang 阅读(16) 评论(0) 推荐(0) 编辑
摘要:CountDownLatch Semaphore 更加适合用于控制对有限资源的访问,特别是当你需要允许一定数量的线程同时访问资源时 CountDownLatch 更加适合用于协调多个线程的完成状态,确保在某些操作完成后再执行后续操作 它用于协调多个线程的执行,使得某些操作必须等到其他操作完成后才能继 阅读全文
posted @ 2024-10-11 12:50 CyrusHuang 阅读(9) 评论(0) 推荐(0) 编辑
摘要:POM 依赖 <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-spring-boot-starter</artifactId> <version>2.2.2</version> </dependency 阅读全文
posted @ 2024-10-11 12:49 CyrusHuang 阅读(123) 评论(0) 推荐(0) 编辑
摘要:同步发送 生产者 // 创建一个生产者 (生产者组为 test-producer-group,生产者组不是那么重要) DefaultMQProducer producer = new DefaultMQProducer("test-producer-group"); // 连接 name serve 阅读全文
posted @ 2024-10-11 12:48 CyrusHuang 阅读(148) 评论(0) 推荐(0) 编辑
摘要:Name Server:Broker 的注册中心 作为 Broker 的注册中心,提供给生产者和消费者查找 Broker 的能力(路由) 既然是注册中心,和 Nacos 一样有心跳检测机制,不健康的 Broker 会被剔除 Broker:RocketMQ 核心,接收生产者的消息,消费者从这里取消息 阅读全文
posted @ 2024-10-11 12:47 CyrusHuang 阅读(17) 评论(0) 推荐(0) 编辑
摘要:单体应用可以使用 synchronized 或 Lock 来加锁,synchronized 推荐使用类锁,也就是字节码锁,这样保证是全局唯一的,如果使用对象锁,要根据业务确定这个对象锁在这个业务中是唯一的。 对于微服务架构下,单体应用锁就不合适了,每个服务多个节点部署,虚拟机都不是用一个,肯定保证不 阅读全文
posted @ 2024-10-08 14:15 CyrusHuang 阅读(13) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示