我有一个网站与一些图片使用 p:graphicsimage 标记为 rendered 属性。因此,只有当bean(db query)返回 true . 我也有一个登录表单检查用户对数据库。这工作正常,但我目前的问题是,页面需要大量的时间加载页面(约25秒)。在按下loginbutton之后,loginbutton的bean方法被称为~20sec,但我不知道服务器在这段时间里在做什么。知道如何检查服务器状态或如何解决问题吗?我的豆子是 ManagedBeans 提前谢谢!
p:graphicsimage
rendered
true
ManagedBeans
kgsdhlau1#
您可以做一些事情来提高屏幕的性能gzip滤波器将显著缩短初始加载时间。它在传输到客户端浏览器时压缩页面内容。参考https://stackoverflow.com/a/35567295/5076414您还可以实现一个cachefilter,使屏幕的性能与基于javascript的ui相当。这将缓存屏幕的静态内容,如图标、图像、样式表、javascripts等。您可以控制要缓存的内容和要排除的内容。参考https://stackoverflow.com/a/35567540/5076414对于客户端ui组件,可以使用primefaces,它是基于jquery的ui。
要查看您的内容是否已经使用gzip和cache,请在您的google chrome浏览器中->右键单击屏幕->检查->单击网络选项卡->刷新屏幕。点击图片、图标、样式表,看看是否在响应头中看到以下内容 Cache-Control:max-age=2592000 如果元素的状态为304(来自缓存) Content-Encoding:gzip 如果元素的状态为200
Cache-Control:max-age=2592000
Content-Encoding:gzip
z4bn682m2#
您可以调试您的方法,并对非常古老的潜在领域进行基准测试
long startTime = System.currentTimeMillis(); method(); long endTime = System.currentTimeMillis(); System.out.println((endTime - startTime) + "ms")
或者使用像你的工具箱这样的档案器。
2条答案
按热度按时间kgsdhlau1#
您可以做一些事情来提高屏幕的性能
gzip滤波器将显著缩短初始加载时间。它在传输到客户端浏览器时压缩页面内容。参考https://stackoverflow.com/a/35567295/5076414
您还可以实现一个cachefilter,使屏幕的性能与基于javascript的ui相当。这将缓存屏幕的静态内容,如图标、图像、样式表、javascripts等。您可以控制要缓存的内容和要排除的内容。参考https://stackoverflow.com/a/35567540/5076414
对于客户端ui组件,可以使用primefaces,它是基于jquery的ui。
如何验证我的屏幕是否使用gzip和缓存
要查看您的内容是否已经使用gzip和cache,请在您的google chrome浏览器中->右键单击屏幕->检查->单击网络选项卡->刷新屏幕。点击图片、图标、样式表,看看是否在响应头中看到以下内容
Cache-Control:max-age=2592000
如果元素的状态为304(来自缓存)Content-Encoding:gzip
如果元素的状态为200z4bn682m2#
您可以调试您的方法,并对非常古老的潜在领域进行基准测试
或者使用像你的工具箱这样的档案器。