I am having a severe performance issue when I try to run a client over a VPN. I had posted on this previously and was directed to check firewall etc. I have done that and seen some improvements but only marginal. I have spent the last couple of days testing and troubleshooting and I think I have the issue narrowed down to indirect tag binding. Let me explain.
First off, when I say severe performance issues, I mean the client is unusable. I have screens that are only subscribing to 70 tags that take 10 minutes to update. Also during this time the entire application slows down, if I hover the mouse over a nav link it takes 10 to 20 seconds for the overlay boarder to appear. Then when I click the link, it is another 30 seconds to open the next screen. This problem also gets worse the longer the client app is open.
So that is the behavior…this is what I have discovered.
This behavior only occurs on screens that have indirect binding (which my application uses extensively). I have one screen that I did all direct bindings on (about 70 subscriptions). If I open the app and go straight to that screen it updates at least once a second, I can go to the history screen or alarm screen (very few sql tag binding) and they also work great. But then if I go my screens with the indirect bindings sluggish behavior and 10 minute updates. If I go back to the directly bound screen quickly it will work great as well, however, if I stay on the indirect screens for too long then my directly bound, historical and alarm screens also become wickedly sluggish. The only solution is to close the client and restart.
The problem seems to be worse on screens that have bindings to a dynamic property on the root container.
The client app at some point/randomly does not release tag subscriptions when you close a screen. (This behavior is much worse with the client is running Java 6 but also occurs on a Java 7 client.)
This behavior is consistent for several internet connection types to the server (cellular mobile broadband, 10 mbs cable modem, etc.)
If anyone has any insights or ideas they would be greatly appreciated. We have been working around this issue using the mobile app on a chrome browser, but with Java6 at EOL we will have to stop using that solution.
Sorry I almost forgot Ignition server stats:
Windows Server 2008 (all updates current)
Java 6 (all updates current)
Ignition ver 7.5.4
20meg up/down fiber connection at the server end.