Link to home
Start Free TrialLog in
Avatar of BeyondBGCM
BeyondBGCM

asked on

C# distributing programming

i have a situation where i have 2 dlls written in C# , but kept in 2 different servers dllA on server A and dllB on server B .

now i want to utilize power of both the servers (RAM and CPU) , how can write a program in C# , which does following things
1. executes both the dlls on their respective servers
2. now when execution of both dlls complete it combines the result on server A
Avatar of ste5an
ste5an
Flag of Germany image

A simple solution would be using psexec to run those programs. On the otherhand, I would also consider running your programs as Windows service.
Avatar of BeyondBGCM
BeyondBGCM

ASKER

can you please explain it in detail .....?
how windows service can execute 2 dlls on 2 different servers at same time , and can combine the results .
It's plural: "programs". You need to run a service on each machine.
>>executes both the dlls

dll's are libraries of code.  They do not run on their own.  Your app can use code from a dll but it runs in your app.

What you want may be impossible, it depends on what you require as results AND how much you can redesign the existing things.
Biz Talk server can solve this problem...?
no answer comments for past 2 months
ASKER CERTIFIED SOLUTION
Avatar of Alexandre Simões
Alexandre Simões
Flag of Switzerland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Just reiterating the previous comments.  In order to do what you want to accomplish (regardless of whether the assemblies are exe's or dll's)...  You would need to use something that is running on the targeted server in order to make the calls and do the calculations you are attempting to use.  Whether it is a WCF service, psexec or just a plain old application does not matter.

-saige-
.NET Remoting allow you to call dlls that are installed on different computers.
@Jaques, with .Net Remoting is just an abstraction (helper) layer on top of sockets communication.
This means that on the destination server we must have some sort of application already running and listening to a port.

So again, DLL's don't run code by themselves, and you don't do distributed computing just by spreading DLL's around.
@Alexandre

And this application can serve as a bridge between the client and the dll installed on the server.
Of course, but it's not just the DLL.
You'll always need an application of some sort, on the remote server, that references the DLL and exposes the methods.
Well, I agree that my statement about remoting was not clear. Comment taken.
Which leads one back to the original comments on this question.
You can't do it with some setting - one has to write code and run things on each server.
I think we all agree on that... now we just need @BeyondBGCM to come and explain exactly what he's trying to accomplish :)
I have scared him..
I suspect he is waiting for someone to tell him the magic word and then everything will work without having to do anything else.
Lets give the Time-Zone go around :)

I'm out for today,
Cheers guys!