作者:刘 波/ 文(新疆维吾尔自治区乌鲁木齐市天山区人民检察院检察技术科科长)
关于B/S和C/S架构的探析
当今世界科学技术飞速发展,尤其以通信、计算机、网络为代表的互联网技术更是日新月异,令人眼花燎乱,目不睱接。 由于计算机互联网在政治、经济、生活等各个领域的发展、运用以及网络的迅速普及和全社会对网络的依赖程度,计算机网络已经成为国家的经济基础和命脉,成为社会和经济发展强大动力、,其地位越来越重要。但是,由于主流技术研发企业和用户对“B/S”和“C/S”技术谁优谁劣、谁代表技术潮流发展等等问题的争论不休,已经给检察机关使用“OA(办公)”和“案件管理”软件工作开展带来困惑,本文就此两项技术发展变化和应用前景做些探讨,供同行叁考。
一、 什么是C/S和B/S
要想对“C/S”和“B/S”技术发展变化有所了解,首先必须搞清楚三个问题。
第一、什么是C/S结构。
C/S (Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件, 加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。如我院使用的上海超兰公司“案件统计”管理软件就是典型的C/S体系结构管理软件。
第二、什么是B/S结构。
B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。目前我院内网(Intranet)、外网(Internet)和北京东方清大公司“案件、办公管理软件”就是B/S 结构管理软件,干警在局域网各工作站通过WWW浏览器就能实现工作业务。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
第三、管理软件主流技术。
管理软件技术的主流技术与管理思想一样,也经历了三个发展时期。首先,界面技术从上世纪DOS字符界面到Windows图形界面(或图形用户界面GUI),直至Browser浏览器界面三个不同的发展时期。其次,今天所有电脑的浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其风格都是一样的,使用人对操作培训的要求不高,而且软件可操作性强,易于识别;再者,平台体系结构也从过去单用户发展到今天的文件/服务器(F/S)体系、客户机/服务器(C/S)体系和浏览器/服务器(B/S)体系。
二、C/S和B/S 之比较
C/S和B/S是当今世界开发模式技术架构的两大主流技术。C/S是美国 Borland公司最早研发,B/S是美国微软公司研发。目前,这两项技术以被世界各国所掌握,国内公司以C/S和B/S技术开发出产品也很多。这两种技术都有自己一定的市场份额和客户群,各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群体,都有一大群文人墨客为自己摇旗呐喊,广告满天飞,可谓仁者见仁,智者见智。
1、C/S架构软件的优势与劣势
(1)、应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。
(2)、数据的储存管理功能较为透明。在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。
(3)、C/S架构的劣势是高昂的维护成本且投资大。首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。
其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。
2、B/S架构软件的优势与劣势
(1)、维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。
(2)、成本降低,选择更多。大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。 现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。
比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。
(3)、应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。
三、检察机关应使用安全先进的产品
我国政府处于国家安全和战略的考虑,对操作系统在涉密机关和企业使用非常重视,有严格的规定。Linux操作系统的出现,使政府机关处于安全的考虑想法变成了现实。由于Linux(美国研发)是免费产品,源代码也是公开的,我国也出现很多开发Linux操作系统的力量,加之国家大力推动Linux操作系统以及国内知名企业联想、方正、同方在电脑出厂时均安装Linux操作系统,我国越来越多设密机关会使用Linux操作系统,从国内软件市场的销售来看Linux的产品基本是每个月都是排名第一。因此B/S 管理软件最好选择 JAVA操作系统技术。
从全国检察机关信息化整体布局看,将来全国检察机关的局域网应用系统都要在互联网或专网上运行,而B/S架构的软件则代表了时代的潮流,是国际领先技术,而且方便、高效、快捷、安全。各检察机关局域网只要连上互联网或内部广域专网就可以与全球的客户相连,与各地的检察机构相连。在JAVA这样的跨平台语言和Linux操作系统出现之后,B/S架构的前景更是无限宽广。具体讲:
1、有利于移动办公:回家或离开办公室或出差到其他地方,只要有可以上网的电脑,就可以使用办公系统网上办公;各地检察机关可以通过互联网、专线、电话网等连接使用,实现资源共享,协同办公,办案。
2、有利于系统整合:无论是办公自动化管理系统(OA),人力资源管理系统,客户关系管理系统,ERP,以及检察业务等等,只要采用统一的B/S结构开发的产品,无论是现在还是将来都是最好的选择。
3、有利于JAVA技术普及:B/S结构利用不断成熟和普及的浏览器技术实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构,而JAVA已经是应用十分普及的技术了,在此基础上发展的J2EE技术更是将java技术的使用发展到了一个更高的平台。目前在J2EE构架上的软件产品和工具种类繁多,基于JAVA技术的J2EE平台软件和工具已经发展的非常丰富和完善,应用领域遍及整个IT界。
4、有利于良好的售后服务:使用说明书越来越厚和花大量时间接受培训,并不能称为“良好的售后服务”,真正好的售后服务是产品在功能上越来越复杂的同时,产品的使用越来越简单,一看就会。使用浏览器作为软件界面,不但容易统一各种应用系统,也非常便于远程维护服务和客户使用。今天,工作节奏越来越紧张,召集大批的检察官进行培训是很困难的,时间和人力都难以集中,浪费也很大。
5、有利于计算机网络安全:具我们对全疆160多家检察院微机操作系统使用情况调研,目前检察机关使用的操作系统绝大多数是美国微软公司windows操作系统,都没有购买正版软件,绝大多数是安装使用的是盗版软件(包括我院),由于美国微软公司windows操作系统源代码不是公开的,“后门”和“漏洞”很多。安全隐患不言而喻。
四、市场经济决定产品出路
市场经济决定产品出路,世界上没有完美无缺的产品,C/S和B/S发展趋势也是不断前进,不断融合的。我们对全国针对检察机关部分企业的产品做了调研发现,目前,四川省30盛安公司开发的检察机关“案件管理 ”软件(详见2004年1月《人民检察》封四)就是C/S和B/S混合产品;北京东方请大公司“案件管理”软件是B/S结构;上海超兰公司“案件统计”软件是C/S结构;清华紫光公司“案件管理”软件是C/S结构。其他几家企业产品我们没有试用过,不太了解,但从我们试用情况反映,北京东方清大公司的管理软件非常好用,功能较全。四川30盛安公司管理软件也不错,但还有待改进。剩下的两家公司管理软件我们认为根本不能用。全国各省级检察院除新疆以外都没下文件要求强行安装某家公司的管理软件,我区强制下文安装清华紫光公司没有经过市场检验的软件利少弊多,违背市场竞争法则,也与最高人民检察院“准入制”项背。
我们在和部分企业接触也发现,国内许多研发企业不知道用户的困惑和想法、甚至不愿听客户的对软件的修改意见。比如上海超兰公司“案件统计”软件,搞封锁,试用版本,到期就恶人,还不愿交流,他们根本不知道自己产品的缺陷在那里,这是他们的悲哀。检察机关高层决策非常重要,应该在企业与检察机关建立一个平台,加强对话、交流、沟通。要知道用户需要的是哪种客户/服务器体系结构(Client/Server Architecture)适合自己、为什么要采用C/S体系结构?为什么要采用B/S体系结构? 要去研究客户的需求,开发各种适销对路的产品。用户不仅需要知道产品的先进、性能、潮流、安全等实质问题的最完美解答,更需要优质服务。企业也应当知道,对客户现在、未来和潜在需求的研究是企业生存、发展、壮大的前提。精力要用在将产品大胆交我们使用,由使用单位提出意见,再完善修改,这才是唯一的出路。可以讲,谁敢先行这一步,市场就是谁的。靠广告,是没有出路的。我们奉劝精明的即将跨入“准入制”门槛的企业老总们,思想解放一点,眼睛向下,产品能不能用,好不好用,谁优谁劣?高检院按市场经济规则实行“准入制”后会有分晓。最终90%的基层检察机关要使用,他们说了算。因为,实践是检验产品是否“合格”的唯一标准。
在网络技术不断发展的今天,检察机关做为涉密机关,应积极使用安全先进的产品,加强与企业对话、交流、沟通。总之,采用基于B/S架构几乎不需要培训,使用浏览器这种易于操作界面的产品,是我们最好、最明智的选择