微服务-使用Redis实现分布式缓存

摘要:
在单体中对于key信息和用户信息是放在内存中放的,通过session进行管理。微服务是要放在分布式缓存中,以实现服务的无状态化。

在单体中对于key信息和用户信息是放在内存中放的,通过session进行管理。

微服务是要放在分布式缓存中,以实现服务的无状态化

微服务-使用Redis实现分布式缓存第1张

@Autowired
  privateStringRedisTemplate redisTemplate;
  @Value("${file.prefix}")
  privateString imgPrefix;
  
  /**
   * 1.首先通过缓存获取
   * 2.不存在将从通过数据库获取用户对象
   * 3.将用户对象写入缓存,设置缓存时间5分钟
   * 4.返回对象
   * @param id
   * @return
   */
  publicUser getUserById(Long id) {
    String key = "user:"+id;
    String json =  redisTemplate.opsForValue().get(key);
    User user = null;
    //如果为空则从数据库中查找
    if(Strings.isNullOrEmpty(json)) {
      user =userMapper.selectById(id);
      user.setAvatar(imgPrefix +user.getAvatar());
      //反序列化成json存入缓存
      String string  =JSON.toJSONString(user);
      redisTemplate.opsForValue().set(key, string);
      redisTemplate.expire(key, 5, TimeUnit.MINUTES);
    }else{
    //不为空则将缓存中的json对象反序列化成user对象
      user = JSON.parseObject(json,User.class);
    }
    returnuser;
  }

免责声明:文章转载自《微服务-使用Redis实现分布式缓存》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Float32与Float16转换任务26:dotnet watch run 和attach到进程调试下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Redis下载及安装(windows版)

下载地址1、Github下载地址:https://github.com/MicrosoftArchive/redis/releases2、百度网盘下载地址 https://pan.baidu.com/s/1z1_OdNVbtgyEjiktqgB83g 密码:kdfq 安装过程1.首先先把下载的压缩包解压到一个文件夹中 2.打开cmd指令窗口3.输入你刚才...

YAML简述

一、基础 YAML(Yet Another Markup Language),是一个JSON的超集,意味着任何有效JSON文件也都是一个YAML文件。它规则如下: 1)大小写敏感 2)使用缩进表示层级关系,但不支持tab缩进,只支持空格 3)缩进的数量不重要但至少一个空格,只要相同层级使用相同数量的空格即可 4)“#”表示注释,从这个字符开始,直到行末,都...

2019面试宝典之.Net

  1、简述 private、 protected、 public、 internal 修饰符的访问权限。 private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类中可以访问。 public : 公共成员,完全公开,没有访问限制。 internal: 当前程序集内可以访问。 2、ADO.NET中的五个主要...

Android应用自动更新功能的代码实现

由于Android项目开源所致,市面上出现了N多安卓软件市场。为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量。因此我们有必要给我们的Android应用增加自动更新的功能。 既然实现自动更新,我们首先必须让我们的应用知道是否存在新版本的软件,因此我们可以在自己的网站上放置配置文件...

一致性hash算法

一致性哈希算法的应用 一致性哈希算法在分布式缓存领域的 MemCached,负载均衡领域的 Nginx 以及各类 RPC 框架中都有广泛的应用 一致性哈希算法解决的问题 普通的哈希表算法一般都是计算出哈希值后,通过取余操作将 key 值映射到不同的服务器上但是当服务器数量发生变化时,取余操作的除数就会发生变化,所有 key 所映射的服务器几乎都会改变,这对...

把页面的Table直接输出到Excel文件中

有个需求是统计的时候,为生成的html表格提供导出功能,但是这样导出Excel不会显示自身的表格 影响美观,但是excel会显示html的css样式,这里可以通过处理行对象的方式进行导出,但是处理起纵向合并比较麻烦,这里待续! 1 String newStr = new String(name.getBytes(), "ISO8859_1"); 2 res...