|
|
| 从应用系统的交付方式来看应用虚拟化 |
|
| ——安欣发布日期: 2009-07-10 08:57:32 |
核心提示: |
|
|
应用虚拟化是近期的一个热点话题,那么应用虚拟化究竟是解决什么问题的呢?本文将试图从应用系统的交付方式的变迁上来解释这一问题。 早在计算机与信息化技术诞生之初,那时计算机又大又昂贵,计算机的使用者在需要使用应用程序时,需要使用字符终端设备连接到计算中心,计算中心统一负责所有的软硬件系统的管理。字符终端方式下,应用程序是集中管理,集中使用的。虽然用户界面不太友好,但是字符终端方式下的应用程序的管理还是非常简单的。也许是考虑到了这一优点吧,利用字符终端访问应用程序的方式一直遗留到了现在,有很多企业的ERP软件,依然在使用这种应用交付方式。 随着PC的诞生,以及微软Windows操作系统的巨大成功,个人用户终于拥有了属于自己的计算资源和华丽的图形用户界面。为充分利用这些资源,应用程序的发布方式也随之出现变革,出现了所谓的C/S 应用系统。C/S方式下,应用系统被分成了两部分,一部分在客户端运行,主要负责处理用户的输入和图形用户界面的显示,一部分在服务器端运行,主要负责处理业务逻辑和数据存储。在C/S方式下一旦应用系统需要修改和维护,一般要同时修改客户端程序和服务器端程序,如果客户端数量比较大分布较广,更新一次客户端程序无疑是一场噩梦。 正因为C/S 方式存在应用程序的更新方面的问题,随着互联网以及WEB技术的成熟,人们意识到可以利用WEB服务器来发布应用系统,这时出现了所谓的B/S 架构应用系统。B/S应用系统的使用是通过浏览器访问应用服务器来达成使用应用系统目的的,应用系统的维护集中在应用服务器端,应用系统的修改会立刻通过用户的访问反馈到客户端。虽然相对于C/S 应用系统,B/S应用系统在维护性上要好上很多,但是在用户输入的响应上,在图形用户界面的灵活度上照C/S系统差很多。另外不同的浏览器会对应用系统的界面产生不同的解释,从而造成了新的依赖,即应用系统只能运行在指定版本的浏览器上。例如,某应用系统只能运行在IE6.0下,在IE7.0 、IE8.0、FireFox下均无法运行。 既然以上三种应用系统的交付方式互有长短,并且随着信息技术的不断升级,用户难免会有一些遗留的系统采用各种不同的应用交付方式,用户使用起来比较麻烦,管理起来亦很麻烦,有什么办法可以屏蔽这些复杂性呢? 答案是肯定的,这种技术就是应用虚拟化技术,所谓应用虚拟化在我看来就是消除了各种应用交付系统的差别,提供集中管理,分布式访问。用户不用再去关心应用系统具体的实现技术,只要使用就好了。 现在大家已经知道了应用虚拟化是解决什么问题的,那么现在让我们来进一步探究一下应用虚拟化的实现原理吧。 字符终端方式下应用系统向用户端交付的是字符流。 C/S 方式下应用系统向用户端交付的一般是数据库的查询结果,或应用层的数据。 B/S 方式下应用系统向用户端交付的是HTML代码。 那么应用虚拟化系统向用户端交付的是什么呢?应用虚拟化系统向客户端交付的是应用的图形界面,而不管该应用是一个B/S 应用,还是一个C/S 应用。 应用虚拟化系统采集用户的键盘鼠标输入,通过网络传输到应用虚拟化服务器,在服务器上将鼠标和键盘输入传输给具体的应用系统,应用系统产生对应的图形用户界面输出,应用虚拟化系统将该输出在通过网络交付到客户端,在客户端显示出来。 现在大家或许恍然大悟,这个应用虚拟化不就是图形终端技术么?没错,技术的发展也是螺旋式上升的,终端技术又开始了一个轮回。 在实现技术上应用虚拟化确实使用了图形终端技术。但如果把这个技术放到整合应用系统的交付方式上来,他就变成了应用虚拟化,变成了解决用户问题的新技术,这时又有谁关心它是如何实现的呢? 以上就是我对于应用虚拟化的一些粗陋的理解,希望可以抛砖引玉。 |
|
|