双方的WebSockets和服务器发送的事件能够将数据推送到浏览器.对我来说,他们似乎是竞争技术.他们之间有什么区别?你何时会选择一个而不是另一个?
我有一个应用程序在以下环境中运行.
有几个公共页面从数据库中延迟加载.一些CSS菜单显示在模板页面的标题上,如显示类别/子类别特征,最畅销,新到达等产品.
CSS菜单根据数据库中的各种产品类别从数据库动态填充.
这些菜单填充在每个页面加载上,这是完全没有必要的.其中一些菜单需要复杂/昂贵的JPA标准查询.
目前,填充这些菜单的JSF托管bean是视图范围的.它们都应该是应用程序作用域,在应用程序启动时只加载一次,并且只有在更新/更改相应数据库表(类别/子类别/产品等)中的某些内容时才更新.
我做了一些尝试来理解WebSokets(从未尝试过,对WebSokets来说是全新的),就像这样和这个.他们在GlassFish 4.0上运行良好,但它们不涉及数据库.我仍然无法正确理解WebSokets的工作方式.特别是涉及数据库时.
在这种情况下,当更新/删除/添加到相应的数据库表时,如何通知关联的客户端并使用数据库中的最新值更新上述CSS菜单?
一个简单的例子很棒.