【Web开发的架构】

Web开发分为:B/S架构、C/S架构

B/S 架构

B/S架构的全称为Browser/Server,即浏览器/服务器结构。Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现,Browser客户端,WebApp服务器端和DB端构成所谓的三层架构。B/S架构的系统无须特别安装,只有Web浏览器即可。

B/S架构中,显示逻辑交给了Web浏览器,事务处理逻辑在放在了WebApp上,这样就避免了庞大的胖客户端,减少了客户端的压力。因为客户端包含的逻辑很少,因此也被成为瘦客户端。

B/S 架构的优缺点

优点:

1、客户端无需安装,有Web浏览器即可。

2、BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。

3、BS架构无需升级多个客户端,升级服务器即可。

缺点:

1、在跨浏览器上,BS架构不尽如人意。

2、表现要达到CS程序的程度需要花费不少精力。

3、在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。

4、客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。

C/S 架构

C/S 架构是一种典型的两层架构,其全称是Client/Server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。

C/S 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是SQL或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。

C/S 架构的优缺点

优点:

1、C/S架构的界面和操作可以很丰富。

2、安全性能可以很容易保证,实现多层认证也不难。

3、由于只有一层交互,因此响应速度较快。

缺点:

1、适用面窄,通常用于局域网中。

2、用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。

3、维护成本高,发生一次升级,则所有客户端的程序都需要改变。

【Web开发的架构】相关推荐

  1. 基于LINQ to SQL的WEB开发三层架构(2)

    初始的Northwind.dbml文件代码如下: #pragma warning disable 1591 //-------------------------------------------- ...

  2. 基于LINQ to SQL的WEB开发三层架构(1)

    LINQ语言集成查询是微软用于抗衡竞争对手,改进现有开发模式下面向数据库操作问题的一个种全新体系架构.它的出现,解决了面向对象开发中由数据库操作引起的先天性的瓶颈,使得面向对象和数据库完美结合. 程序 ...

  3. WEB开发三层架构概述

    SSH的三层结构 DAO 对数据库的操作的接口和实现 SERVICE 业务逻辑的实现,也可以使用dao提供的数据库操作的接口实现 ACTION  实现调用业务逻辑方法来处理用户的请求 三层结构 3-t ...

  4. PythonD12——常用第三方模块(图像、url、检测、检测系统)、图形界面、网络编程、电子邮件和web开发

    文章目录 常用第三方模块 pillow 图像处理标准库 requests 更方便地处理url chardet 检测编码方式 psutil 获取系统信息 virtualenv 隔离运行环境 图形界面(较 ...

  5. 基于asp.net的Web开发架构探索(转)

    问题由来 最近在研究适合团队开发的web架构解决方案,该架构即要适合分工协作又要有一定扩展性,适合不同的数据库需要,因此我查阅了一些资料,初步构想出了一套架构,请各位多多指教. 探索 web开发架构最 ...

  6. web开发模式+三层架构与MVC

    一.MCV模式与三层架构 三层架构包括UI.BLL.DAL三层,MVC三层指的是model.view.controller,这两个是有区别的. 三层架构主要注重数据的处理流程,DAL中数据获取与存储, ...

  7. java tapestry_Java Web开发的轻便架构Tapestry5---简介

    简介: Java Web开发架构Tapestry最初由Howard Lewis Ship创建于2000年,2006年荣升为Apache的顶级开源项目.经过近10年的发展,在Tapestry开发团队不断 ...

  8. 微服务架构Day04-SpringBoot之web开发配置

    SpringBoot之web开发 概述 SpringBoot对静态资源(static-location)的映射规则 模板引擎 thymeleaf thymeleaf基本概念 引入thymeleaf依赖 ...

  9. 从0开始搭建坚不可摧的Web系统主流架构

    从0开始搭建坚不可摧的Web系统主流架构 转自:http://mp.weixin.qq.com/s/HKqgdR0qM3FhdGWcWnlpug 主题简介: 1.网站系统架构当前现状 2.Web系统主 ...

最新文章

  1. 干货整理 Unity3D资源汇总
  2. UA MATH566 统计理论8 用Pivot构造置信区间
  3. 比赛的一道题:SCSHOP1.5代码审计
  4. php5.2通过saprfc扩展远程连接sap730成功案例
  5. Spring Boot 10:处理Json数据中的null值
  6. Shell.FlyoutHeaderTemplate
  7. Linux打印cups API及代码范例链接
  8. exec还原oracle,symantec Backup exec 恢复Recovery Oracle 数据库
  9. word打出计算机图形符号,在word插入符号和特殊符号-word技巧-电脑技巧收藏家
  10. 群晖(synology)日历与IPhone日历同步
  11. Windows系统的一些基础操作(通过运行命令方式打开)
  12. 安全狗等级保护建设服务内容有哪些?
  13. 埋点 神策小程序_神策埋点思路
  14. 2023年——个人每日分享汇总
  15. 【基于Java+MySQL等技术的企业员工信息管理系统设计与实现】(源代码+数据库+论文+PPT+视频讲解部署 获取)
  16. CSIP发布软件自主创新评估系统平台
  17. 【weex】第一次尝试,weex windows下的环境搭建到第一个完整的app
  18. Apache服务器的启动方法
  19. OpenStack Magnum 项目简介
  20. IP地址和子网掩码计算

热门文章

  1. linux 僵尸进程deffunc,多进程-开启子进程的两种方式,查看进程的pid与ppid,僵尸进程与孤儿进程...
  2. 转:王树国,怎样的校长才是一位好校长?
  3. springboot+vue+elementui校园运动会场地预约管理系统java
  4. [TYVJ1827]『Citric II』一道防AK好题
  5. 无线打印服务器怎么安装,【DDwifi打印服务器】Windows 7系统添加打印机步骤(离线安装打印机驱动)...
  6. 配色,蓝色加点橙色好看
  7. 为什么MacBook连接不上阿里云服务器
  8. 解决 chorm adobe flash过期
  9. 地址解析 收货地址智能解析 已上传到Gitee上
  10. 从安装包中提取wear OS手表端应用