Content caching 内容缓存

<< 点击显示目录 >>

主页  mappView帮助助手 > mapp View帮助信息 > 工程 > 人机界面应用程序的结构 > 配置视图 > mapp 视图配置 > 配置mapp View客户端 >

Content caching 内容缓存

Caching strategy 缓存策略

在mapp View客户端上加载的内容可以在该客户端上进行缓存。缓存槽的数量可以被配置。

内容是根据最不经常使用(LFU)算法管理的。换句话说,如果有空的缓存槽,它们将被用完。如果从客户端请求的内容多于可用的缓存槽数量,那么包含最不常用内容的缓存槽将被重新使用(清空和重新填充)。

这可以确保经常使用的内容总是可以快速获得。

没有显示的缓存内容是不活跃的;除了占用内存之外,它们不使用额外的资源。

缓存的不是页面,而是内容→ 页面和内容之间的区别

Caching slots 缓存槽

" 缓存槽 "是将完全渲染好的内容储存在内存中。缓存的内容不需要重新组装;相反,它被简单地显示或隐藏,这样它就比必须重新加载的内容更快可用。

对于被缓存的内容,它必须至少被调用过一次并完全加载。

例如

2个页面有3个区域,总共有5块内容。将缓存槽的数量设置为5。

<pdef:Page id="Page1" layoutRefId="main" xmlns:pdef="http://www.br-automation.com/iat2015/pageDefinition/v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Assignments>
        <Assignment type="Content" baseContentRefId="navigationContent" areaRefId="Area0" />
        <Assignment type="Content" baseContentRefId="Content1A" areaRefId="Area1" />
        <Assignment type="Content" baseContentRefId="Content1B" areaRefId="Area2" />
    </Assignments>
</pdef:Page>
<pdef:Page id="Page2" layoutRefId="main" xmlns:pdef="http://www.br-automation.com/iat2015/pageDefinition/v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Assignments>
        <Assignment type="Content" baseContentRefId="navigationContent" areaRefId="Area0" />
        <Assignment type="Content" baseContentRefId="Content2A" areaRefId="Area1" />
        <Assignment type="Content" baseContentRefId="Content2B" areaRefId="Area2" />
    </Assignments>
</pdef:Page>

 

人机界面的应用从第1页开始。

<StartPage pageRefId="Page1" />

 

这时,"navigationContent"、"Content1A "和 "Content1B "各调用一次,各分配一个缓存槽。

当切换到 "Page2 "时,"navigationContent "这块内容仍然存在,而 "Content1A "和 "Content1B "则被隐藏并切换为非活动状态。内容 "Content2A "和 "Content2B "第一次被加载和渲染。

"Content2A "和 "Content2B "现在也分别占用了缓存槽。

由于显示的内容也占用了缓存,现在所有的5个缓存槽都在使用。

 

当切换回 "Page1 "时,"Content1A "和 "Content1B "的内容很快就可以使用,因为它们不需要被重新加载。