Awesome. I would like to check the GCM-JSON version. Now, i agree that you have every reason to be passionate about your product. Release the evaluation copy asap.
In fact the local version (NJSCADA on same server as Ignition, but of course its clients ARSCADA, RMSCADA can be anywhere on LAN and PubNub, provided you have Internet connection on Ignition machine) is already ready, but I am working on the LAN version (i.e. NJSCADA on a separate server than Ignition on a LAN). If you want I can send the local version first for evaluation in couple of days. I have to do some documentation and update the documentation. However I thought let me complete the LAN version and send, as it would work in both LAN and Network mode.
Performance of TG group on MySQL --- 5000 tags.
Performance of TG group on H2-IMDB --- 5000 tags.
On "H2-IMDB", for 5000 tags it takes less than 300 msec. Almost 10 times faster than MySQL disk i/o db.
In memory is obviously understandable (about 300 ms average), but will require huge memory I guess. But not sure if my interpretations is correct:
- Do you have only group1 with 5000 tags being written every 1 second?
- What are these tag types (float or int or string …?).
In my case I am extracting 5 mata data (like type, access, format, units and definition) about each tag from database and send to NJSCADA in the first cycle , but subsequent cycles I send only values. This is required for my application. It first sort of copies the tags data base from Ignition to NJSCADA for specified tags in first cycle then only values are updated.
Not much. I didn't see any significant increase in RAM usage when i enable H2-IMDB. Nevertheless, performance is directly proportional to the RAM when you deal with any IM application.
I have configured many groups but i have enabled only group1.
All are floats. This is a sample JSON.
{"group1_ndx": 4998, "Tag_5000": 0.7661028504371643, "t_stamp": "2018-08-13 16:10:46"}, {"group1_ndx": 4999, "Tag_5000": 0.029909193515777588, "t_stamp": "2018-08-13 16:10:46"}, {"group1_ndx": 5000, "Tag_5000": 0.732514500617981, "t_stamp": "2018-08-13 16:10:46"}, {"group1_ndx": 5001, "Tag_5000": 0.8658828139305115, "t_stamp": "2018-08-13 16:10:46"}
my JSON sends only names and values , time stamp and group name is redundant in my opinion, as they are same for each json packet!
Thanks for the tutorial like answer…