locked
Connecting to a DSS Node that is already running... RRS feed

  • Question

  • I having been trying to find tutorials but have come up short.

    Basically, what I am looking to find out is if you took Service Tutorial # 4 (http://msdn.microsoft.com/en-us/library/bb483060.aspx) and wanted to write a console application that can subscribe to that service.  Unless I am wrong, everything that I have found is loading the Publishing node on demand.  I want to connect to the node that is already running.

    Thanks in advance,
    Rich
    Monday, December 21, 2009 9:30 PM

Answers

  • To write a pure console app to talk to a service, you will have to implement DSSP (the DSS Protocol). This is not impossible, just probably a lot more work than you would want to do.

    Remember that subscribing to another service (as in Service Tutorial #4) assumes that you are already a service! So to talk to a service from "outside" the DSS node you need to create another DSS node and the two nodes then talk DSSP between them.

    There is nothing wrong with starting multiple DSS nodes. In testing we start dozens of them on the same PC. You just have to make sure that each node has its own ports. Setting up for communication between nodes is a little more complicated because the services have to know the port numbers (and in general the computer name) to connect to.

    Trevor
    • Marked as answer by Richp582 Tuesday, December 22, 2009 8:12 PM
    Tuesday, December 22, 2009 4:05 AM

All replies

  • To write a pure console app to talk to a service, you will have to implement DSSP (the DSS Protocol). This is not impossible, just probably a lot more work than you would want to do.

    Remember that subscribing to another service (as in Service Tutorial #4) assumes that you are already a service! So to talk to a service from "outside" the DSS node you need to create another DSS node and the two nodes then talk DSSP between them.

    There is nothing wrong with starting multiple DSS nodes. In testing we start dozens of them on the same PC. You just have to make sure that each node has its own ports. Setting up for communication between nodes is a little more complicated because the services have to know the port numbers (and in general the computer name) to connect to.

    Trevor
    • Marked as answer by Richp582 Tuesday, December 22, 2009 8:12 PM
    Tuesday, December 22, 2009 4:05 AM
  • I realized I was looking about it the wrong way.  I have a console app the hosts the DSS Runtime and then fires off a group of nodes, and that works fine.  I have another question, but I will be opening up a new thread for it.

    Thanks,
    Rich

    Tuesday, December 22, 2009 8:13 PM
  • Trevor,

     

    Do you have any examples available that demonstrate how to communicate between DSS nodes? I am able to launch multiple DSS services within a single node and have them subscribe to each other properly but the subscriptions fail when I move some of the services to a different DSS node. I have provided more details of what I am trying to accomplish below:

     

    Windows Service #1: Hosts a DSS node that runs DSS services A, B, and C.

    Windows Service #2: Hosts a DSS node that runs DSS services D and E.

     

    Allow DSS service D to subscribe to REPLACE events from DSS service B and allow Windows Service #1 and #2 to run on either the same machine or different machines to allow for better install flexibility and scalability.

     

    Thanks in advance!

    Keith

    Wednesday, August 11, 2010 12:09 PM