2020-10-02 17:22:24 +08:00
|
|
|
|
{$layout "layout_popup"}
|
|
|
|
|
|
|
|
|
|
|
|
<h3>创建缓存策略</h3>
|
|
|
|
|
|
|
2020-11-10 12:47:24 +08:00
|
|
|
|
<form method="post" class="ui form" data-tea-action="$" data-tea-success="success">
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<table class="ui table definition selectable">
|
|
|
|
|
|
<tr>
|
|
|
|
|
|
<td class="title">策略名称 *</td>
|
|
|
|
|
|
<td><input type="text" name="name" maxlength="100" ref="focus"/> </td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr>
|
2020-10-04 14:27:05 +08:00
|
|
|
|
<td class="color-border">缓存类型 *</td>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<td>
|
|
|
|
|
|
<select class="ui dropdown auto-width" name="type" v-model="policyType">
|
|
|
|
|
|
<option v-for="type in types" :value="type.type">{{type.name}}</option>
|
|
|
|
|
|
</select>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<!-- 文件缓存选项 -->
|
|
|
|
|
|
<tbody v-if="policyType == 'file'">
|
|
|
|
|
|
<tr>
|
2020-10-04 14:27:05 +08:00
|
|
|
|
<td class="color-border">缓存目录 *</td>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<td>
|
2021-07-25 20:19:58 +08:00
|
|
|
|
<input type="text" name="fileDir" maxlength="500" value="/opt/cache"/>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<p class="comment">存放文件缓存的目录,通常填写绝对路径。</p>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2021-03-02 19:38:13 +08:00
|
|
|
|
<tr>
|
2024-04-04 16:48:49 +08:00
|
|
|
|
<td class="color-border">缓存硬盘最大用量 *</td>
|
2021-03-02 19:38:13 +08:00
|
|
|
|
<td>
|
2021-06-10 10:39:05 +08:00
|
|
|
|
<size-capacity-box :v-name="'capacityJSON'" :v-count="128" :v-unit="'gb'" :key="'capacityJSON1'"></size-capacity-box>
|
2024-04-04 16:48:49 +08:00
|
|
|
|
<p class="comment">单个节点上缓存所在硬盘的最大用量,超出此用量或硬盘接近用尽时,将会自动尝试清理旧数据,如果为0表示没有限制。</p>
|
2021-03-02 19:38:13 +08:00
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr>
|
|
|
|
|
|
<td class="color-border">内存最大容量</td>
|
|
|
|
|
|
<td>
|
2022-03-14 15:42:10 +08:00
|
|
|
|
<size-capacity-box :v-name="'fileMemoryCapacityJSON'" :v-count="1" :v-unit="'gb'" :key="'fileMemoryCapacityJSON'"></size-capacity-box>
|
2024-04-04 16:48:49 +08:00
|
|
|
|
<p class="comment">单个节点上作为一级缓存的内存最大容量,可以作为硬盘缓冲区和存储热点缓存内容,如果为0表示不使用内存作为一级缓存。</p>
|
2021-03-02 19:38:13 +08:00
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
</tbody>
|
|
|
|
|
|
|
2021-06-10 10:39:05 +08:00
|
|
|
|
<tbody v-if="policyType == 'memory'">
|
2021-03-02 19:38:13 +08:00
|
|
|
|
<tr>
|
|
|
|
|
|
<td>内存最大容量</td>
|
|
|
|
|
|
<td>
|
2021-06-10 10:39:05 +08:00
|
|
|
|
<size-capacity-box :key="'a'" :v-name="'capacityJSON'" :v-count="2" :v-unit="'gb'" :key="'capacityJSON2'"></size-capacity-box>
|
2023-03-26 12:23:12 +08:00
|
|
|
|
<p class="comment">单个节点上允许缓存的最大容量,如果为0表示没有限制。</p>
|
2021-03-02 19:38:13 +08:00
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
</tbody>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
|
2022-03-06 19:48:50 +08:00
|
|
|
|
<tr>
|
|
|
|
|
|
<td>最大内容尺寸</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<size-capacity-box :v-name="'maxSizeJSON'" :v-count="256" :v-unit="'mb'" :key="'maxSizeJSON'"></size-capacity-box>
|
|
|
|
|
|
<p class="comment">允许缓存的单个内容最大尺寸,如果为0表示没有限制。</p>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<tr>
|
|
|
|
|
|
<td colspan="2"><more-options-indicator></more-options-indicator></td>
|
|
|
|
|
|
</tr>
|
2023-07-20 17:06:45 +08:00
|
|
|
|
<tbody v-show="moreOptionsVisible && policyType == 'file'">
|
2023-08-06 18:09:01 +08:00
|
|
|
|
<tr>
|
2024-04-04 16:48:49 +08:00
|
|
|
|
<td class="color-border">缓存硬盘最小空余空间</td>
|
2023-08-06 18:09:01 +08:00
|
|
|
|
<td>
|
|
|
|
|
|
<size-capacity-box :v-name="'fileMinFreeSizeJSON'" :v-count="0" :v-unit="'gb'" :key="'minFreeSizeJSON'"></size-capacity-box>
|
2024-04-04 16:48:49 +08:00
|
|
|
|
<p class="comment">缓存硬盘保留的最小空余空间,如果为0表示自动限制(目前默认保留5GiB)。</p>
|
2023-08-06 18:09:01 +08:00
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2024-03-30 08:43:38 +08:00
|
|
|
|
<tr v-show="moreOptionsVisible && policyType == 'file'">
|
2024-03-29 19:30:12 +08:00
|
|
|
|
<td class="color-border">启用MMAP</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<checkbox name="enableMMAP" checked="checked"></checkbox>
|
|
|
|
|
|
<p class="comment">选中后,表示允许系统自动利用MMAP提升缓存读取性能。</p>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2023-07-20 17:06:45 +08:00
|
|
|
|
<tr>
|
|
|
|
|
|
<td class="color-border">缓存文件句柄缓存</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<input type="text" name="fileOpenFileCacheMax" maxlength="6" value="0" style="width: 10em"/>
|
2024-01-21 14:31:05 +08:00
|
|
|
|
<p class="comment"><pro-warning-label></pro-warning-label>保持在内存中的缓存文件句柄的数量,提升缓存文件打开速度,同时也会占用系统更多的内存,建议数量不超过缓存文件数量的百分之一;0表示不启用。</p>
|
2023-07-20 17:06:45 +08:00
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr v-show="teaIsPlus">
|
|
|
|
|
|
<td class="color-border">开启Sendfile</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<checkbox name="fileEnableSendfile"></checkbox>
|
|
|
|
|
|
<p class="comment"><pro-warning-label></pro-warning-label><plus-label></plus-label>使用sendfile提升发送缓存文件的效率。</p>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
</tbody>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<tbody v-show="moreOptionsVisible">
|
2022-02-24 20:12:15 +08:00
|
|
|
|
<tr>
|
|
|
|
|
|
<td>同步写入压缩缓存</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<checkbox name="syncCompressionCache"></checkbox>
|
2024-04-04 16:48:49 +08:00
|
|
|
|
<p class="comment">选中后,在压缩设置开启的情况下,在缓存源站内容的同时,也会同步写入压缩缓存;不选中,表示在源站内容缓存后,下一次调用才会缓存压缩内容,防止同一时间内硬盘IO负载过高。</p>
|
2022-02-24 20:12:15 +08:00
|
|
|
|
</td>
|
2023-08-06 17:06:28 +08:00
|
|
|
|
</tr>
|
|
|
|
|
|
<tr>
|
|
|
|
|
|
<td>预热超时时间</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<time-duration-box :v-name="'fetchTimeoutJSON'" :v-unit="'minute'"></time-duration-box>
|
|
|
|
|
|
<p class="comment">预热读取源站的超时时间,默认20分钟。</p>
|
|
|
|
|
|
</td>
|
2022-02-24 20:12:15 +08:00
|
|
|
|
</tr>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<tr>
|
|
|
|
|
|
<td>描述</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<textarea maxlength="200" name="description" rows="3"></textarea>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr>
|
2023-07-20 17:06:45 +08:00
|
|
|
|
<td>启用当前策略</td>
|
2020-10-02 17:22:24 +08:00
|
|
|
|
<td>
|
|
|
|
|
|
<div class="ui checkbox">
|
|
|
|
|
|
<input type="checkbox" name="isOn" value="1" checked="checked"/>
|
|
|
|
|
|
<label></label>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
</tbody>
|
|
|
|
|
|
</table>
|
|
|
|
|
|
<submit-btn></submit-btn>
|
|
|
|
|
|
</form>
|