LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
PrimaryKey

Ability to seamlessly communicate over the network and create your own queue specifications.

Status: New

Please add to AF:
Ability to seamlessly communicate over the network and create your own queue specifications. For example actors should be able to talk between physical systems. Using the Network Actor is not a good solution, because it is simply to verbose and difficult to understand. The philosophy of AKKA should be embraced here "
This effort has been undertaken to ensure that all functions are available equally when running within a single process or on a cluster of hundreds of machines. The key for enabling this is to go from remote to local by way of optimization instead of trying to go from local to remote by way of generalization. See this classic paper for a detailed discussion on why the second approach is bound to fail."

Piotr Kruczkowski
Certified TestStand Architect
Certified LabVIEW Architect
4 Comments
AristosQueue (NI)
NI Employee (retired)

Which "Network Actor" were you talking about? I tend to agree with you for the nested network actor, but many people like it. However, the Linked Network Actor is exactly what you're asking for. Have you looked into using it? That add-on adds the ability to seamlessly abstract whether an actor is on the local machine or a remote target by adding a new IP address terminal to Launch Nested Actor. None of the Enqueue operations has to change.

 

We have never chosen to ship this add-on with LabVIEW, but it does exist to support the AF.

You can download the Linked Network Actor here:

https://forums.ni.com/t5/Actor-Framework-Documents/Linked-Network-Actor/ta-p/3513034

 

Let's leave this idea open. If it gets enough kudos, we can consider shipping the Linked Network Actor. (We'd probably ship the Nested Network Actor at the same time to give people their choice of implementation.)

drjdpowell
Trusted Enthusiast

I had a look at how easy it would be to use the Linked Network Actor to convert the standard Actor Framework template project (so, to get "Alpha" on another machine) and it does not look seamless to me.  The message to Alpha comes via a method "Send Alpha Task.vi" that would have to be modified to use the "Send Transmit Network Message.vi" method, and the message back from Alpha is sent to its Caller's Enqueuer, requiring some way of substituting the LNA Enqueuer.  That seems some significant changes to me, and doesn't fit the Akka quote.

AristosQueue (NI)
NI Employee (retired)

Powell: It works with the standard actors as it stands. All the shim work works behind the scenes. No changes are needed to the caller code except to supply a network address for Launch Actor.vi. Literally, no other changes needed.

drjdpowell
Trusted Enthusiast

Did you actually mean the Network Endpoint Actor rather than the Linked Network Actor?  I didn't download it, but it's description sounds more like what you're describing.