web基础与http
一,dns与域名
网络基于tcp/ip协议进行通信和连接的,其中主机以ip地址做固定的地址标识,用以区分用户和计算机。ip地址是由32位二进制数组成,不方便记忆。为了方便记忆,采用了域名。但是网络通信的唯一标识是ip地址,于是就有了dns。
dns的解析方式:
1,etc/host
负责快速解析的文件,包含了ip与主机名之间的映射关系。如果没有dns服务器的情况之下,可以使用/etc/hosts来完成解析和映射
2,etc/resolv.conf
Dns客户端的配置文件,设置dns服务器的ip和域名。还包含了主机域名的搜索顺序。主要是域名解析服务器使用的配置文件。
3,修改网卡配置。
生效顺序:1,hosts 2,网卡配置文件 3,resolv.conf
域名解析服务器作用:
1,保持和维护域名空间
2,应对相应的解析请求
二,Html
Html:超文本标记语言,是一种规范的,标准的语言格式。网页文件本身就是一个文本文件。Html就是通过标记的方式告诉浏览器如何显示文本当中的内容。所有可以生成txt文件工具都可以修改html。修改后的文件后缀只能是.html或者.htm。
网页:纯文本格式的文件,用html语言莱进行编写的。
网站:由多个页面组成的,网页的结合体。主页是打开网站后的第一个页面。
域名:浏览网页时输入的网址。
http/https
用来传输页面的通信协议,https就是加密的,是一种通信协议,基于tcp协议。端口号http80,https443。
URL:万维网寻址系统的唯一标识
超链接:超链接将网站中的不同页面连接起来。
Web2.0用户交互
静态页面和静态页面:
静态页面是标准的html文件,扩展名都是htm,html。里面包含图片,文本,声音,动画。它是网站建设的基础,早期的网站都是静态页面。没有后台数据,不包含可交互的内容。更新起来比较麻烦,一般用于展示型网站。
静态页面的特点:
- 静态页面的URL是固定的,一般不包含?
- 页面一经发布,都是保存在网站的服务器上的。
- 静态页面相对稳定,内容很少发生变化,容易被搜索引擎检索
- 没有数据库指出,制作和维护的工作量比较大。网站的信息量如果太大,单纯的使用静态页面比较困难
- 没有交互性,只能看,功能受限很大
- 浏览速度很快,因为不需要连接后端
动态页面:
- 网页url是不固定的,用户可以和后台数据进行交互
- 动态页面的网址中一般会包含一个特殊标记 ?
- 动态页面的语言:PHP,JSP,Python,Ruby,Tomcat
动态页面的特点:
- 交互性
- 自动更新
- 特效,每个人进入页面的时候会有不同效果。
http协议:超文本传输协议
Httpd程序名,apache服务名
http协议是互联网上应用最广泛的网络协议之一,是基于tcp的协议,在应用层工作
客户端和服务端之间进行数据传输的一种规则。
工作流程:
- 客户端和服务端进行tcp连接。
- 客户端发送http请求,服务端接收到http请求之后,响应客户端的请求
- 通过socket接口进行通信
- 相应到达客户端,浏览器进行解析。
- 访问结束后断开连接。
http是一种无状态的协议,本身不会对发送过的请求和相应的通信进行持久化(连接保持)处理。为了能让http能够快速的,大量的进行处理事务,提高效率。
Cookie:记录用户的登录状态,跟踪统计用户访问的习惯,识别用户身份,保存用户信息。http自带的连接保持功能,长连接
长连接:一次性获取页面文件的所有信息,不用需要再分开处理请求,所以速度大大加快,并行。
连接保持:keep-alive。在一个tcp连接上,可以传送多个http请求和相应,减少了建立和关闭连接的消耗和延迟。连接保持默认开启并且有时限,一般是60s
连接资源占用:长时间保持会降低服务器的负载,如果是高并发,会使服务器耗尽资源。
连接状态管理:长连接需要维护连接状态。服务器需要跟踪每个连接的状态,增加服务器的负载。
https:加密通信协议,主要是加密数据传输,加密过程涉及客户端和服务器之间的密钥交换,确保只有合法的接收方能够解密数据
证书:https使用数字证书验证身份。加密解密对访问速度有一定影响。
http请求头中包含请求体,请求体中的内容:
Accept:客户端可以接受的数据类型
Accept-Encoding:客户端可以接受的编码格式
Accept-Language:客户端支持的语言类型
Cache-Control:图片或者是音频文件的缓存时间
Connection:告诉服务器处理请求连接,一般默认都是keep-alive,默认65.
请求方式:
get:用来向服务器发起请求。
Post:向后台发数据,向服务器添加数据,也可以改变服务器数据。
Get方法:
- 从指定服务器获取数据
- Get请求是可以被缓存的
- Get请求会保存在浏览器的记录中,cookie
- Get请求长度是有限制的
Post请求
- post请求不能缓存
- Post请求也不会被记录再浏览器的记录当中
- 请求体长度没有限制
Status code状态码,响应码(面试)
请求之后服务器收到请求会有回应,同时会反馈一个响应码:
1xx:100-101 信息提示
2xx:200-206 成功
3xx:300-305 重定向
4xx:400-415 客户端错误
5xx:500-505 服务端错误
常见的:
200:成功
301:请求的永久页面跳转
304:重定向到缓存
403:禁止访问
404:请求页面找不到
500:服务器内部错误
502:网关失效
503:服务不可用
504:网关请求超时
通信套接字:Socket
实现不同主句进行通信和数据交换,进程间传输的标志:ip,端口
合同谈判协议中socket的作用:
- 客户机套接字:定义了唯一的客户进程
- 服务端套接字:定义了一个唯一的服务器进程。
Socket() 创建端口
Bind() 绑定ip和端口
Listen() 监听,等待连接
Accept() 接收请求
Connect() 请求连接建立
Write() 发送
Read() 接受
ESTABLISHED 连接已建立,正在传输数据
Chose()关闭连接
相关文章:
web基础与http
一,dns与域名 网络基于tcp/ip协议进行通信和连接的,其中主机以ip地址做固定的地址标识,用以区分用户和计算机。ip地址是由32位二进制数组成,不方便记忆。为了方便记忆,采用了域名。但是网络通信的唯一标识是ip地址&…...

