flowable 图片缓存

Posted liuwenjun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flowable 图片缓存相关的知识,希望对你有一定的参考价值。

背景

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

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

实现

这里我用的是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"/>
    <defaultCache
            eternal="false"
            maxElementsInMemory="900"
            overflowToDisk="false"
            diskPersistent="false"
            timeToIdleSeconds="0"
            timeToLiveSeconds="30"
            memoryStoreEvictionPolicy="LRU"/>
    <!-- 这里的 cache-process-image 缓存流程的图片信息 -->
    <cache
            name="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 + "‘+ #processInstanceId")
    public InputStream createImage(String processInstanceId) {

就这么简单就能实现图片缓存了,以廉价的技术实现强大的功能。

 

以上是关于flowable 图片缓存的主要内容,如果未能解决你的问题,请参考以下文章

Swift新async/await并发中利用Task防止指定代码片段执行的数据竞争(Data Race)问题

Swift新async/await并发中利用Task防止指定代码片段执行的数据竞争(Data Race)问题

Flowable事件之消息事件

Android获取各个应用程序的缓存文件代码小片段(使用AIDL)

Flowable入门系列文章38 - 默认顺序流程

Flowable入门系列文章92 - 一般可流动的REST原则 03