Hi!
I'm quit new to this OPC communication concept. During a couple of weeks I have tried things out with the Milo-api, read the milo-examples, searched the internet for more examples and
best practices...but I still have some questions and some unresolved problems to figure out.
In my context, I'm trying to subscribe to about 50000 different data values (parameters) from the same endpoint. The data values origin from two main branches in the end point server
node-tree.
Current main opc-workflow:
- Create (one)
OpcUaClient and connect
- using the client to browse recursively for parameters in the first node bransch
- using the client to browse recursively for parameters in the second node bransch
- Merging all parameters to one big list of all available parameters
- using the client to set up (one)
UaSubscription and create MonitoredItemCreateRequest
for all available parameters
- subscribe...
I should probably also mention that I don't have access to the configuration and setup of the opc end point.
Some problems I have experienced:
- If the parameter list is too long the OPC-client will throw;
Caused by: UaException: status=Bad_TcpMessageTooLarge, message=message size exceeds configured limit: 3713273 > 2097152
- If I divide the list of parameters to smaller chunks and
create MonitoringItems for each chunk, the server throws:
Caused by: UaServiceFaultException: status=Bad_TooManySubscriptions, message=The server
has reached its maximum number of subscriptions
Some of my questions are;
- What are some best practices to set up subscriptions for
a very large number of values?
- Should I try to use more than one OpcUaClient to the same
end-point?
- or should I try to set up several
UaSubscription
on the same OpcUaClient?
And some wishes...
- There are a lot of information regarding the milo-opc, but
to me it's quite fragmented over the internet and in this mailing list. I wish some of the information could be collected and written into the README.md file or in the examples at github.
,regards
Thomas