寒假作业(蓝桥杯2016年省赛C++A组第6题 )
题目: 注:蓝桥杯2016年省赛CA组第6题 请填写表示方案数目的整数。 题解: 由题可知这是一道全排列问题,因此我们可以使用c的next_permutation函数对于1-13的数字进行全排列即可,并每次排列判断是否满足题意。 注意…...
NUMA架构在kubernetes中的应用
numactl使用 numactl 通过将 CPU 划分多个 node 减少 CPU 对总线资源的竞争,一般使用在高配置服务器部署多个 CPU 消耗性服务使用。 numactl使用,numa常用命令,numa命令行使用 #numactl -H available: 2 nodes (0-1) node 0 cpus: 0 2 4 6 8 10 12 14 16 18 20 22 node 0…...

Gogs Git windos服务搭建指南
Gogs Git服务器搭建指南 背景: 近期在Linux 麒麟 v10 系统上开发;为了团队协同编程;选用了Git服务器;之前在windos开始时候使用的visualSVN server; visualSVN server从4.x.x.x开始收费;限制15个开发者用户ÿ…...
leetcode 983. 最低票价
在一个火车旅行很受欢迎的国度,你提前一年计划了一些火车旅行。在接下来的一年里,你要旅行的日子将以一个名为 days 的数组给出。每一项是一个从 1 到 365 的整数。 火车票有 三种不同的销售方式 : 一张 为期一天 的通行证售价为 costs[0] …...
七种遍历Map的方法
七种遍历Map的方法 import java.util.HashMap; import java.util.Iterator; import java.util.Map;public class Wan {public static void main(String[] args) {Map<String,String> dataMap new HashMap<>();dataMap.put("A","Abb");dataMap…...

Android性能优化—内存优化
一、App内存组成以及管理 Android 给每个 App 分配一个 VM ,让App运行在 dalvik 上,这样即使 App 崩溃也不会影响到系统。系统给 VM 分配了一定的内存大小, App 可以申请使用的内存大小不能超过此硬性逻辑限制,就算物理内存富余&…...

Python自动计算Excel数据指定范围内的区间最大值
本文介绍基于Python语言,基于Excel表格文件内某一列的数据,计算这一列数据在每一个指定数量的行的范围内(例如每一个4行的范围内)的区间最大值的方法。 已知我们现有一个.csv格式的Excel表格文件,其中有一列数据&#…...

FTP文件传输协议
FTP文件传输协议 介绍 将某台计算机中的文件通过网络传送到可能相距很远的另一台计算机中,是一项基本的网络应用,即文件传送文件传输协议(File Transfer Protocol)是因特网上使用得最广泛的文件传输协议 FTP提供交互式访问,允许客户指明文件…...

运维高级--tomcat和jpress
1. 简述静态网页和动态网页的区别。 静态网页:事先创建好的网页,通常通过HTML、CSS和JavaScript等静态文件组成,不需要和服务器进行交互,加载速度快 动态网页:根据用户需求动态生成网页,动态网页通常使用…...

【LeetCode】141. 环形链表 进阶题142. 环形链表 II
141. 环形链表 这道题还是用经典的快慢指针法来做。每次让快的指针走两步,慢的走一步。如果有环,则绝对会在环内的某一节点相遇。思想跟物理知识有点关系,如果有环,则在相对运动过程中,可以相当于慢指针静止࿰…...

MySQL索引1——基本概念与索引结构(B树、R树、Hash等)
目录 索引(INDEX)基本概念 索引结构分类 BTree树索引结构 Hash索引结构 Full-Text索引 R-Tree索引 索引(INDEX)基本概念 什么是索引 索引是帮助MySQL高效获取数据的有序数据结构 为数据库表中的某些列创建索引,就是对数据库表中某些列的值通过不同的数据结…...

TikTok数据分析 | 用好超店有数,生意增长快人一步
TikTok在东南亚崛起之快令人叹服。 在东南亚第一大经济体印度尼西亚,超过200万小商家入驻了TikTok的电商平台; TikTok Shop 以6.9亿美元的收入市场份额超越Lazada成为越南第二大电商平台; 2023年泰国TikTok Shop的销售额一路猛涨ÿ…...

从零开始学Docker(三):DockerFile镜像定制
宿主机环境:RockyLinux 9 前言,定制docker镜像的方式有两种: 手动修改容器内容,然后docker commit提交容器为新的镜像通过在dockerfile中定义一系列的命令和参数构成的脚本,然后这些命令应用于基础镜像,依…...

【Linux】 UDP网络套接字编程
🍎作者:阿润菜菜 📖专栏:Linux系统网络编程 文章目录 一、网络通信的本质(port标识的进程间通信)二、传输层协议UDP/TCP认识传输层协议UDP/TCP网络字节序问题(规定大端) 三、socket编…...

《golang设计模式》第一部分·创建型模式-05-工厂方法模式(Factory Method)
文章目录 1 概述2.1 角色2.2 类图 2 代码示例2. 1 设计2.2 代码2.3 类图 3. 简单工厂3.1 角色3.2 类图3.3 代码示例3.3.1 设计3.3.2 代码3.3.3 类图 1 概述 工厂方法类定义产品对象创建接口,但由子类实现具体产品对象的创建。 2.1 角色 Product(抽象产…...

Kubernetes 概述
1、K8S 是什么? K8S 的全称为 Kubernetes (K12345678S) 作用 用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统。 可以理解成 K8S 是负责自动化运维管理多个容器化程序(比如 Docker)的集群&#…...

Electron + Vue3 + Vite + TS 构建桌面应用
之前是使用React、Electron、TS和webpack来构建桌面应用的。虽然功能齐全,但是打包等等开发的体验不太理想,总感觉太慢了。作为一个开发者,我们总是希望,执行构建命令后,可以快速打包或者启动本地应用,且通过更少的配置,来完成开发体验。 现在的vite已经得到广泛的应用…...

springboot访问请求404的原因
是记录,可能出现错误 可能出现的原因 1.你请求的URL路径不对,比如说你请求的路径是/usr/list,GET方法,但是你UserController上面的RequestMapping是这个样子:RequestMapping(“user”),有可能哈 2.前端的请求时GET方法,后端对应的处理函数的方…...

网络安全零基础该如何自学?
一、为什么选择网络安全? 这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等一系列政策/法规/标准的持续落地,网络安全行业地位、薪资随之水涨船高。 未来3-5年,是安全行业的黄金发展期,提前踏入…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖
在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会࿰…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案
引言 在分布式系统的事务处理中,如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议(2PC)通过准备阶段与提交阶段的协调机制,以同步决策模式确保事务原子性。其改进版本三阶段提交协议(3PC…...

海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》
近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...
boost::filesystem::path文件路径使用详解和示例
boost::filesystem::path 是 Boost 库中用于跨平台操作文件路径的类,封装了路径的拼接、分割、提取、判断等常用功能。下面是对它的使用详解,包括常用接口与完整示例。 1. 引入头文件与命名空间 #include <boost/filesystem.hpp> namespace fs b…...