时间:2022-10-30 18:30:01 | 来源:信息时代
时间:2022-10-30 18:30:01 来源:信息时代
客户/服务器应用开发工具 : 用于开发企业内部数据库应用系统的软件工具,它与企业信息系统的体系结构密不可分。为了应对全世界范围的知识经济的高速发展和市场经济的激烈竞争,企业信息系统的体系结构变化很快,既有传统的二层客户/服务器结构,也有新型的三层客户/服务器结构。许多著名的客户/服务器应用开发工具,如PowerBuilder、Delphi等,都能够同时支持二层和三(n)层客户/服务器结构的企业信息系统的开发。
信息系统按照逻辑结构可划分为表现层、业务逻辑层和数据逻辑层三层。其中,表现层主要完成与用户交互的界面功能,表达界面逻辑; 应用逻辑层主要完成具体的应用处理逻辑; 数据逻辑层主要支持最终的数据存取。这里面最关键的是“应用逻辑层”。
在传统的两层逻辑结构中,表现层和应用逻辑层几乎完全交错在一起,任何一层的修改都必然导致另一层的修改,系统可维护性差。三层逻辑结构的划分可克服上述缺点,它将整个信息系统按照功能划分为三部分:用户服务、商业服务和数据服务;其表现层用于用户服务,应用逻辑层用于商业服务,数据逻辑层用于数据服务。
信息系统的逻辑结构最终要映射到信息系统的物理结构上。两层逻辑结构通常与两层物理结构相匹配; 三层逻辑结构通常与三层物理结构相匹配,信息系统三层物理结构是由用户界面程序、应用程序服务器和数据库服务器三层构成,它对应于表现层、应用逻辑层和数据逻辑层。客户端的用户界面程序提供表示服务,应用程序服务器则根据客户的请求提供相应的商业服务,然后根据商业服务对数据的存取要求向数据库服务器发出数据处理的请求,从而完成用户的事务处理
在两层物理结构中,没有独立的应用程序服务器,所有的应用逻辑程序混杂在用户界面程序中,这在用户数目不很多的情况下是一种好方案,但当用户数目增多时,数据库服务器的负载将急剧加大,甚至无法忍受。在三层物理结构(即三层客户/服务器结构)中建立了应用程序服务器,由它来负责接收客户端的请求,然后再提交给数据库服务器执行。这就使得数据库服务器所承担的负载可以由应用程序服务器来分担,因此,三层客户/服务器结构具有更好的可伸缩性,能够增大客户数,支持大而复杂的信息系统。
在实际的应用中,要依据具体的信息系统的应用需求、复杂程度、客户数的多少来确定使用两层结构还是三层结构,或是两层及三层的混合式结构,甚至可将三层结构再进行一定程序的划分和组合,总之,以获得最优系统性能和最佳维护的结构为原则。
三层客户/服务器结构主要用于大规模复杂信息系统,这些系统一般都有成百上千个客户端。在这种情况下,三层客户/服务器结构具有以下优点:
(1)易维护: 商业逻辑和商业规则独立封装在应用服务器上,当系统的商业规则发生改变时,只需更新应用服务器即可,而不需要(或少量)更改客户端用户界面,无需中断用户,也无需为最终用户重新发放新的界面软件或为其安装调试并重新培训用户,因此,提高了工作效率,简化了升级维护工作。
(2)可伸缩: 实现某一商业逻辑的应用服务器程序可以运行在一台机器上,也可以同时在多台机器上运行。当客户数目较少时,可以只运行一个应用服务器。当客户数目较多时,可以让多台机器同时运行一个应用服务器程序,并以动态的负载平衡机制协调负载的分配,以达到最佳的运行组合。也就是说,三层结构的应用系统可以根据客户的数目调节运行组合,满足不同规模的需求。相对于两层结构而言,增加一个应用服务器当然比增加一个数据库服务器要容易得多。
(3)高可靠性: 由于系统可以同时运行多个应用服务器,当一个应用服务器出错后,可以将对这个服务器的请求转移到其他服务器上执行。这就在很大程度上提高了系统的可靠性。
(4)低成本: 三层结构降低了对客户端软、硬件的要求,对于一个有成百上千个客户端的系统来说,这将会大大降低系统成本。同时,由于软件分发、维护和升级等变得简单,在这方面的成本也将大大降低。