Web程序的运行原理及流程(一)
自己做Web程序的开发也有两年多了 从最开始跟风学框架 到第一用上框架的欣喜若狂 我相信每个程序员都是这样过来的
在大学学习一门语言 学会后往往很想做一个实际的项目出来 我当时第一次做WEB项目看的书是struts2 + spring + hibernate 从入门到精通
迷迷糊糊的看完了 顺着步骤一步步搭建环境 也不知道花了多久才跑通 其实框架帮我做了很多事情 我自己那个时候都不知道 现在 我建议使用框架的同时 多注意框架到底帮你做了什么 这对一个web程序员的进阶非常重要
以后也会不定时分享自己以前框架学习的笔记 现在从最底层开始说web程序的运行原理及流程 这里我用自己之前给学弟学妹培训用的PPT截图说明好了
第一部分 为什么会出现web程序

单机程序不能共享功能的特性导致了客户机服务器模式的诞生 有一台服务器有特定功能的程序 其他计算机通过客户端程序与服务器交流间接使用服务器的功能

QQ就是一个典型的例子 计算机安装客户端程序QQ 使用 QQ公司服务器提供的功能

P2P技术算是客户端服务器模式的一个扩展技术 下图其实是杂P2P 不是纯P2P的图 纯P2P是没有中间共享状态的服务器的 每个节点对等互联 可以很好的解决服务器负载高 更好的利用个人计算机资源

很显然在客户端/服务器模式下 我们要获得相应的功能 就必须安装相应的客户端程序 也就是现在的桌面软件 酷狗 百度云音乐 QQ等等 有没有更加优秀的解决方案 只需要装一种软件就能获得我想要的所有功能

这也就是WEB程序诞生的由来 浏览器/服务器模式 现在几乎只要装了浏览器就能使用绝大多数的功能 大多桌面程序都有自己相应的WEB程序 能够通过浏览器使用 用户通过浏览器查看和使用不同服务器提供的服务
第二部分 WEB服务器

服务器矩阵可以理解为一群计算机组队来提供服务 因为有时候访问量大 一个人(计算机)再优秀可能也解决不了 这个时候众人拾柴火焰高

服务器就是提供服务的计算机 上面有不同的软件处理服务的各个环节

要弄懂WEB服务器如何工作 HTTP协议必须要知道

由于WEB服务器这一部分内容较多 下一部分接着介绍下WEB应用服务器和WEB服务器以及用一个具体PHP案例来分析服务器起到的作用
上述PPT截图全为自己所做的PPT截图 如有转载使用 请注明出处
Web程序的运行原理及流程(一)的更多相关文章
- Web程序的运行原理及流程(二)
其实WEB服务器和WEB应用服务器这两个概念特别容易混淆 可以理解为装了不同软件(服务)的两台计算机(服务器)吧 先对两个概念做一个简单介绍 了解了基本的概念 我们再用两个典型的例子做一下比较(建立 ...
- 谈谈 Python 程序的运行原理
因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,谈谈 Python 程序的运行原理 这篇文章准确说是『Python 源码剖析』的 ...
- struts框架的运行原理和流程
从此图中简单描述一下struts2的运行流程:1.客户端请求一个HttpServletRequest的请求,如在浏览器中输入http://localhost: 8080/bookcode/Reg.ac ...
- 2017-03-05 CentOS中配置守护服务(Supervisor)监听dotnet core web程序的运行
我们继续解决上篇博客的问题,我这个人有个毛病,不喜欢遗留什么问题,也不喜欢问题说不明白,具体要怎么解决一定要详尽,因为经常自己遇到问题的时候,去翻别人的博客,就会遇到这样的问题,很苦恼,又说废话了. ...
- 理解Web应用程序的代码结构和运行原理(3)
1.理解Web应用程序的运行原理和机制 Web应用程序是基于浏览器/服务器模式(也称B/S架构)的应用程序,它开发完成后,需要部署到Web服务器上才能正常运行,与用户交互的客户端是网页浏览器. 浏览器 ...
- QF——iOS程序运行原理(APP的生命周期)
iOS程序的运行原理: main.m: 1. main.m 主函数是所有程序的入口函数. 2. 在main函数里是UIApplicationMain函数,开启了一个无限循环,以监听该应用. 该UIAp ...
- .NET程序运行原理及基本概念详解
一.引言 我们知道在Java中有虚拟机,代码运行时虚拟机把Java语言编译成与机器无关的字节码,然后再把字节码编译成机器指令执行,那么在.NET中程序是如何运行的呢?其实运行原理是一样的,.NET中的 ...
- 2. Java程序的运行机制
一.完成一个Java程序的流程:编辑Java源代码→编译Java程序→运行Java程序 1. 在记事本中编写Java程序,然后保存为.java类型文件(Java源文件) 2. 使用javac命令将源文 ...
- Java Web程序工作原理
Web开发的最重要的基本功能是HTTP:Java Web开发的最重要的基本功是Servlet Specification.HTTP和Servlet Specitication对于Web Server和 ...
随机推荐
- 第三次作业:caculator
第三次作业 作业链接 ********* 遇到的问题: Scan类: 队列的使用方法不了解,上网查询并自己练习了一下才初步了解,才运用到作业 . 判断数字用的 if (input[i] >= ' ...
- Convert HTML to Text(转载)
原文地址:http://www.blackbeltcoder.com/Articles/strings/convert-html-to-text Download Source Code Intro ...
- java中值传递和引用传递
最近工作中使用到了值传递和引用传递,但是有点懵,现在看了下面的文章后清晰多了.一下是文章(网摘) 1:按值传递是什么 指的是在方法调用时,传递的参数是按值的拷贝传递.示例如下: public clas ...
- 关于C/S模式开发的学习笔记
当今的现状,感觉是B/S大为盛行,C/S的学习者很少,就那我们学校来看,三年多来,教的.用的最多的都是B/S,在刚刚确定下来的毕设课题中,大约四分之三都是web结合安卓开发的系统.C/S的学习着很少, ...
- grunt安装与运行
用grunt前,需要先安装nodejs.因为grunt依赖于nodejs.nodejs的安装可以参照我的博客里头的nodejs的下载,安装与测试. 第一步:安装grunt-CLI 注意你的电脑要联 ...
- linux Makefile obj-m obj-y
目标定义是Kbuild Makefile的主要部分,也是核心部分.主要是定义了要编 译的文件,所有的选项,以及到哪些子目录去执行递归操作. 最简单的Kbuild makefile 只包含一行: 例子: ...
- 【转】Web前端研发工程师编程能力飞升之路
分类: Javascript | 出自 海玉的博客 今天看到这篇文章.写的非常有意思.发现自己还有很长的一段路要走. [背景] 如果你是刚进入WEB前端研发领域,想试试这潭水有多深,看这篇文章吧: 如 ...
- 正确理解javascript当中的面向对象
认识面向对象: 为了说明 JavaScript 是一门彻底的面向对象的语言,首先有必要从面向对象的概念着手 , 探讨一下面向对象中的几个概念: 1.万物皆为空:万物皆对象 2.对象具有封装和继承特性 ...
- 3D旋转相册(适合新手)
<!DOCTYPE HTML> <html onselectstart="return false"> <head> <meta char ...
- JS中this的指向问题
JS中this的定义:this对象是在运行时基于函数的执行环境绑定的(通俗点来说就是:this代表当前函数属于哪个对象). this一般情况下都代表的是global对象,在浏览器中就是window对象 ...