我正在为我们公司开发SAPUI5应用程序。该应用程序由我们的SAP NetWeaver系统提供服务。
由于该应用程序仍在开发中,必须测试新功能,我们注意到用户无法立即获得该应用程序的更新版本。所以我经常收到关于他们为什么看不到更改的电子邮件,我总是要告诉他们刷新页面。
有没有办法确保正在加载应用程序的最新版本?
嘿,我想说这都是关于SAP Fiori/SAPUI5:中的缓存管理
SAP Fiori中的缓存管理
有不同的层处理缓存:
- 浏览器本身的HTTP缓存
- 您的前端服务器(ICM)-例如,如果您查看事务
SMICM
,您可以看到UI5应用程序的视图/控制器正在存储一个有效期 - 后端服务器(仅服务/服务定义的元数据缓存)
关于SAP Fiori 中缓存管理的好博客文章
解决方案:
- 通过WEIDE部署UI5应用程序时,会计算App_indexget。有时这会失败。所以在说测试之前在前端服务器中为您的特定SAPUI5应用程序运行报告
/UI5/APP_INDEX_CALCULATE
- 如果OData服务发生更改,则在前端服务器中运行事务
/IWFND/CACHE_CLEANUP
,在后端服务器中运行该事务/IWBEP/CACHE_CLEANUP
- 在开发和质量管理系统中,如果更改后的翻译
SE63
没有出现,我有时会运行报告/UI2/INVALIDATE_CLIENT_CACHES
因此;质量管理系统只需运行/UI5/APP_INDEX_CALCULATE
和/UI2/INVALIDATE_CLIENT_CACHES
,您就可以很好地运行了。
在Production中,请注意,缓存是关于性能的,所以如果你清除了所有缓存,而你的公司有大约500名用户在上午08:00打开Fiori Launchpad,事情可能会变得一团糟。