“服务器-中间件-客户机”编程模型
中间件程序设计技术是Internet时代技术的纲。中间件是操作系统根据元数据生成的构件,Internet技术都是围绕中间件发展的。在软件技术的发 展中,为了处理元数据发明了新语言,为了生成中间件发明了虚拟机,为了建立软件工厂发明了构件库。语言、虚拟机、构件库三位一体形成了当今世界软件编程的 主流发展趋势。而虚拟机实际上可以看成为一种特殊的操作系统。
随着硬件和软件技术的发展,操作系统根据服务器构件中的元数据(用于描述构件中对象的各种信息)动态生成代理和存根(stub)成为可能, 形成典型的客户机/服务器应用模型。这里代理的主要作用是打包,就是把调用函数的变量与函数信息放到一个缓冲区里; 存根的主要作用是解包,也就是把缓冲区里打成包的函数的变量与函数信息恢复,成为一个服务器空间的函数调用。客户端源程序与代理程序编译、链接在一起,形 成客户端程序代码; 服务器源程序与存根程序编译、链接在一起,形成服务器程序代码。这就是典型的客户机/服务器应用模型。目前编程模型已经逐步转移到“服务器—中间件—客户机”三层结构。通信程序(如TCP/IP)不再是客户端程序或服务器程序的一部分,可以通过操作系统生成。既然TCP/IP协议可以生成,HTTP协议也 可以生成。换句话说,既然客户端程序和服务器程序都可以不包含通信协议,它们也就适用于任何通信协议(生成任何通信协议)。由此网络编程模式产生了革命性的飞跃。
中间件是操作系统根据服务器构件元数据动态生成的,介于客户端程序和服务器构件间的代理构件,是一种新型链接技术。面向中间件编程模型中的中间件可以想象成构件的代理构件(或虚拟构件),在系统管理员控制下由操作系统生成。
最典型的中间件就是跨地址空间的TCP/IP通信协议。此外,如果通信协议是HTTP,中间件就成了防火墙; 如果协议对来往消息作了备份,系统就可以容错; 如果协议根据服务器繁忙程度分配消息,就是负载均衡; 如果一个机器上只配有10份构件版权,代理构件可以挡住第11个用户直到前10个用户中有人离开; 如果一个事件是由几个分事件合成,代理构件可以执行事务处理; 如果怕病毒,就把构件放到远程,同时不给它文件支持。把这些功能实现在一个进程里,这个进程就叫作应用服务器。由此可见应用服务器处在Internet技 术的核心地位,中间件技术正是应用服务器的理论基础。
中间件技术的应用并不限于应用服务器。中间件技术为程序模块、构件库、软件工厂提供了联接“管道”、“连线”和“集成电路板”,软件构件的“即插即用”模 式即将走向主流市场。这种“软集成电路板”就是包含元数据的构件。因为元数据可以抽象描述构件功能和接口,从而使构件的发布、版本升级都省去了对头文件 (.h文件)和库文件(.lib文件)的依赖。元数据解决了软件工程的一大难题,中间件技术使得软件的工程化开发水平提高到一个新的层次。
“服务器-中间件-客户机”编程模型
中间件程序设计技术是Internet时代技术的纲。中间件是操作系统根据元数据生成的构件,Internet技术都是围绕中间件发展的。在软件技术的发 展中,为了处理元数据发明了新语言,为了生成中间件发明了虚拟机,为了建立软件工厂发明了构件库。语言、虚拟机、构件库三位一体形成了当今世界软件编程的 主流发展趋势。而虚拟机实际上可以看成为一种特殊的操作系统。
随着硬件和软件技术的发展,操作系统根据服务器构件中的元数据(用于描述构件中对象的各种信息)动态生成代理和存根(stub)成为可能, 形成典型的客户机/服务器应用模型。这里代理的主要作用是打包,就是把调用函数的变量与函数信息放到一个缓冲区里; 存根的主要作用是解包,也就是把缓冲区里打成包的函数的变量与函数信息恢复,成为一个服务器空间的函数调用。客户端源程序与代理程序编译、链接在一起,形 成客户端程序代码; 服务器源程序与存根程序编译、链接在一起,形成服务器程序代码。这就是典型的客户机/服务器应用模型。目前编程模型已经逐步转移到“服务器—中间件—客户机”三层结构。通信程序(如TCP/IP)不再是客户端程序或服务器程序的一部分,可以通过操作系统生成。既然TCP/IP协议可以生成,HTTP协议也 可以生成。换句话说,既然客户端程序和服务器程序都可以不包含通信协议,它们也就适用于任何通信协议(生成任何通信协议)。由此网络编程模式产生了革命性的飞跃。
中间件是操作系统根据服务器构件元数据动态生成的,介于客户端程序和服务器构件间的代理构件,是一种新型链接技术。面向中间件编程模型中的中间件可以想象成构件的代理构件(或虚拟构件),在系统管理员控制下由操作系统生成。
最典型的中间件就是跨地址空间的TCP/IP通信协议。此外,如果通信协议是HTTP,中间件就成了防火墙; 如果协议对来往消息作了备份,系统就可以容错; 如果协议根据服务器繁忙程度分配消息,就是负载均衡; 如果一个机器上只配有10份构件版权,代理构件可以挡住第11个用户直到前10个用户中有人离开; 如果一个事件是由几个分事件合成,代理构件可以执行事务处理; 如果怕病毒,就把构件放到远程,同时不给它文件支持。把这些功能实现在一个进程里,这个进程就叫作应用服务器。由此可见应用服务器处在Internet技 术的核心地位,中间件技术正是应用服务器的理论基础。
中间件技术的应用并不限于应用服务器。中间件技术为程序模块、构件库、软件工厂提供了联接“管道”、“连线”和“集成电路板”,软件构件的“即插即用”模 式即将走向主流市场。这种“软集成电路板”就是包含元数据的构件。因为元数据可以抽象描述构件功能和接口,从而使构件的发布、版本升级都省去了对头文件 (.h文件)和库文件(.lib文件)的依赖。元数据解决了软件工程的一大难题,中间件技术使得软件的工程化开发水平提高到一个新的层次。
举报