Distributed .NET Programming in C#
Author - Tom Barnaby
Pages - 494 pages
Press - Apress;
Edition - 1 edition
Published - May 29, 2002
Language - English
ISBN-10 - 1590590392
ISBN-13 - 978-1590590393
Distributed programming is characterized by several distinct physical components working together as a single system. Here, “distinct physical components” could mean multiple CPUs or, more commonly, multiple computers on a network.
You can apply distributed programming to a wide variety of problems, from predicting the weather to purchasing a book. At its heart, the premise of distributed programming is this: if one computer can complete a task in 5 seconds, then five
computers working together in parallel should complete the task in 1 second.
Of course, it is never quite that easy. The problem is the phrase “working together in parallel.” It is difficult to get five computers on a network to cooperate efficiently. In fact, the application software must be specifically designed for this to be effective. As an analogy, consider a single horse pulling a carriage. A horse is a powerful animal, but, in terms of power-to-weight ratios, an ant is many times stronger (we will just assume ten times stronger). So, if I gather and harness enough ants to equal the mass of the horse, I can move ten times the amount of
material in the carriage. A perfect example of distributing the workload, right? The calculations are reasonable, but hopefully you are chuckling at the ludicrous vision of millions of ants with tiny harnesses pulling together.
The Evolution of Distributed Programming
This is .NET
Introduction to .NET Remoting
Distributed Programming with .NET Remoting
Additional Remoting Techniques
Understanding XML Web Services
Understanding COM Interop
Leveraging Component Services
.NET Message Queuing