Ice preliminary
The first contact with ice was in. At that time, a friend strongly recommended ice to another friend who was planning to study CORBA.
Refer:Http://www.zeroc.com/
1. What is ice?
Ice (Internet communications engine) is an object-oriented middleware platform for heterogeneous environments.
So what is middleware?
A popular definition is that middleware is an independent system software or service.ProgramDistributed Application Software shares resources between different technologies. Middleware is located on top of the client/server operating system to manage computing resources and network communication.
From the definition of middleware, we can see that middleware is a kind of software, not a kind of software. Middleware not only achieves interconnection, but also achieves interoperability between applications. middleware is a distributed processing-based software, the network communication function is particularly emphasized in the definition.
(In this case, twisted is a middleware)
Currently, three major middleware platforms:
1. OMG's CORBA
2. Sun's J2EE (including EJB and other technologies)
3. Microsoft DNA 2000 of MS (DCOM/COM + and other technologies)
Introduction to middleware:Http://tech.ccidnet.com/pub/article/c322_a204949_p3.html
2. Concepts of ice
- Server/client: This definition is the same as the general definition. The active party is considered as the client.
- Ice object: similar to the object in OOP, the difference is that in a distributed environment, the same ice object may exist in different address spaces. the ice object also provides a set of APIS (facets ). the ice object also has a special interface: the main interface.
- Proxies: refers to the ice object reference. The proxy is in the customer address space, and the customer's operations on the ice object are performed through the proxy. proxy encapsulation completed: Ice object addressing (including server addressing), Activating ice object, passing in parameters, waiting for execution and returning execution results
- SERVANT: indicates the execution body on the server. The ice object performs operations on the server by calling servant.
- "Up to once" Principle: A single access to the target will only be executed once (do not rule out error retry)