Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[milo-dev] what is the best practice of build a opc ua server with milo?

I am working on a poc of opc ua server demo with milo. I have a backend system that is already running, and I want to make it an opc ua server. Other opc ua clients can commucate with this server using services defined in opc ua spec such as addNodes, read, write, browse, query, call method, createSubcription...
I encounts some problems, and I have some questions:
1. when receives `read` requests from clients, how the server obtains data from my existing backend system? Choice-1, with implementing some interfaces or overriding some methods, when the server receives `read` requests from clients, it can invoke overriding methods to read real data from backend system. I tried it, but found it difficulty. Did I find a wrong way? Choice-2, Read the data from backend system to the ua server's memory with `write`, then no methods would be overrided. In this case, all data would be loaded into memory.
2. If the best practice is choice-1, what should I do? What interfaces should be implemented?
3. If the best practice is choice-2, huge data would be the new problem. It is not a good idea to load them all into the memory.
4. If all data is loaded into memory, when original data changes, sync will be another problem.


 


Back to the top