背景
由于我们的每次显示图片的话,都将需要大量的查询和相关的流。这样对我们的系统压力极大,用户体验极差。

所以使用了缓存把图片流缓存起来,这样就可以解决问题了。

实现
这里我用的是ehcache,由于他小巧依赖少。

1.把我们的包导入进来

<!--开启 cache 缓存--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId></dependency><!-- ehcache 缓存 --><dependency><groupId>net.sf.ehcache</groupId><artifactId>ehcache</artifactId></dependency>

2.配置xml文件

<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"updateCheck="false"><diskStore path="/data/flow/ehcache"/><defaultCacheeternal="false"maxElementsInMemory="900"overflowToDisk="false"diskPersistent="false"timeToIdleSeconds="0"timeToLiveSeconds="30"memoryStoreEvictionPolicy="LRU"/><!-- 这里的 cache-process-image 缓存流程的图片信息 --><cachename="cache-process-image"eternal="false"maxElementsInMemory="2000"maxElementsOnDisk="3000"overflowToDisk="true"diskPersistent="true"timeToIdleSeconds="0"timeToLiveSeconds="1296000"memoryStoreEvictionPolicy="LRU"/>
</ehcache>

3.配置application.properties文件

spring.cache.ehcache.config=classpath:/ehcache/flow-ehcache.xml

4.配置缓存注解

@Cacheable(value = FlowConstant.CACHE_PROCESS_IMAGE, key = "'" + FlowConstant.PROCESSINSTANCE_PREFIX + "'+ #processDefinitionId")public byte[] createImage(String processDefinitionId) {}

flowable 图片缓存相关推荐

  1. Android 图片缓存之内存缓存技术LruCache,软引用

    Android 图片缓存之内存缓存技术LruCache,软引用

  2. Android图片缓存之Lru算法

    前言: 上篇我们总结了Bitmap的处理,同时对比了各种处理的效率以及对内存占用大小.我们得知一个应用如果使用大量图片就会导致OOM(out of memory),那该如何处理才能近可能的降低oom发 ...

  3. 图片缓存之内存缓存技术LruCache,软引用

    图片缓存之内存缓存技术LruCache,软引用 每当碰到一些大图片的时候,我们如果不对图片进行处理就会报OOM异常, 这个 问题曾经让我觉得很烦恼 ,后来终于得到了解决, 那么现在就让我和大家一起分享 ...

  4. Android图片缓存框架Glide

    Android图片缓存框架Glide Glide是Google提供的一个组件.它具有获取.解码和展示视频剧照.图片.动画等功能.它提供了灵活的API,帮助开发者将Glide应用在几乎任何网络协议栈中. ...

  5. glide等图片缓存框架替换缓存图片解决方案

    2019独角兽企业重金招聘Python工程师标准>>> 应用场景: 手机app 用户的头像地址 在服务器上是固定的,比如有些服务器喜欢以 用户手机或者用户id 作为唯一标识,那么用户 ...

  6. 【MDCC 2015】开源选型之Android三大图片缓存原理、特性对比

    from: http://www.csdn.net/article/2015-10-21/2825984 [CSDN现场报道]10月14日-16日," 2015移动开发者大会 · 中国&qu ...

  7. 【转载】基于AFNetWorking3.0的图片缓存分析

    原文出处:Yasin的简书 http://www.jianshu.com/p/b1045c3fc8d0 图片在APP中占有重要的角色,对图片做好缓存是重要的一项工作. [TOC] 理论 不喜欢理论的可 ...

  8. android使用ImageLoader实现图片缓存(安卓开发必备)

    相信大家在学习以及实际开发中基本都会与网络数据打交道,而这其中一个非常影响用户体验的就是图片的缓存了,若是没有弄好图片缓存,用户体验会大大下降,总会出现卡顿情况,而这个问题尤其容易出现在ListVie ...

  9. android 缓存文件的工具类,总结的一些android公共库,包含缓存(图片缓存、预取缓存)、...

    总结的一些android公共库,包含缓存(图片缓存.预取缓存).公共View(下拉及底部加载更多ListView.底部加载更多ScrollView.滑动一页Gallery).及工具类(下载管理.静默安 ...

最新文章

  1. 用rufus f2 制作Ubuntu16.04 U盘启动盘
  2. NTP时间服务相关基础及配置文件详解
  3. 简易版用户画像,你需要掌握这3个数据处理方法
  4. Pod定义YAML文件详解
  5. c语言左移15位,关于c语言中左移右移运算符的问题
  6. Linux 中的远程登陆
  7. python 最短路径算法_python Dijkstra算法实现最短路径问题的方法
  8. dj鲜生-用户中心-个人信息
  9. Centos7 密码重置
  10. linux device or,Linux rm -rf 之rm: cannot remove `linux': Device or resource busy
  11. geektool 天气_桌面自定义:适用于OS X的GeekTool简介
  12. 微擎支付返回商户单号_扫码枪轻轻一扫,瞬间扣款,支付背后的原理原来这么简单...
  13. Azure实现虚拟机的自动开关机
  14. 使用 SHAP库 对模型预测作解释
  15. [和平之月系列] 《都 Ancient City Ⅱ》 钢琴
  16. 数据结构---散列表(哈希表)链地址法
  17. k m kb mb计算机组成,为什么对计算机存储单位(K,M,G,T)换算,总是糊里又糊涂?
  18. 知道创宇CTO杨冀龙:网络安全人才决定行业格局
  19. 【优化算法】象群游牧优化算法(EHO)【含Matlab源码 1080期】
  20. Markdown小技巧:代码格式、缩进和字体大小

热门文章

  1. 爱因斯坦和高中几何问题
  2. bind blz mysql_MySQ DBAL重点剖析课程 企业级MySQL系统安全与DBA运维日常事务管理 运维DBA必备宝典...
  3. python if and函数_逻辑函数And,OR,IF
  4. 【转载保存】Lucene7.1.0超详细的使用文档
  5. CISC与RISC的区别?
  6. 用LuaBridge为Lua绑定C/C++对象
  7. 当 Mars 遇上 RAPIDS:用 GPU 以并行的方式加速数据科学
  8. 【开发者成长】Vue.js 中有哪些性能陷阱
  9. K8s 学习者绝对不能错过的最全知识图谱(内含 56个知识点链接)
  10. 一个优秀的可定制化Flutter相册组件,看这一篇就够了