zoukankan      html  css  js  c++  java
  • 软件设计基础-C/S系统

    在软件设计开发过程中,逐渐形成了一些针对特定应用领域的软件系统组织方式的惯用模式

    如经典的C/S(client/server,客户/服务器)模式和B/S(browser/server,浏览器/服务器)

    模式。相应的基于C/S模式和B/S模式开发的系统被称为C/S系统和B/S系统。开发时,可根

    据其应用领域的特性选择一种适合的模式进行软件体系结构的设计。

     

    C/S系统在计算机系统发展过程中占据着非常重要的位置,经历了从宿主式集中模式到C/S

    模式的发展过程。

           典型的宿主式集中模式中,采用大中型机或小型机作为主机,所有任务均为主机完成。

    一台主机可配置多台终端,一般可同时支持多个用户,所有用户的应用程序以及数据都存储

    在主机上。用户通过终端与主机交互,终端本身几乎没有处理能力,只负责接收用户的输入及显示

    主机的处理结果。

          20世纪80年代,个人计算机(PC)得到广泛的应用,PC不但可提供与用户交互的能力,同时

    也提供了数据存储及数据处理能力。但数据在多台PC之间的共享成为一个大问题,而局域网技术

    能够提供对PC、打印机以及大中型机或小型机之间的资源集成起来的有效通信支持。局域网

    中的各计算机之间的资源具有不对等性。基于资源的不对等以及便于共享数据和应用,人们

    提出一种新的计算模式——C/S模式,并成熟与20世纪90年代。

     

    在C/S模式中,客户和服务器是指进程而不是指机器硬件。进程是一个具有独立功能的程序

    关于某个数据集合的一次运行活动,可以把进程简单理解为一个可执行文件的一次执行。

    服务器指的是驻留在服务器所在计算机上的不断运行的进程,该进程可以向其他的进程

    提供服务,而客户就是期待使用服务的进程。C/S模式是非对称的,不断运行的服务器进程

    在网络上等待着客户的服务请求。由于客户决定什么时候向服务器提出请求,因此服务器

    实际上是一个总在等待接受请求并提供服务的“从”进程,客户则是提出服务请求的“主”进程。

     

    典型的C/S系统主要由客户应用程序、数据库服务器和网络三部分组成,服务器端主要是数

    据库服务器,负责接收并执行客户端有关数据的增加、删除、修改、查询等请求,而客户端

    依据业务逻辑对数据进行处理,并负责界面展示。

           客户应用程序面向用户,可以向服务器请求并将所得到的响应传递给用户。数据库服务

    器是服务的提供者,负责管理数据库并响应用户需求。其中客户应用程序和数据库服务器指

    的都是软件,不是真正的计算机硬件设备。

     

    C/S模式具有以下优点:

    (1)更好地保护原有资源并共享

    C/S模式是一种开放式的结构,可有效地保护原有的软硬件资源;之前在其他环境上积累

    的数据和软件均可在C/S中通过集成而得以保留和使用;用户不仅可以存取服务器上的

    资源,也可存取其他客户机上的资源。

    (2)快速处理信息

    当用户提出一项请求时,可由多个服务器并行进行处理,提高响应速度;也可将一项任务

    分解,由客户和服务器分别处理,共同合作完成。

    (3)客户机和服务器均可单独自由升级

     

    同时也具有以下缺点:

    (1)将任务分开处理,系统本身也被分为若干部分,增大系统开发和管理的复杂程度与

    难度,增加了服务器的管理和支持人员的开销。

    (2)客户与服务器数据数据库之间的互连支持能力有限,不同的数据库管理系统之间难以

    共享数据。同时,由于客户端集成了对数据的处理和显示功能,如果更新程序,则每台客户

    机上的软件都要更新,否则就会出错,无形中加大了软件分发和更新困难,增加了工作量和

    出错的概率。

  • 相关阅读:
    DRUPAL-PSA-CORE-2014-005 && CVE-2014-3704 Drupal 7.31 SQL Injection Vulnerability /includes/database/database.inc Analysis
    WDCP(WDlinux Control Panel) mysql/add_user.php、mysql/add_db.php Authentication Loss
    Penetration Testing、Security Testing、Automation Testing
    Tomcat Server Configuration Automation Reinforcement
    Xcon2014 && Geekpwn2014
    phpMyadmin /scripts/setup.php Remote Code Injection && Execution CVE-2009-1151
    Linux System Log Collection、Log Integration、Log Analysis System Building Learning
    The Linux Process Principle,NameSpace, PID、TID、PGID、PPID、SID、TID、TTY
    Windows Management Instrumentation WMI Security Technology Learning
    IIS FTP Server Anonymous Writeable Reinforcement, WEBDAV Anonymous Writeable Reinforcement(undone)
  • 原文地址:https://www.cnblogs.com/Ting-light/p/9548452.html
Copyright © 2011-2022 走看看