首页 > 编程语言 >python三十四期--

python三十四期--

时间:2022-11-15 15:02:32浏览次数:158  
标签:架构 计算机 python 编程 网络 -- 三十四 服务端 客户端

后续内容概要

  • 网络编程(2d)
  • 并发编程(3d)
  • MySQL数据库(5d)
  • 仿优酷系统(3d~5d)
  • 前端基础(7d)
  • django框架(12d)
  • 仿博客园系统(3d~5d)
  • django drf
  • 商城项目
  • 期终架构部分
  • 常见技术(docker k8s 消息队列 网络爬虫 Go语言)

今日内容概要

主题:纯理论

  • 软件开发架构
  • 架构发展趋势
  • 网络编程前戏
  • OSI七层协议
  • 各种重点协议

今日内容详细

软件开发架构

规定了程序的请求逻辑、功能分块

1.C/S架构
	Client:客户端
 	Server:服务端
		"""
		我们使用计算机下载下来的一个个app本质是各大互联网公司的客户端软件
		通过这些客户端软件我们就可以体验到各个互联网公司给我们提供的服务
			eg:
				下载淘宝客户端 打开 体验淘宝服务端提供的购物服务
				下载抖音客户端 打开 体验抖音服务端提供的视频服务 
		ps:一般情况下客户端与服务端交互需要互联网 但是有些不需要(因为客户端和服务端都在一台计算机上)
		
		客户端:即将要去消费的客人
		服务端:给客人提供服务的店
		
		作为服务端必备的多个条件
			1.24小时不间断提供服务
			2.固定的地址
			3.能够服务多个客人(高并发)
		"""
2.B/S架构
	Browser:浏览器
	Server:服务器/端
		"""
		浏览器可以充当所有服务端的客户端
		
		ps:B/S架构本质还是C/S架构
		"""
 
'''
C/S架构
	优势:不同公司的客户端由不同公司独立开发 可以高度定制化客户端功能
	劣势:需要下载才能使用
B/S架构
	优势:不用下载直接访问
	劣势:无法高度定制化 并且需要遵守很多规则
'''

架构总结

ATM:三层架构
选课系统:三层架构
本质也属于软件开发架构的范畴

软件设计的大方向>>>:统一接口
	微信小程序
	支付宝小程序

网络编程前戏

1.什么是网络编程
	基于网络编写代码 能够实现数据的远程交互
2.学习网络编程的目的
	能够开发cs架构的软件
3.网络编程的起源
	"""
	最早起源于美国军事领域
		想实现计算机之间数据的交互
			最早的时候只能用硬盘拷贝
			之后发明了网络编程
	"""
4.网络编程必备条件
	数据的远程交互
 		1.早期的电话
        	电话线
  		2.早期的大屁股电脑	
        	网线
 		3.笔记本电脑、移动电话
        	网卡
	ps:实现数据的远程交互必备的基础条件是物理连接介质

OSI七层协议简介

"""
OSI七层协议:规定了所有的计算机在远程数据交互的时候必须经过相同的处理流程、在制造过程中必须拥有相同的功能硬件
"""
应用层
表示层
会话层
传输层
网络层
数据链路层
物理连接层
ps:应、表、会、传、网、数、物
    
'''常见的是整合之后五层或者四层'''
应用层
传输层
网络层
数据链路层
物理连接层

应用层
传输层
网络层
网络接口层

"""
接收网络消息 数据由下往上传递
发送网络消息 数据由上往下传递
"""

OSI七层协议之物理连接层

主要用于确保计算机之间的物理连接介质 接收数据(bytes类型、二进制)

OSI七层协议之数据链路层

1.规定了电信号的分组方式
2.以太网协议
	规定了计算机在出厂的时候都必须有一块网卡 网卡上有一串数字
	该数字相当于是计算机的身份证号码是独一无二的
	该数字的特征:12位16进制数据
        	前6位产商编号 后6位流水线号
 	该数字也称为:以太网地址/MAC地址

网络相关专业名词

计算机之间要想实现数据交互必须要'连接'到一起

1.交换机
	能够将所有接入交换机的计算机彼此互联起来
2.广播
	首次查找接入同一个交换机的其他计算机 需要朝交换机里面吼一嗓子
3.单播
	首次被查找的计算机回应查找它的计算机 并附带自己的mac地址
4.广播风暴
	接入同一台交换机的多台计算机同时发广播
