HPCC-11637 Avoid multiple concourrent ECLWatch onActivity queries

Use getActivityInfo() to collect activity info into a cache. Reuse
cached info to set concurrent onActivity queries. The cache time
is configurable (default to 10 seconds).

The code merged from 5.0: Upgrade code to display HPCC server even
if there is no workunit on the server. A user may pause or resume
the server. Collect network address and port info for identifying
ECLCCServer, etc.

Signed-off-by: wangkx <kevin.wang@lexisnexis.com>
Merge pull request #6107 from wangkx/h11637a

HPCC-11637 Avoid multiple concourrent ECLWatch onActivity queries

Reviewed-By: Gavin Halliday <gavin.halliday@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>