0

Preferred way for server push

asked 2020-05-28 21:43:13 +0800

ivtu gravatar image ivtu
11 2

Hello,

I want to use ZK server push. Design pattern will be MVVM. ZK version is 8.6.1. I will have 500-1000 active ZK desktops at any moment in almost the same number of sessions. When I receive request (for example refresh current listbox or delete some list item), I have to do some operation. What is preferred way to do this based on number of desktops? Standard server push or Web sockets?

delete flag offensive retag edit

6 Replies

Sort by » oldest newest

answered 2020-06-03 16:00:04 +0800

ivtu gravatar image ivtu
11 2

Yes, sorry typo and copy/paste error. PollingAgent is correct

link publish delete flag offensive edit

answered 2020-06-03 15:50:24 +0800

cor3000 gravatar image cor3000
6280 2 7

Ah you mean PollingAgent not PoolingAgent seems this code was never committed we'll investigate where it went and how it can be recovered.

link publish delete flag offensive edit

answered 2020-06-03 15:03:10 +0800

ivtu gravatar image ivtu
11 2

updated 2020-06-03 15:03:46 +0800

I found it inside ZATS documentation: https://www.zkoss.org/wiki/ZATS%20Essentials/Mimic%20Library/Operation/PollingAgent

Based on documentation, PoolingAgent was introduced with 1.2.1 version. How we can test server push?

link publish delete flag offensive edit

answered 2020-06-03 12:33:23 +0800

cor3000 gravatar image cor3000
6280 2 7

I tried to find PoolingAgent in the history of ZATS, it didn't exist in 1.2.0 or 1.0.0 inside our github repo. Can you please specify where you found it before 2.0.0, or where it was removed in the git history - just to speed up the search.

link publish delete flag offensive edit

answered 2020-06-02 22:27:30 +0800

ivtu gravatar image ivtu
11 2

Okay, thanks for answer. I want now to test new functionality with ZATS. Why PoolingAgent does not exist anymore in version 2.0.0?

link publish delete flag offensive edit

answered 2020-05-29 10:57:19 +0800

cor3000 gravatar image cor3000
6280 2 7

"Standard" server push use individual HTTP requests - either comet (long polling) or interval polling. Those requests produce overhead in addition to the "normal" /zkau requests for transporting the events and dynamic updates of a desktop. If you can use websockets, serverpush, events and dynamic updates use the same connection only established once. So in theory websockets should be lean choice, if available. (Still websockets is not fully adopted in all environments/application servers, so you'll have to test whether they perform well or work at all for your customers, ZK will fallback to ajax in case a websocket connection can't be established).

MVC/MVVM doesn't matter in this case, events from client and updates to the server are equivalent for both patterns.

link publish delete flag offensive edit
Your reply
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!

[hide preview]

Question tools

Follow
2 followers

RSS

Stats

Asked: 2020-05-28 21:43:13 +0800

Seen: 22 times

Last updated: Jun 03 '20

Support Options
  • Email Support
  • Training
  • Consulting
  • Outsourcing
Learn More