如何解决无法在Vaadin上使用春季课程
如果我将spring-session jdbc添加到我的vaadin-spring-boot-application中,则该应用程序非常慢,并且会在几秒钟后重新加载整个页面。其他一切看起来都正常工作。
我没有注意到问题,我已经研究了几天,得到了Github issue和Vaadin microservices configuration,但是在这些问题中,我没有找到合适的解决方案来解决此问题,任何人都可以给我一个实施在Vaadin上的春季会议的真实例子吗?
问候。
解决方法
像spring-session
这样的会话复制方案假定会话相对较小,并且内容对来自多个请求线程的并发修改不敏感。这些假设都不适用于典型的Vaadin应用程序。
第一个问题是会话中通常需要从数据库中获取100KB到10MB的数据,对其进行反序列化,更新,然后针对每个请求再次进行序列化并存储在数据库中。第二个问题是Vaadin在会话中存储一个锁实例,并使用该实例来确保没有多个请求线程同时使用同一会话。
要序列化会话到持久性存储,因此,您需要确保负载均衡器使用粘性会话,并且通常还使用高性能解决方案(例如Hazelcast),而不仅仅是针对每个请求分别进行反序列化和序列化。
有关更多详细信息,您可以查看以下两个帖子:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。