资讯专栏INFORMATION COLUMN

【技术杂谈】springcloud微服务之数据操作独立模块化

tianyu / 1276人阅读

摘要:而在这个微服务下,同样需要进行数据操作,我不可能还要在下再一次进行集成,这样大大的增加了代码量。其次,是将有关数据操作的都多带带部署成一个模块,比如我集成的模块,集成的模块,使用作为内存缓存模块。

前言

相对于 spring 对 mybatis 以及 redis 等的整合所需要的各种配置文件,在 springboot 下,已经大大的简化了,你可能只是需要增加个依赖,加个注解,然后在配置文件中添加一些属性,就已经集成完成了。真正的体现了springboot的“约定大于配置”。

问题

但是,在实际的开发中,还是遇到了一些问题,比如我有一个微服务rms-service,整合了 mybatis 以及 redis 。此外,我还有一个专门用来进行定时任务的另一个微服务,假设为schedule-service。而在schedule-service这个微服务下,同样需要进行数据操作,我不可能还要在schedule-service下再一次进行集成,这样大大的增加了代码量。

思路

基于以上的问题,我的解决方案是基于springcloud的分布式配置,实现配置统一。其次,是将有关数据操作的都多带带部署成一个模块,比如我集成 mybatis的模块db-mysql,集成redis的模块db-redis,使用redis作为内存缓存模块db-cache。因为项目是使用springcloud微服务架构,所以所有微服务都注册到同一个eureka服务注册中心,每个需要进行数据操作的微服务只需依赖数据操作的模块,如db-mysql,db-cache,并且在bootstrap.yml 配置文件中,指定配置中心服务的地址以及配置文件的name和profile:

spring:
  # 配置中心服务的地址
  cloud:
    config:
      name: data
      profile: ${spring.profiles.active} # 要读取的配置文件profile属性
#      uri: http://127.0.0.1:7001
      #label: ${spring.profiles.active}
      discovery:
        enabled: true                                 # 默认false,设为true表示使用注册中心中的configserver配置而不自己配置configserver的uri
        serviceId: config-server
  profiles:
    active: dev
结语

以上仅为本人对数据操作独立模块化的一些认识,在此算是抛砖引玉。关于整合也写了相关博文:

db-mysql模块中对mybatis-plus的整合:

【springboot系列】springboot整合独立模块Druid + mybatis-plus

db-redis、db-cache模块中使用Redis作为内存缓存:

【springboot系列】springboot整合独立模块 redis 做缓存

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/70615.html

相关文章

  • 【springboot系列】springboot整合独立模块 redis 做缓存

    摘要:至此,已完成整合独立模块做缓存详情请看地址相关文章系列整合独立模块 项目github地址:https://github.com/5-Ason/aso...具体可看 ./db/db-redis 和 ./db/db-cache 两个模块 // TODO 在整合redis之前需要先本地配置好redis环境,迟点有时间补一下linux下下载安装配置redis 本文主要实现的是对数据操作进行独立...

    qianfeng 评论0 收藏0
  • 【springboot系列】springboot整合独立模块 redis 做缓存

    摘要:至此,已完成整合独立模块做缓存详情请看地址相关文章系列整合独立模块 项目github地址:https://github.com/5-Ason/aso...具体可看 ./db/db-redis 和 ./db/db-cache 两个模块 // TODO 在整合redis之前需要先本地配置好redis环境,迟点有时间补一下linux下下载安装配置redis 本文主要实现的是对数据操作进行独立...

    Jokcy 评论0 收藏0
  • 【springboot系列】springboot整合独立模块Druid + mybatis-plus

    摘要:申请连接时执行检测连接是否有效,做了这个配置会降低性能。作者在版本中使用,通过监控界面发现有缓存命中率记录,该应该是支持。允许和不允许单条语句返回多个数据集取决于驱动需求使用列标签代替列名称。需要驱动器支持。将自动映射所有复杂的结果。 项目github地址:https://github.com/5-Ason/aso... 具体可看 ./db/db-mysql 模块 本文主要实现的是对...

    RobinTang 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<