買這商品的人也買了...
-
$1,250$1,225 -
$1,029Fundamentals of Data Structures in C
-
$640$608 -
$2,610$2,480 -
$650$514 -
$1,029Operating System Concepts, 6/e
-
$980$774 -
$970Introduction to Algorithms, 2/e
-
$1,890$1,796 -
$1,710$1,625 -
$880$695 -
$1,274Computer Architecture: A Quantitative Approach, 3/e(精裝本)
-
$1,890$1,796 -
$780$741 -
$590$466 -
$1,260CCNA Certification Library (CCNA Self-Study, exam #640-801), 6/e
-
$399CCNA ICND Exam Certification Guide (CCNA Self-Study, 640-811, 640-801) (Hardcover)
-
$750$675 -
$560$504 -
$2,340$2,223 -
$490$417 -
$480$379 -
$750$593 -
$780$663 -
$675LPIC 1 Exam Cram 2: Linux Professional Institute Certification Exams 101 and 102 (Paperback)
相關主題
商品描述
Java RMI contains a wealth of experience in designing and
implementing Java's Remote Method Invocation. If you're a novice reader, you
will quickly be brought up to speed on why RMI is such a powerful yet easy to
use tool for distributed programming, while experts can gain valuable experience
for constructing their own enterprise and distributed systems.
With
Java RMI, you'll learn tips and tricks for making your RMI code excel.
The book also provides strategies for working with serialization, threading, the
RMI registry, sockets and socket factories, activation, dynamic class
downloading, HTTP tunneling, distributed garbage collection, JNDI, and CORBA. In
short, a treasure trove of valuable RMI knowledge packed into one book.
Table of Contents
Preface
Part I. Designing and Building: The Basics of RMI Applications
1. Streams
The Core Classes
Viewing a File
Layering Streams
Readers and Writers2. Sockets
Internet Definitions
Sockets
ServerSockets
Customizing Socket Behavior
Special-Purpose Sockets
Using SSL3. A Socket-Based Printer Server
A Network-Based Printer
The Basic Objects
The Protocol
The Application Itself
Evolving the Application4. The Same Server, Written Using RMI
The Basic Structure of RMI
The Architecture Diagram Revisited
Implementing the Basic Objects
The Rest of the Server
The Client Application
Summary5. Introducing the Bank Example
The Bank Example
Sketching a Rough Architecture
The Basic Use Case
Additional Design Decisions
A Distributed Architecture for the Bank Example
Problems That Arise in Distributed Applications6. Deciding on the Remote Server
A Little Bit of Bias
Important Questions When Thinking About Servers
Should We Implement Bank or Account?7. Designing the Remote Interface
Important Questions When Designing Remote Interfaces
Building the Data Objects
Accounting for Partial Failure8. Implementing the Bank Server
The Structure of a Server
Implementing the Server
Generating Stubs and Skeletons9. The Rest of the Application
The Need for Launch Code
Our Actual Launch Code
Build Test Applications
Build the Client Application
Deploying the ApplicationPart II. Drilling Down: Scalability
10. Serialization
The Need for Serialization
Using Serialization
How to Make a Class Serializable
The Serialization Algorithm
Versioning Classes
Performance Issues
The Externalizable Interface11. Threads
More Than One Client
Basic Terminology
Threading Concepts
Support for Threads in Java
Deadlock
Threading and RMI12. Implementing Threading
The Basic Task
Guidelines for Threading
Pools: An Extended Example
Some Final Words on Threading13. Testing a Distributed Application
Testing the Bank Application14. The RMI Registry
Why Use a Naming Service?
The RMI Registry
The RMI Registry Is an RMI Server
Examining the Registry
Limitations of the RMI Registry
Security Issues15. Naming Services
Basic Design, Terminology, and Requirements
Requirements for Our Naming Service
Federation and Threading
The Context Interface
The Value Objects
ContextImpl
Switching Between Naming Services
The Java Naming and Directory Interface (JNDI)16. The RMI Runtime
Reviewing the Mechanics of a Remote Method Call
Distributed Garbage Collection
RMI's Logging Facilities
Other JVM Parameters17. Factories and the Activation Framework
Resource Management
Factories
Implementing a Generic Factory
A Better Factory
Persistence and the Server Lifecycle
Activation
A Final Word About FactoriesPart III. Advanced Topics
18. Using Custom Sockets
Custom Socket Factories
Incorporating a Custom Socket into an Application19. Dynamic Classloading
Deploying Can Be Difficult
Classloaders
How Dynamic Classloading Works
The Class Server
Using Dynamic Classloading in an Application20. Security Policies
A Different Kind of Security Problem
Permissions
Security Managers
Setting Up a Security Policy21. Multithreaded Clients
Different Types of Remote Methods
Handling Printer-Type Methods
Handling Report-Type Methods
Generalizing from These Examples22. HTTP Tunneling
Firewalls
CGI and Dynamic Content
HTTP Tunneling
A Servlet Implementation of HTTP Tunneling
Modifying the Tunneling Mechanism
The Bank via HTTP Tunneling
Drawbacks of HTTP Tunneling
Disabling HTTP Tunneling23. RMI, CORBA, and RMI/IIOP
How CORBA Works
The Bank Example in CORBA
A Quick Comparison of CORBA and RMI
RMI on Top of CORBA
Converting the Bank Example to RMI/IIOPIndex