关于客户/服务器

         所有大型软件系统都依赖一种持久性存储机制,来维护程序调用之间的状态.在这样的软件系统中,可以明确地将处理过程划分为两个不同的方面:
1.支持持久数据的存取以及并发访问持久存储的处理过程。
2.软件系统内所需的其它处理。
        在多台计算机间划分工作并非促成客户/服务器技术出现的唯一动机。业务数据是大多数公司都拥有的重要财富。从数据存储方面看,在与客户机分离的服务器上维护数据库具有更好的安全性、可靠性以及性能,同时将极大的减小单机系统的高额开销。
        关系数据库开发商认识到了这种机遇,并首先发展了客户/服务器型分布式系统。这些客户/服务器系统的特点是,计算密集型客户机将各自的持久性数据放到位于独立计算机上的关系数据库中,以便维护。这些客户机通常使用结构化查询语言( SQL)以及数据库网络驱动程序与数据库服务器进行通信。
        这种策略维持的时间并不长久。SQL最大的优点在于它是一种非过程化的数据访问机制(所谓非过程的,意味着我们只需给出需要什么,而无需知道怎样做),SQL不允许用户在查询中制定处理语义。这意味着即便处理的结果很小,也需要把大量数据传送到客户机进行处理。因此网络拥塞在所难免。
        关系型数据库开发上迫切需要一种方法,以便能将部分处理转移到数据库服务器进行。这样,所有主流开发商都应提供某种形式的 存储过程(stored procedure),存储过程是运行在服务器端数据库管理系统内的代码。存储过程可以在数据库内部进行数据访问,并在访问结果回送到客户机之前对其进行处理。因为处理的结果比被处理前的数据小许多,所以客户机于服务器之间的网络拥塞程度大大降低。存储过程序可以在多个客户机之间共享。但是,这种方法也有其不利的一面,由于存储过程是特定于数据库开发商的,因此本质上是 不可能移植的。因而,有使用存储过程,就会常常受开发商的某些制约。相比之下, SQL可以提供某种 可移植的方式来访问数据库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值