ICE专题:ICE起步

这一生的挚爱 提交于 2020-03-08 08:23:38

 

ICE初步

   最早开始接触ICE是在2005,3月份,当时一个朋友向另一个正打算研究corba的朋友强烈的推荐了ICE.

   参考:http://www.zeroc.com/

   1.什么是ICE?

   ICE(internet communications engine)是适用于异种环境的面向对象中间件平台。

   那么什么是中间件呢?

   比较流行的定义是:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通讯。
   从中间件的定义可以看出,中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,定义中特别强调了其网络通讯功能.

   (如此说来,twisted就是一个中间件)

   目前中间件的三大主流平台:

   1.OMG的CORBA

   2.sun的J2EE(包括ejb等技术)

   3.MS的Microsoft DNA 2000(DCOM/COM/COM+等技术)

   关于中间件的介绍:http://tech.ccidnet.com/pub/article/c322_a204949_p3.html

   2.ICE的一些概念

  • 服务器/客户端(server/client):这个的定义与一般的定义相同,主动的一方被认为是client
  • ICE对象:跟OOP中的对象类似,不同之处在于,在分布式的环境中,同一个ICE对象在不同的地址空间中都可能存在着.ICE对象也提供了一组接口(facets).ICE对象还有一个特殊的接口:主接口.
  • 代理(proxies):是ICE对象引用,代理是在客户地址空间,客户对ICE对象的操作就是通过代理来进行的.代理封装了完成:ICE对象的寻址(包括服务器的寻址),激活ICE对象,传入参数,等待执行并返回执行结果
  • servant:在服务器上的执行体,ICE对象对服务器的操作就是通过调用servant.
  • "最多一次"原则:一次对目的的访问,只会执行一次(并不排除出错重试)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!