摘要:
1,采用的是mongdB存储,普通的mysql难以支撑 2,mongdB搞冷热分离,但是考虑到大型web项目也难以支撑一条公告发送百万数据,采用消息队列细睡长流慢慢的写入mongdb 3,使用异步线程的方式往消息队列发送消息 4,系统的消息存储的消息队里上,只是用他过渡,消息最终还是存储到数据上,这 阅读全文
1,采用的是mongdB存储,普通的mysql难以支撑 2,mongdB搞冷热分离,但是考虑到大型web项目也难以支撑一条公告发送百万数据,采用消息队列细睡长流慢慢的写入mongdb 3,使用异步线程的方式往消息队列发送消息 4,系统的消息存储的消息队里上,只是用他过渡,消息最终还是存储到数据上,这 阅读全文
posted @ 2022-11-21 22:38
一帘清雨
阅读(124)
评论(0)
推荐(0)

三 利用RabbitMQ高级特性,完善项目的可靠性 3.1 如何保证消息的可靠性 3.1.1 发送方 需要使用RabbitMQ发送端确认机制,确认消息成功发送到RabbitMQ并被处理 需要使用RabbitMQ消息返回机制,若没发现目标队列,中间件会通知发送方 3.1.2 消费方 需要使用Rabbi
二 利用RabbitMQ基本用法,开发项目 2.1 RabbitMQ消息交换的关键是什么? 1.AMQP协议架构 AMQP协议直接定义了RabbitMQ的内部结构和外部行为 我们使用RabbitMQ本质上是在使用AMQP协议 AMQP协议被多种消息中间件使用,可以举一反三 2.消息流转流程 发送者不
一 树立清晰的RabbitMQ 1.1 理解消息中间件 中间件(Middleware),是提供软件和软件之间连接的软件,以便于软件各部件之间的沟通。 微信之间的沟通,“微信” 就是消息中间件 1.2 同步直接调用的问题 业务调用链过长,用户等待时间长 部分组件故障会雍疾整个业务 业务高峰期没有缓冲
java内存模型 1.到底什么叫“底层原理” 1.1 从java到cpu指令 最开始,我们编写的Java代码,是.java文件 在编译(javac命令)后,从刚才的.java文件会变出一个新的Java字节码文件(*.class) JVM会执行刚才生成的字节码文件(.class),并把字节码文件转化为
1.进程和线程 1.1 什么叫做线程 定义:线程是CPU的基本调度单位,每个线程执行的都是进程代码的某个片段。 实例演示:用活动监视器的CPU栏目看java进程的线程数的变化 左边进程,右边线程 2. 进程和线程的不同 起源不同 操作系统的历史是先有进程后有线程,由于处理器的速度往往比外设要快,外设
Synchronized 1. synchronized的作用 能够保证在同一时刻最多只有一个线程执行该段代码,以达到保证并发安全的效果。 2.不使用并发会有什么后果? 两个线程同时a++,最后结果会比预计的少 原因 i++,虽然是一行代码,但是实际上至少包含了以下这三个动作: 1.读取i的值 2.
1. 什么是死锁? 发生在并发中 互不相让:当两个(或更多)线程(或进程)相互持有对方所需要的资源,又不主动释放,导致所有人都无法继续前进导致程序陷入无尽的阻塞,这就是死锁。 如果多个线程之间的依赖关系是环形,存在环路的锁的依赖关系,那么也可能会发生死锁 2. 死锁的影响 死锁的影响在不同系统中是不
浙公网安备 33010602011771号