缓存方式
把数据从mysql中拿出并存入redis
浏览器发送请求:http://192.168.200.128/addredis
请求执行mysql2redis.lua()这个lua脚本
nginx调用lua脚本,lua脚本来操作数据库,redis,nginx内存空间。
把数据从redis非关系型数据库中拿出存入nginx开辟的缓存空间
类似操作系统原理中的快表和慢表
广告缓存更新实现
实现原理
1)MySql内部【广告表】发送数据变化,数据监控微服务根据canal服务获取到最新更新的数据。
2)提取数据监控微服务广告位置key(position值),并且把这个值发到rabbitmq。
3)rabbitmq接收到消息并保存到自己内存中,运营微服务从rabbitmq内存中监听到消息(position值)。
4)运营微服务调用nginx服务器更新redis数据功能(由lua脚本完成)。
5)redis数据和nginx服务器缓存区域更新为最新修改的广告内容。
数据监控微服务实现
只有一个消费者接收到消息