Some general rules that I think apply to both perspective and vision -
Prefer bindings over scripting when possible. Bindings are just faster.
Optimize your database queries with EXPLAIN and taking appropriate measures.
Use named query w/ caching enabled when appropriate so the gateway doesn't have to re-query the same exact data when it occurs in quick succession.
Get rid of useless components. As @victordcq pointed out, do you really need an invisible object? I can't imagine it's too much of an extra load but it is extra, and I don't know what else you are doing on it. I try to keep things as lean as possible. YANGNI applies here.
Certain latency you can't avoid like network latency. How close is your gateway to the database - are they on the same computer (good for latency, bad for hardware/performance)? Different computers/VM's but same network (optimal imo)? Or does your gateway have to go out to the cloud or some other network to reach it (now you will get unavoidable latency you don't have control over).
Then repeat this process with your gateway to your OPC-UA server. Are the plc's connected straight to your gateway or are they connected to some other OPC server that Ignition is talking to like some distant Edge node?
And lastly, where are your clients connecting from? Are they on the same network as the gateway or are they connecting over the internet to a public gateway?
Last thing could always be a redesign. Do you need to show all 24 on a single page? Can you do a page of just 6 that the person can then change something to show the next 6 and then the next 6 etc.
Some things you have power over like your view design and your database query optimization (presumably unless a DBA/IT control it), but when you're going over non-local networks you are pretty much out of luck regarding those issues.
When I saw this post, I thought it meant you couldn't accomplish it in CSS.
I'd like a spreadsheet of performance cost per component type in Perspective if someone has.
I am not sure how long it would take to compile. Is the simple gauge considered low cost?
I looked at learning CSS a few months ago.
I did some things with it.
I can't remember why I stopped putting time into it. I will look again.
I think it might have been that I installed Inkscape, and then determined that a person could be such an expert in that side of it, that I wanted to be an expert on the data site, and was concerned about splitting my time.
If one wants to be efficient in developing in Perspective, they really need to have a good grasp on both the backend (data) and front end (CSS).
Also, as a side note Inkscape (in the context of Ignition) is for SVG's. That is very different from CSS. One of the best references I have found for SVG is the Pocket Guide to Writing SVG.
When you mentioned that I should learn CSS to speed up my page, what techniques did you have in mind?
I had thought you meant the SVG aspects.
I am in Ignition 8.1.19.
I have used some injections of CSS that Victor recommended.
What is the typical implementation technique that you recommend that I learn?
Do you mean specifically the CSS style that I think later versions have that Victor mentioned to me in another thread?
The stylesheet is definity an upgrade over the injection. having everything on a clean true css file...
But css they use is the same.
Anyways using an svg would definlty be batter than a gauge. but its kinda a pain to make. i would just stick with the background, and accept that for now they dont round.
if this improves performance than users will be more happy than having a minor visual improvment
Most of the time, if pages display a lot of data at once, they will be less time-sensitive. I will pre-compute the data to be displayed in a memory tag, and then directly bind the tag (value or dataset).
Do you have a CSS sheet you can show me so I can see how it might look like in the hands of a pro?
@nideyijuyidong
I used to pre-compute data in memory tags. I use queries now though.
Found queries to be faster and more reliable than tags that had run queries.
I don't know if it is non-linear or if it is recommended to use queries and avoid the pre-compute technique.
As I got better at queries, they seemed to be the faster performing for me.