5.局域网
	可以简单的理解为有单个交换机组成的网络
	在局域网内可以直接使用mac地址通信
6.广域网
	可以简单的理解为范围更大的局域网
7.互联网
	由所有的局域网、广域网连接到一起形成的网络
8.路由器
	不同的局域网计算机之间是无法直接实现数据交互的 需要路由器连接

OSI七层协议之网络层

IP协议:规定了所有接入互联网的计算机都必须有一个IP地址 类似于身份证号
	mac地址是物理地址可以看成永远无法修改
	IP地址是动态分配的 不同的场所IP是不同的
IP地址特征:
    IPV4:点分十进制
    	0.0.0.0
      255.255.255.255
    IPV6:能够给地球上每一粒沙分一个IP地址 
	 IP地址可以跨局域网传输
ps:IP地址可以用来标识全世界独一无二的一台计算机

OSI七层协议之传输层

PORT协议(端口协议)
	用来标识一台计算机上面的某一个应用程序
	范围:0-65535
 	特征:动态分配(洗浴中心号码牌)
	建议: 
       0-1024  		 系统默认需要使用
    	1024-8000 	  常见软件的端口号  
       8000之后的   

URL:统一资源定位符(网址)
    网址本质是有IP和PORT组成的!!!

IP+PORT:能够定位全世界独一无二的一台计算机上面的某一个应用程序

域名解析:将网址解析成IP+PORT

我们之所以不直接使用IP+PORT的原因是太难记 所以发明了域名(网址)

IP:PORT  实际使用冒号连接
    114.55.205.139:80

作业

1.整理今日内容及博客
	熟悉各种协议 了解更多详细
2.复习面向对象之前所有知识点
	要求语言流利表达出来
2.预习明日内容
	socket编程

标签:架构,计算机,python,编程,网络,--,三十四,服务端,客户端
From: https://www.cnblogs.com/tengyifan888/p/16892416.html

相关文章

  • RHEL8 使用iptables-save无法保存防火墙规则
    环境RHEL8原因使用iptables-save命令执行后,无法保存iptables防火墙的规则,在下次重启系统后,会导致防火墙的规则链给重置到默认的规则链。解决使用maniptables-save查......
  • 关于环境
    关于node.js=======如果想要更新node.js的版本=======1.先查看本机node.js版本:node-v2.清除node.js的cache:sudonpmcacheclean-f3.安装n工具sudonpminsta......
  • P1168 中位数
    离散化,线段树#includeusingnamespacestd;constintN=1e5+7;inta[N],tree[N<<4],hs[N];voidadd(intx,inti,intl,intr){tree[i]++;......
  • toml
    一.网址简介1. TOML1.0中文文档2. TOML文件解析--Cuse......
  • 设计的一些常识--摘录其他网站
    1、API与SPI分离,API面向使用者,SPI面向扩展者2、服务域、实体域、会话域分离实体域框架或组件,总会有核心领域模型,比如Spring的bean,Dubbo的service等,核心领域模型及其......
  • pom.xml图标变成蜘蛛怎么办
    IDEA的pom.xml文件上面有蜘蛛标志,这种情况是由于不小心点击AddasAntBuildFile,然后pom.xml就成蜘蛛标志了,点开Ant,一般右侧会有Ant,若没有就点上方工具栏的Views—>Tool......
  • Windows命令行调节电脑分辨率
    利用nircmd1、下载nircmdhttp://www.nirsoft.net/utils/nircmd.html进入网址后,拉到网页最后面,根据自己系统下载32或者64位  2、解压nircmd  3、进入nircmd......
  • 直播CDN调度技术关键挑战与架构设计
    作者:胡济麟1、背景介绍1.1直播业务特点互联网视频直播是一种消息媒介形态,提供时产时消的内容,经过多年,已经发展出秀场、游戏、电商、体育等多种业务形态。主要特点是:内容实......
  • C# 锁汇总
    一、前言本文章汇总c#中常见的锁,基本都列出了该锁在微软官网的文章,一些不常用的锁也可以参考微软文章左侧的列表,方便温习回顾。二、锁的分类2.1、用户模式锁1......
  • 云服务器的体验分享
    之前一直没注意到厂商可以提供免费的服务器,这里推荐官网地址:https://www.sanfengyun.com,有兴趣的小伙伴可以研究一下提供了"免费虚拟主机"“免费云服务器”等免费产品,......