一个很偶然的机会,接触到了这个东西:项目遇到了巨大的性能问题,主要是网络方面的,从中国Ping美国一台Server需要256ms,而从美国Ping美国一台Server只需要5ms,这个问题的严重性直接导致了在中国的用户无法接受安装在美国Server上应用程序的反应速度。
无论是传统的CS架构还是BS架构,从服务器到客户端都有大量的数据在传输:一般就是客户端发送一个请求给服务器,然后服务器进行响应,最后把结果返回给客户端,这个应该是最典型的应用了。如果客户端和服务器端的网络不是很理想,那么大量的数据传输必然导致系统的性能无法接受,就我们测试的这个项目来看,10分钟跑4个业务,所产生的流量在10M以上。那么有没有什么方案可以避免这个传输呢?答案是肯定的,Citrix就是这个问题的解决方案。
Citrix是如何工作的呢?
是不是技术倒退到Terminal时代(终端用户),无盘工作站时代?原理上有点像,但是已经不尽然。Citrix就像一个软件平台,如果你用过VMWare或者VirtualPC就可以看到操作系统只是一个软件。Citrix也有客户端和服务器端,所有的软件都安装在服务器上,他的好处是显而易见的,例如,统一部署、版本控制、节省软件License、更加安全。Citrix最大的优点就是减少了服务器和客户端之间的网络流量,因为在操作过程中,机器之间只传递了鼠标、键盘操作和屏幕更新,没有任何的业务数据在客户端和服务器之间传递,就Citrix官方文件说,他们跟Microsoft合作在网络之间提供了一个安全的层,即使仅有的数据也采用了128位数据加密。
有一个客户案例说在服务器和客户端之间的Latency是220ms的时候,使用了Citrix架构以后,性能提高了48倍。
有些缺点也是天生的:
l 如果没有网络,系统就根本无法工作。
l 尽管减少了网络之间的流量,但是现在的任何应用程序都是依赖于网络的,网络的速度是一个问题,Citrix只是在一定程度上解决了这个问题。
l 客户端的License费用,据说很高,在中国这里查不到价格。
Citrix中国
希望有兴趣的朋友研究研究,软件可以在电驴上下载到。