 |
Advanced .NET Remoting (C# Edition) by Ingo Rammer
Book Summary InformationAuthor: Ingo Rammer Edition: Paperback Published: 2002-04-05 ISBN: 1590590252 Number of pages: 404 Publisher: Apress
Book Reviews of Advanced .NET Remoting (C# Edition)Book Review: Very few real world examples Summary: 2 StarsThis is actually a good book, however, it approaches the subject with an extremely hypothetical view. Lack of real world examples has made reading this book a real bore.
The book on the other hand offers in-depth information regarding the "behind the scenes" work of .NET remoting.
Final verdict: Good value for money, but do not expect any code to work.
Summary of Advanced .NET Remoting (C# Edition)With the arrival of .NET remoting, any programmer who wants to work with distributed objects can benefit from Advanced .NET Remoting, a solid tour of basic and expert techniques for working with distributed code on Microsoft's newest platform. This title's concise, code-centered approach, backed up by judicious discussion of the finer technical points of .NET, is what helps make it a success. After touring the history of standards used for distributed computing over the years, from DCE/RPC to CORBA to COM and related Microsoft technologies, the author zeroes in on .NET remoting. Short, digestible examples highlight the relevant objects and APIs useful to create and invoke objects remotely. From the basics, the book moves forward with other possibilities for designers, whether using by value or reference arguments for objects, client-activated vs. server-activated objects, and a useful section on asynchronous processing for remote function calls. Early examples use the APIs and strategies you'll need to work on your own, and the author highlights "best practices" like using class factories. Detailed discussion of deployment options (using XML) is followed by a quick discussion of security and authentication and then managing object lifetimes (including programmatic options through leasing and sponsors). Coverage of using strongly named assemblies (for the Global Assembly Cache, GAC) and versioning stresses the finer points of how different versions of .NET components can be invoked on the same server. For experts, there's a fine section that covers .NET remoting internals, explains the details of making distributed calls in .NET, and shows off how messages are formatted and passed between systems through proxies. Excellent use of sequence diagrams showing these features at work will make this chapter invaluable for the advanced reader (though you still use the sample code without having to master these .NET internals). The book returns to its pragmatic focus with some interesting sample code for compressing and encrypting .NET remote messages with built-in support classes in .NET. A highly developed chapter demonstrates how you use custom transport channel to make remote calls via e-mail (through SMTP and POP3), showing off the flexibility of the .NET programming model. For the truly adventurous developer, a final chapter explores several (undocumented) features for examining and using context objects used in the .NET remoting model. Overall, this concisely packaged book mixes the right level of sample code, detailed explanation, and advanced material that will let C# developers get going fast with .NET remoting, which can greatly simplify distributed programming on the new Windows platform. --Richard Dragan Topics covered: Introduction to .NET remoting, history of distributed computing mechanisms (including DCE/RPC, CORBA, and COM to .NET), advantages of .NET remoting (and architecture), a simple getting started program using .NET remoting with a server and client, adding validation, types of remoting (passing objects by value and reference, singletons, published objects), using factories to create objects, server-activated vs. client-activated objects, lifetime management, synchronous vs. asynchronous function calls, multi-server programming, shared assemblies (and the soapsuds utility and proxies), configuration (XML config. files and standard options), deployment (console vs. Windows services vs. IIS), security issues (authentication and checking roles), using SSL and encryption, object lifetime management (lease time and managers, server-side sponsors), versioning for .NET components (strong naming and the Global Assembly Cache, GAC), delegate and events (tips for event handling), .NET remoting internals (proxies, messages, message sinks, formatters, and transport channels), internals of asynchronous processing, advanced sink programming (client-, server-side, and dynamic sinks), extending .NET remoting (including message compression and encryption support), custom transport channels (using POP3/SMTP), and undocumented techniques for working with .NET remoting context objects. Advanced .NET Remoting is the first book on the market that offers in-depth coverage of the .NET Remoting Framework. The book is divided into two sectionsthe first detailing the specifics of the framework and its capabilities in real-world applications. Topics include formatters, channels, lifetime issues, security, configuration files, and the basics of server-activated objects versus client-activated objects. Also covered in detail are Windows Services, IIS, and server-side hosting of remotable components in console applications. The second part of the book presents an unprecedented view of .NET Remoting internals. Author Ingo Rammer shows how the framework uses message sinks and sink providers, and gives in-depth instruction on how to implement message and channel sinks. These chapters also give insight into the synchronous and asynchronous message processing within the framework. Going far beyond the information youll gather from Microsoft's documentation, Rammer explains how .NET Remoting really works, and how it can be extended. The book also includes a chapter on the development process and source code for several real-world message sinks, and shows you how to develop a custom Remoting transport channel from scratch. It concludes with detailed coverage of the ContextBoundObject class and .NET contexts, essential for using the technology within individual, client-only applications. With all the attention paid recently to Web services, many developers don't realize that the true successor to DCOM is actually .NET Remoting. And what an improvement it is! Advanced .NET Remoting is the first book that really offers in-depth coverage of the .NET Remoting Framework. The first part of the book covers everything a developer needs to know to use the framework and its capabilities in real-world applications, including the basics of server-activated objects versus client-activated objects, formatters, channels, lifetime issues, security, configuration files, and more. The server-side hosting of remotable components in console applications, Windows Services, and IIS are also covered in detail. The second part presents .NET Remoting internals in an unprecedented way. Ingo Rammer shows how the framework really uses message sinks and sink providers, and gives in-depth advice on why and how to implement message and channel sinks. These chapters will also give detailed insight into the synchronous and asynchronous message processing within the framework. Rammer goes far beyond Microsoft's documentation in explaining how .NET Remoting really works, and how it can be extended-essential information for advanced developers. Rammer also includes a chapter that presents the development process and source code for several real-world message sinks and shows you how to develop a custom Remoting transport channel from scratch. He concludes with coverage of the ContextBoundObject class and .NET contexts, which allow the use of the techniques of the .NET Remoting Framework within individual, client-only applications.
|
 |