2:21, EET
January 2, 2013
Hi, I have been developing a UA server for CIM Server(IEC 61970/968) based on OPC UA JAVA SDK 1.01.
while I was developing the UA server, I found performance problems in data loading.
==========================================================
○ Server Environment
1. Language : JAVA 1.6
2. SDK : Prosys SDK Ver 1.4.2 (OPC JAVA SDK : Opc.Ua.Stack-1.01.330.0)
3. Runtime Envirionment : CPU 2.93GHz(4 Cores), Memory 8GB, Windows 7
4. Data : Object Node 1,000,000 (Property Node 7,000,000)
5. Performance : 170,000 Nodes loading : 30 Minitutes (Too late)
over 180,000 ,,,, not estimated
==========================================================
○ My Code – Load Object Data (addNode)
===============================================================
newNodeId = new NodeId(ns, nodeId);
newObjectNode = new UaObjectNode(nodeManager, newNodeId, nodeName, Locale.ENGLISH);
newTypeId = new NodeId(ns, nodeType);
newType = new UaObjectTypeNode(nodeManager, newTypeId, nodeType, Locale.ENGLISH);
newObjectNode.setTypeDefinition(newType);
newNode.addReference((UaNode)newObjectNode, Identifiers.HasComponent, false);
===============================================================
○ I assume, “UaServerReference.java” code has problems.
===============================================================
UaReference[] sourceRefs = sourceNode.getReferences(referenceTypeId,
false);
if (sourceRefs != null)
for (UaReference r : sourceRefs)
if (r.getTargetId().equals(targetNode.getNodeId()))
return (UaServerReference) r;
===============================================================
– Cause
1. Too many ExpandedNodeId garbage data were increasing in memory.
My questions is:
1. Could you please tell me if SDK upgrade plan for this?
2. How to load the data in this case?
3. Any kind of solution or experience to develop the BIG DATA circumstance.
12:05, EET
December 21, 2011
Yes, the UaNode-based design easily leads to problems with memory usage, if you have a huge number of nodes in the address space.
Therefore, it is recommended to try to map the underlying data with a custom node manager that does not need to instantiate the nodes. See the MyBigNodeManager example in the Tutorial and SampleConsoleServer project for details on how to implement your server like that.
18:51, EET
February 21, 2014
Hello,
I’m wondering whether the performance issue with a high number of nodes is still up-to-date in the current version of the SDK.
I need to create a server for testing with 250 000 AnalogItems. I do create them (configurable through parameters) in 25 groups (FoldersType instances) with 10 000 Analog items each. Creating the first 10 000 takes about 4 seconds. From there every additional folder instance with 10 000 analogItems take approx. 2 seconds more (so 4 secs, 6secs, … 48+ secs). It looks like the SDK is doing something to/with the nodes which is linear with the number of nodes. Running the node creation in different threads per folder doesn’t help any.
The data is *not* backed by any process data, which is why I don’t use a custom nodeManager so far.
-HU
6:18, EEST
December 21, 2011
10:29, EEST
February 21, 2014
I’m still on Version 1.4.4 of the Toolkit. I went through the effort of creating a custom NodeManager (like the sample MyBigIoManager). Speed is just amazing! While it would still be nice to have comparable performance using the standard UaNodeManager, the custom node manager answers all performance needs.
PS: the JVM runs with more than 4GB of RAM (out of 32GB on the machine)
14:18, EEST
December 21, 2011
14:00, EEST
October 4, 2013
Hello,
I have another question about the performance of the Java SDK. In our case, we instantiate multiple UaClient for each jvm process, and for each UaClient we create a handful of subscriptions. How would multiple UaClient instances affect performance? Let’s say we instantiate 10 UaClient, each with 2 subscriptions. How many native threads creations would that result in?
16:13, EEST
December 21, 2011
Most Users Ever Online: 1919
Currently Online:
63 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 144
rocket science: 88
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 738
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1524
Posts: 6451
Newest Members:
jonathonmcintyre, fannielima, kristiewinkle8, rust, christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettingerModerators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0
Administrators: admin: 1