本文讨论了您可以实施的策略和最佳实践,以减少瓶颈并优化AEM Forms部署的性能。
您可以在AEM Web配置控制台中使用Mobile Forms配置组件,配置和控制AEM Forms的缓存策略,具体位置为:
https://[server]:[port]/system/console/configMgr
https://[server]:[port]/lc/system/console/configMgr
缓存的可用选项如下:
AEM Forms的默认缓存设置可能不足以获得最佳性能。 因此,建议使用以下设置:
如果您使用AEM Dispatcher缓存自适应表单,则它也会缓存包含带有预填充数据的表单的自适应表单。 如果此类表单是从AEM Dispatcher缓存提供的,则可能会导致向用户提供预填充或过时的数据。 因此,请使用AEM Dispatcher缓存未使用预填充数据的自适应表单。 此外,调度程序缓存不会自动使缓存的片段失效。 因此,请勿将其用于缓存表单片段。 对于此类表单和片段,请使用自适应表单缓存。
为了获得最佳性能,建议使用以下JVM init
参数来配置Java heap
和PermGen
。
set CQ_JVM_OPTS=%CQ_JVM_OPTS% -Xms8192m
set CQ_JVM_OPTS=%CQ_JVM_OPTS% -Xmx8192m
set CQ_JVM_OPTS=%CQ_JVM_OPTS% -XX:PermSize=256m
set CQ_JVM_OPTS=%CQ_JVM_OPTS% -XX:MaxPermSize=1024m
推荐的设置适用于Windows 2008 R2 8核心和OracleHotSpot 1.7(64位)JDK,并且应根据您的系统配置进行放大或缩小。
自适应表单和HTML5表单以HTML5格式呈现。 结果输出可能会很大,具体取决于表单大小和表单中图像等因素。 为优化数据传输,建议使用从中提供请求的Web服务器压缩HTML响应。 此方法可减少响应大小、网络流量以及在服务器和客户端计算机之间传输数据所需的时间。
例如,执行以下步骤以使用JBoss对Apache Web Server 2.0 32位启用压缩:
以下说明不适用于Apache Web Server 2.0 32位以外的任何服务器。 有关特定于任何其他服务器的步骤,请参阅相应的产品文档。
以下步骤演示了使用Apache Web Server启用压缩所需的更改
获取适用于您的操作系统的Apache Web服务器软件
Apache可以使用HTTP协议与CRX通信。 配置用于使用HTTP进行优化。
在APACHE_HOME/conf/httpd.conf
文件中取消对以下模块配置的注释。
LoadModule proxy_balancer_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_http.so
LoadModule deflate_module modules/mod_deflate.so
对于Linux,默认的APACHE_HOME
为/etc/httpd/
。
在crx的端口4502上配置代理。
在APACHE_HOME/conf/httpd.conf
配置文件中添加以下配置。
ProxyPass / https://<server>:4502/
ProxyPassReverse / https://<server>:4502/
启用压缩。 在APACHE_HOME/conf/httpd.conf
配置文件中添加以下配置。
对于HTML5表单
<Location /content/xfaforms>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
#Don’t compress
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
#Dealing with proxy servers
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
</Location>
对于自适应表单
<Location /content/forms/af>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
#Don’t compress
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
#Dealing with proxy servers
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
</Location>
要访问crx服务器,请使用https://[server]:80
,其中server
是运行Apache服务器的服务器名称。
在运行防病毒软件的服务器上可能会出现性能缓慢的情况。 防病毒(访问扫描)软件始终扫描系统的所有文件。 这可能会降低服务器速度,并且会影响AEM Forms的性能。
要提高性能,您可以指导防病毒软件从始终开启(访问)扫描中排除以下AEM Forms文件和文件夹:
AEM安装目录。 如果无法排除完整目录,请排除以下内容:
应用程序服务器临时目录。 默认位置为:
(仅限JEE上的AEM Forms) 全局文档存储(GDS)目录。默认位置为:
[appserver root]/server/[server]/svcnative/DocumentStorage
[appserverdomain]/[server]/adobe/LiveCycleServer/DocumentStorage
[appserver root]/installedApps/adobe/[server]/DocumentStorage
(仅限JEE上的AEM Forms) AEM Forms服务器日志和临时目录。默认位置为:
[AEM Forms installation directory]\Adobe\AEM forms\[app-server]\server\all\logs
https://[server]:[port]/adminui)
处打开AdminUI,导航到主页>设置>核心系统设置>核心配置以确认使用的位置。