本文會討論您可以實作的策略與最佳實務,以減少瓶頸並最佳化AEM Forms部署的效能。
您可以使用來設定和控制AEM Forms的快取策略 行動Forms設定 AEM Web設定控制檯的元件,位於:
https://'[server]:[port]'/system/console/configMgr
https://'[server]:[port]'/lc/system/console/configMgr
可用的快取選項如下:
AEM Forms的預設快取設定可能不足以達到最佳效能。 因此,建議使用以下設定:
如果您使用AEM Dispatcher來快取最適化表單,它也會快取最適化表單,該表單包含具有預填資料的表單。 如果從AEM Dispatcher快取中提供這類表單,可能會導致為使用者提供預先填入或過時的資料。 因此,請使用AEM Dispatcher來快取未使用預填資料的最適化表單。 此外,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 Core和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 Server軟體
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上設定Proxy。
在中新增以下設定 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)目錄。 預設位置為:
(僅限JEE上的AEM Forms) AEM Forms伺服器記錄檔和暫存目錄。 預設位置為:
如果您使用不同的GDS和暫存目錄位置,請開啟AdminUI,網址為 https://'[server]:[port]'/adminui
,導覽至 首頁>設定>核心系統設定>核心設定 以確認使用中的位置。
如果排除建議的目錄後AEM Forms伺服器執行速度會很慢,則同時排除Java™可執行檔(java.exe)。