I am going to develop a remote control and monitoring system that will be executed on a network. I know that the best architecture for systems like this is SOA (or not?). The system includes 2 types of clients and a server. because of the systems behavior its essential that both servers and clients be able to connect to each other. Now there is some questions about it :
1- Should I use a live connection between system parts? because of servers need to have access to the clients on any time.
2 - I wanna develop it with .Net frame work now, but maybe I will need to change the clients or server to java or some thing else in the future, so can I use .net based technologies like WCF to developig this system?
3 - I have seen a tool named "NServiceBus" that seems to be good system for projects in this way but I don't have enough experience on it, can any body tell me about it's advantages for my system?