当前位置: 首页 > news >正文

做哪种网站流量上的快石家庄

做哪种网站流量上的快,石家庄,正在建设中的网站,wordpress路由重写正常情况下的流程是:请求来了,先检查 Redis 有没有数据,有返回;没有便查询 MySQL 然后 放入 Redis。 此时,如果 MySQL 的数据发生了变化,所以需要同步到 Redis 中。 解决方法:MySQL 中的数据更新…

正常情况下的流程是:请求来了,先检查 Redis 有没有数据,有返回;没有便查询 MySQL 然后 放入 Redis。

此时,如果 MySQL 的数据发生了变化,所以需要同步到 Redis 中。

解决方法:MySQL 中的数据更新的时候 ,在更新之前先删一次 Redis 中的数据,在更新之后再删一次 Redis 中的数据。

工具类

public class RedisUtil {private final static ScheduledExecutorService DELAY_EXECUTOR = new ScheduledThreadPoolExecutor(4);/*** 缓存延迟双删** @param factory 目标任务* @param keys    插入':' 拼接成需要删除的缓存key* @param <T>     any object* @return 目标任务返回结果*/public static <T> T doubleDeletion(Supplier<T> factory, Object... keys) {return RedisUtil.doubleDeletion(factory,() -> RedisUtil.getRedisTemplate().delete(RedisUtil.key(keys)));}/*** 缓存延迟双删** @param task 目标任务* @param keys 插入':' 拼接成需要删除的缓存key*/public static void doubleDeletion(Runnable task, Object... keys) {RedisUtil.doubleDeletion(task,() -> RedisUtil.getRedisTemplate().delete(RedisUtil.key(keys)));}/*** 缓存延迟双删** @param factory 目标任务* @param key     需要删除的缓存key* @param <T>     any object* @return 目标任务返回结果*/public static <T> T doubleDeletion(Supplier<T> factory, String key) {return RedisUtil.doubleDeletion(factory,() -> RedisUtil.getRedisTemplate().delete(key));}/*** 缓存延迟双删** @param task 目标任务* @param key  需要删除的缓存key*/public static void doubleDeletion(Runnable task, String key) {RedisUtil.doubleDeletion(task,() -> RedisUtil.getRedisTemplate().delete(key));}/*** 缓存延迟双删** @param factory         执行的目标任务* @param deleteCacheTask 清除缓存的任务* @param <T>             any object* @return 执行目标任务的返回结果*/public static <T> T doubleDeletion(Supplier<T> factory, Runnable deleteCacheTask) {deleteCacheTask.run();T data = factory.get();//延迟800毫秒秒再删一次DelayExecutor.DELAY_EXECUTOR.schedule(deleteCacheTask, 800, TimeUnit.MILLISECONDS);return data;}/*** 缓存延迟双删** @param task            目标任务* @param deleteCacheTask 清除缓存任务*/public static void doubleDeletion(Runnable task, Runnable deleteCacheTask) {RedisUtil.doubleDeletion(() -> {task.run();return null;},deleteCacheTask);}}

用法 1

RedisUtil.doubleDeletion(// 定义数据库更新操作() -> updateProcudt(product),// 定义 删除 redis 操作() -> RedisUtil.delete("product:" + id));

http://www.tj-hxxt.cn/news/54216.html

相关文章:

  • 网站解除域名绑定seo优化靠谱吗
  • 1688外贸平台seo排名优化推广
  • 大连网站制作的公司哪家好网站优化提升排名
  • 网站哪里可以查到做ddos搭建网站多少钱
  • 做ebay需要的图片外链网站上海培训机构排名榜
  • 网络营销推广的核心是什么百色seo外包
  • 网站建设总结ppt软文营销写作技巧有哪些?
  • 中国机械加工网1717崇左seo
  • 互联网保险业务是指seo关键词排名技巧
  • 解释网站为什么这样做seo测试工具
  • 做电影网站都需要什么手续产品推广方式及推广计划
  • 岳阳网站开发公司推荐世界十大网站排名出炉
  • iis7.5怎么做网站推广app网站
  • 网站建设专题windows10优化工具
  • 动态网站开发 pdf免费seo营销软件
  • 文山网站建设互联网广告推广
  • 南宁小程序开发设计seo tdk
  • 那些做电影的网站赚钱吗本周时事新闻概要10条
  • 关于做网站的调查问卷打开百度首页
  • 免费的成品网站深圳网站建设推广方案
  • 做策划的人经常浏览的网站游戏优化大师下载安装
  • 织梦做商城网站广告投放渠道
  • 网站建设询价seo分析seo诊断
  • 手机类网站设计专业网络推广机构
  • 西安高新区网站建设网站流量分析
  • 视频上传下载网站建设线上营销的优势
  • 吉林市做网站哪家好百度竞价关键词
  • 做兼职女的网站百度小说排行
  • 珠海哪个公司做网站好电脑培训网
  • 黑帽seo怎么做网站排名百家号权重查询