软件
软件:计算机中按照特定的顺序组织的计算机数据和指令的集合,是一个或者一些功能实现的集合,简而言之,软件就是计算机中可运行的程序。(将一些需要处理的想法,变成计算机能够识别并且实现的一系列有组织的数据和指令集合)
软件发展历程:单一任务,静态软件,动态交互软件,面向服务,微软件。
软件分类:操作系统,应用软件,中间件
一:操作系统:直接安装在计算机硬件上进行数据交互的大型软件,
是对计算机硬件的第一次扩展,其他软件都是在系统软件上运行的。
1.windows:个人机多,安全差点(个人版本,服务版本)
2.Linux:安全性好,工具也多
3.mac:开发用的也不少,安全性比windows好
4.Android:
5.ios:苹果系统
二:应用软件:安装在操作系统之上,用来完成某个或者某些功能的软件。
如:qq ,微信,支付宝
应用软件安装是否可以上网(联网)来分,可以得到两大类:单机软件和网络软件。
安装是否需要本地安装客户端,也可以得到两大类:C/S架构软件和B/S架构软件
应用软件架构上来分类:
1.C/S:客户端/服务器(开发和维护要麻烦,成本高,友好度高)
2.B/C:浏览器/服务器(开发维护方便,简单成本低,友好度高差)
用户通过浏览器来访问服务器,浏览器就是界面和客户端。
Django就是基于B/S结构的软件的web框架
功能分类:
B2B:business to business(商家对商家)
C2C:customer to customer(客户对客户)
B2C:(商家对客户)
三:中间件: 应用软件和操作系统软件交互的特殊的软件。
如:负载均衡的软件(负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP 服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。)
web概述
web:网络。就是数据共享的一种组织方式
www:万维网,全球广域网络(world wide web),
特点:一种基于超文本html和HTTP的全球性的、动态交互的(可以实现页面跳转)、跨平台的分布式(不同需求部署)图形信息系统,是建立在internet上的一种网络服务。
互联网的两大基石:超文本HTML,HTTP(无状态无连接)
www != internet
网络:局域网,城域网,广域网
8位(bit)= 字节 (byte)
比较有影响力的公司:微软,谷歌,阿里巴巴,Oracle(甲骨文),sun,Apache
协议:商量出来的一种共同遵守的讨论方案
通讯协议:在通讯过程中共同遵循的传输数据的约定
七层模型:
1.应用层:(数据)FTP,HTTP,SMTP(邮件)
2.表示层:数据格式化、代码转换,数据加密等等
3.会话层:建立或者解除与其他节点之间的联系
4.传输层:提供端对端的接口,TCP,UDP
5.网络层:数据包传输路由,IP
6.数据链路层:传输有地址的帧
7.物理层
HTTP:是目前应用最广泛的TCP/IP家族的所有www文件都遵循的一种标准或网络协议,属于应用层面向对象的协议
特点:无状态,无连接,支持B/S及C/S模式所有的WWW文件都必须遵守这个标准。
目的是:为了提供一种发布和接收HTML页面的方法。
是一个基于TCP/IP通信协议来传递数据,
一个属于应用层的面向对象的协议 。
浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。
UDP:无连接,速度快,UDP没有严格的客户端和服务端,UDP客户端不用连接,只管发送不考虑是否发送成功
TCP:有连接服务器,一种端对端的、可靠的、基于IP的传输层协议,
特点:3次握手建立连接;4次挥手断开连接
URL:统一资源定位符,是一种特殊类型的URI,包含了用于查找某个资源的足够的信息。
(http://www.baidu.com/?kw=''.......................)
协议名://主机名:端口号/路径名/参数
URI:统一资源标识符,HTTP使用URI来传输数据和建立连接。
访问流程:
客户端发送想法,这种想法就是请求(request)的方式过去,发送需要指定URL,服务器把请求做出处理会给过来
相应的信息,也就是做出响应或叫应答(response)
HTTP:用的端口是80,无状态的,无连接,
超文本传输协议,信息是明文传输
HTTPS:端口是443,有连接,
协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
需要到ca申请证书,因而需要一定费用。
无状态:网页的缓存是由HTTP消息头中的“Cache-control”来控制的(必须先与服务器确认返回的响应是否被更改,然后才能使用该响应来满足后续对同一个网址的请求。因此,如果存在合适的验证令牌 (ETag),no-cache 会发起往返通信来验证缓存的响应,如果资源未被更改,可以避免下载。)
no-store:所有内容都不会被缓存到缓存或 Internet 临时文件中
cmd中输入 ping 127.0.0.1 测试是否连接(ping的是主机)
IP协议:32位