光滑曲线弧长公式的推导

前言

本文将介绍如何用定积分计算空间中一段光滑曲线的弧长。首先我们会给出光滑曲线以及曲线弧长的定义,然后从定义出发,用求黎曼和的思想推导出弧长的计算公式。

光滑曲线的定义

设平面曲线的参数方程为
{ x = x ( t ) , y = y ( t ) , t ∈ [ T 1 , T 2 ] . \begin{cases}x=x(t), \\ y=y(t),\end{cases} t\in [T_1,T_2]. {x=x(t),y=y(t),t[T1,T2].
x ′ ( t ) x'(t) x(t) y ′ ( t ) y'(t) y(t) [ T 1 , T 2 ] [T_1, T_2] [T1,T2]上连续,且 [ x ′ ( t ) ] 2 + [ y ′ ( t ) ] 2 ≠ 0 [x'(t)]^2+[y'(t)]^2 \neq 0 [x(t)]2+[y(t)]2=0,则该曲线被称为光滑曲线

从光滑曲线的定义能看出,其切线向量在任意方向都是连续变动的,且在任意一点的切线向量都不是零向量,即有特定的方向。

弧长的定义

对曲线参数方程的参数区间 [ T 1 , T 2 ] [T_1,T_2] [T1,T2]做如下划分:
T 1 = t 0 < t 1 < . . . < t n = T 2 T_1=t_0<t_1<...<t_n=T_2 T1=t0<t1<...<tn=T2 这些划分在曲线上形成了 n + 1 n+1 n+1个点 P 0 , P 1 , . . . , P n P_0, P_1, ..., P_n P0,P1,...,Pn,如下图所示
在这里插入图片描述
定义连接两个相邻点之间的线段长度为 P i − 1 P i ‾ \overline{P_{i-1}P_{i}} Pi1Pi。若当 λ = m a x 1 ≤ i ≤ n ( Δ t i ) → 0 \lambda=\mathop{max}\limits_{1\leq i \leq n}(\Delta t_i)\rightarrow 0 λ=1inmax(Δti)0时,极限 lim ⁡ λ → 0 ∑ i = 1 n P i − 1 P i ‾ \displaystyle \lim_{\lambda \rightarrow 0}\sum_{i=1}^n \overline{P_{i-1}P_{i}} λ0limi=1nPi1Pi存在,且极限值与区间 [ T 1 , T 2 ] [T_1,T_2] [T1,T2]的划分无关,则称这条曲线是可求长的,并将极限值
l = lim ⁡ λ → 0 ∑ i = 1 n P i − 1 P i ‾ l=\displaystyle \lim_{\lambda \rightarrow 0}\sum_{i=1}^n \overline{P_{i-1}P_{i}} l=λ0limi=1nPi1Pi
定义为曲线的弧长

从曲线弧长的定义来看,它和Riemann和的定义非常相似,如果我们能将 l = lim ⁡ λ → 0 ∑ i = 1 n P i − 1 P i ‾ l=\displaystyle \lim_{\lambda \rightarrow 0}\sum_{i=1}^n \overline{P_{i-1}P_{i}} l=λ0limi=1nPi1Pi写成Riemann和" lim ⁡ λ → 0 ∑ i − 1 n f ( ξ i ) Δ t i \displaystyle \lim_{\lambda \rightarrow 0}\sum_{i-1}^n f(\xi_i)\Delta t_{i} λ0limi1nf(ξi)Δti"的形式,那我们就可以通过定积分来求解弧长公式了。下面我们将推导出弧长公式。

光滑曲线弧长公式的推导

首先将线段长度写成坐标形式:

P i − 1 P i ‾ = [ x ( t i ) − x ( t i − 1 ) ] 2 + [ y ( t i ) − y ( t i − 1 ) ] 2 \begin{equation} \overline{P_{i-1}P_{i}}=\sqrt{[x(t_i)-x(t_{i-1})]^2+[y(t_i)-y(t_{i-1})]^2} \end{equation} Pi1Pi=[x(ti)x(ti1)]2+[y(ti)y(ti1)]2

由于曲线光滑,因此根据Lagrange中值定理,在 ( t i − 1 , t i ) (t_{i-1}, t_i) (ti1,ti)上存在 η i , μ i \eta_i , \mu_i ηi,μi,使得

x ( t i ) − x ( t i − 1 ) = x ′ ( η i ) Δ t i , y ( t i ) − y ( t i − 1 ) = y ′ ( μ i ) Δ t i , \begin{equation} x(t_i)-x(t_{i-1})=x'(\eta_i) \Delta t_i, y(t_i)-y(t_{i-1})=y'(\mu_i) \Delta t_i, \end{equation} x(ti)x(ti1)=x(ηi)Δti,y(ti)y(ti1)=y(μi)Δti,

( 1 ) (1) (1)式可以写成

P i − 1 P i ‾ = [ x ′ ( η i ) ] 2 + [ y ′ ( μ i ) ] 2 ⋅ Δ t i \begin{equation} \overline{P_{i-1}P_{i}}= \sqrt{[x'(\eta_i)]^2+[y'(\mu_i)]^2} \cdot \Delta t_i \end{equation} Pi1Pi=[x(ηi)]2+[y(μi)]2 Δti

因此有

∑ i = 1 n P i − 1 P i ‾ = ∑ i = 1 n [ x ′ ( η i ) ] 2 + [ y ′ ( μ i ) ] 2 ⋅ Δ t i \begin{equation} \sum_{i=1}^n \overline{P_{i-1}P_{i}}=\displaystyle\sum_{i=1}^n \sqrt{[x'(\eta_i)]^2+[y'(\mu_i)]^2} \cdot \Delta t_i \end{equation} i=1nPi1Pi=i=1n[x(ηi)]2+[y(μi)]2 Δti

由于 η i , μ i \eta_i , \mu_i ηi,μi并不一定相同,因此此时 ( 4 ) (4) (4)式并不是一个Riemann和的形式:

∑ i = 1 n [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ⋅ Δ t i \begin{equation} \sum_{i=1}^n \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2} \cdot \Delta t_i \end{equation} i=1n[x(ξi)]2+[y(ξi)]2 Δti

接下来我们证明 ( 4 ) (4) (4)式和 ( 5 ) (5) (5)式在 λ → 0 \lambda \rightarrow 0 λ0时是相等的。将 ( 4 ) (4) (4)式减去 ( 5 ) (5) (5)式,取绝对值,有

∣ ∑ i = 1 n P i − 1 P i ‾ − ∑ i = 1 n [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ⋅ Δ t i ∣ = ∣ ∑ i = 1 n [ x ′ ( η i ) ] 2 + [ y ′ ( μ i ) ] 2 ⋅ Δ t i − ∑ i = 1 n [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ⋅ Δ t i ∣ = ∣ ∑ i = 1 n ( [ x ′ ( η i ) ] 2 + [ y ′ ( μ i ) ] 2 − [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ) Δ t i ∣ ≤ ∑ i = 1 n ∣ ( [ x ′ ( η i ) ] 2 + [ y ′ ( μ i ) ] 2 − [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ) ∣ Δ t i \begin{equation} \begin{align} &\quad \left| \sum_{i=1}^n \overline{P_{i-1}P_{i}}-\sum_{i=1}^n \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2} \cdot \Delta t_i \right| \nonumber \\ &=\left|\sum_{i=1}^n \sqrt{[x'(\eta_i)]^2+[y'(\mu_i)]^2} \cdot \Delta t_i- \sum_{i=1}^n \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2} \cdot \Delta t_i \right| \nonumber \\ &=\left|\sum_{i=1}^n \left( \sqrt{[x'(\eta_i)]^2+[y'(\mu_i)]^2} - \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2}\right) \Delta t_i\right| \nonumber \\ & \leq \sum_{i=1}^n \left|\left( \sqrt{[x'(\eta_i)]^2+[y'(\mu_i)]^2} - \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2}\right) \right| \Delta t_i \nonumber \\ \end{align} \end{equation} i=1nPi1Pii=1n[x(ξi)]2+[y(ξi)]2 Δti = i=1n[x(ηi)]2+[y(μi)]2 Δtii=1n[x(ξi)]2+[y(ξi)]2 Δti = i=1n([x(ηi)]2+[y(μi)]2 [x(ξi)]2+[y(ξi)]2 )Δti i=1n ([x(ηi)]2+[y(μi)]2 [x(ξi)]2+[y(ξi)]2 ) Δti

根据向量形式三角不等式

∣ x 1 2 + x 2 2 − y 1 2 + y 2 2 ∣ ≤ ( x 1 − y 1 ) 2 + ( x 2 − y 2 ) 2 ≤ ∣ x 1 − y 1 ∣ + ∣ x 2 − y 2 ∣ \begin{equation} \left| \sqrt{x_1^2+x_2^2} - \sqrt{y_1^2+y_2^2}\right | \leq \sqrt{(x_1 - y_1)^2 +(x_2 - y_2)^2} \leq |x_1-y_1|+|x_2-y_2| \end{equation} x12+x22 y12+y22 (x1y1)2+(x2y2)2 x1y1+x2y2

(这里简单说明一下 ( 7 ) (7) (7)式的证明方法:在 O x y Oxy Oxy坐标平面上取三个点: A ( x 1 , x 2 ) , B ( y 1 , y 2 ) , C ( y 1 , x 2 ) A(x_1, x_2), B(y_1, y_2), C(y_1, x_2) A(x1,x2),B(y1,y2),C(y1,x2)。在 O A B OAB OAB A B C ABC ABC这两个三角形中利用三角形不等式有: ∣ A B ∣ ≥ ∣ O A ∣ − ∣ O B ∣ , ∣ A B ∣ ≤ ∣ A C ∣ + ∣ A B ∣ |AB|\geq |OA|-|OB|, |AB|\leq |AC|+|AB| ABOAOB,ABAC+AB

利用 ( 7 ) (7) (7)式结论, ( 6 ) (6) (6)式可以写为

∣ ∑ i = 1 n P i − 1 P i ‾ − ∑ i = 1 n [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ⋅ Δ t i ∣ ≤ ∑ i = 1 n ∣ ( [ x ′ ( η i ) ] 2 + [ y ′ ( μ i ) ] 2 − [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ) ∣ Δ t i ≤ ∑ i = 1 n ∣ x ′ ( η i ) − x ′ ( ξ i ) ∣ Δ t i + ∑ i = 1 n ∣ y ′ ( μ i ) − y ′ ( ξ i ) ∣ Δ t i ≤ ∑ i = 1 n ω ‾ i Δ t i + ∑ i = 1 n ω ~ i Δ t i \begin{equation} \begin{align} &\quad \left| \sum_{i=1}^n \overline{P_{i-1}P_{i}}-\sum_{i=1}^n \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2} \cdot \Delta t_i \right| \nonumber \\ & \leq \sum_{i=1}^n \left|\left( \sqrt{[x'(\eta_i)]^2+[y'(\mu_i)]^2} - \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2}\right) \right| \Delta t_i \nonumber \\ &\leq \sum_{i=1}^n \left| x'(\eta_i) - x'(\xi_i)\right| \Delta t_i + \sum_{i=1}^n \left| y'(\mu_i) - y'(\xi_i)\right| \Delta t_i \nonumber \\ &\leq \sum_{i=1}^n \overline{\omega}_i \Delta t_i + \sum_{i=1}^n \widetilde{\omega}_i \Delta t_i \nonumber \\ \end{align} \end{equation} i=1nPi1Pii=1n[x(ξi)]2+[y(ξi)]2 Δti i=1n ([x(ηi)]2+[y(μi)]2 [x(ξi)]2+[y(ξi)]2 ) Δtii=1nx(ηi)x(ξi)Δti+i=1ny(μi)y(ξi)Δtii=1nωiΔti+i=1nω iΔti

其中 ω ‾ i , ω ~ i \overline{\omega}_i, \widetilde{\omega}_i ωi,ω i分别是 x ′ ( t ) , y ′ ( t ) x'(t), y'(t) x(t),y(t) [ t i − 1 , t i ] [t_{i-1}, t_i] [ti1,ti]上的振幅。由于曲线光滑,因此 x ′ ( t ) , y ′ ( t ) x'(t), y'(t) x(t),y(t) [ t i − 1 , t i ] [t_{i-1}, t_i] [ti1,ti]上可积,根据黎曼可积的充要条件,当 λ = m a x 1 ≤ i ≤ n ( Δ t i ) → 0 \lambda=\mathop{max}\limits_{1\leq i \leq n}(\Delta t_i)\rightarrow 0 λ=1inmax(Δti)0时,振幅满足: ∑ i = 1 n ω ‾ i Δ t i → 0 \displaystyle \sum_{i=1}^n \overline{\omega}_i \Delta t_i \rightarrow 0 i=1nωiΔti0, ∑ i = 1 n ω ~ i Δ t i → 0 \displaystyle \sum_{i=1}^n \widetilde{\omega}_i \Delta t_i \rightarrow 0 i=1nω iΔti0。因此有:

l = lim ⁡ λ → 0 ∑ i = 1 n P i − 1 P i ‾ = lim ⁡ λ → 0 ∑ i = 1 n [ x ′ ( ξ i ) ] 2 + [ y ′ ( ξ i ) ] 2 ⋅ Δ t i = ∫ T 1 T 2 [ x ′ ( t ) ] 2 + [ y ′ ( t ) ] 2 d t \begin{equation} l=\displaystyle \lim_{\lambda \rightarrow 0}\sum_{i=1}^n \overline{P_{i-1}P_{i}}=\lim_{\lambda \rightarrow 0}\sum_{i=1}^n \sqrt{[x'(\xi_i)]^2+[y'(\xi_i)]^2} \cdot \Delta t_i =\int_{T_1}^{T_2}\sqrt{[x'(t)]^2+[y'(t)]^2} \mathrm{d}t \end{equation} l=λ0limi=1nPi1Pi=λ0limi=1n[x(ξi)]2+[y(ξi)]2 Δti=T1T2[x(t)]2+[y(t)]2 dt

上式即为弧长的计算公式。对上式求微分即得到弧长的微分:

d l = [ x ′ ( t ) ] 2 + [ y ′ ( t ) ] 2 d t \begin{equation} \mathrm{d}l=\sqrt{[x'(t)]^2+[y'(t)]^2} \mathrm{d}t \end{equation} dl=[x(t)]2+[y(t)]2 dt

若曲线采用显式方程 y = f ( x ) , x ∈ [ a , b ] y=f(x), x\in[a,b] y=f(x),x[a,b]来表示时,我们利用 f ′ ( x ) = y ′ ( t ) x ′ ( t ) f'(x)=\dfrac{y'(t)}{x'(t)} f(x)=x(t)y(t)进行换元,即可得到显式方程下的弧长公式:

l = ∫ a b 1 + [ f ′ ( x ) ] 2 d x \begin{equation} l=\int_{a}^{b}\sqrt{1+[f'(x)]^2}\mathrm{d}x \end{equation} l=ab1+[f(x)]2 dx

当曲线采用极坐标方程 r = r ( θ ) , θ ∈ [ α , β ] r=r(\theta),\theta\in[\alpha, \beta] r=r(θ),θ[α,β]来表示时,由于 x = r ( θ ) cos ⁡ θ , y = r ( θ ) sin ⁡ θ x=r(\theta)\cos \theta, y=r(\theta)\sin \theta x=r(θ)cosθ,y=r(θ)sinθ,对 θ \theta θ求导后有

x ′ ( θ ) = r ′ ( θ ) cos ⁡ θ − r ( θ ) sin ⁡ θ , y ′ ( θ ) = r ′ ( θ ) sin ⁡ θ + r ( θ ) cos ⁡ θ \begin{equation} x'(\theta)=r'(\theta)\cos \theta-r(\theta)\sin \theta, y'(\theta)=r'(\theta)\sin \theta+r(\theta)\cos \theta \end{equation} x(θ)=r(θ)cosθr(θ)sinθ,y(θ)=r(θ)sinθ+r(θ)cosθ

将其代入 ( 9 ) (9) (9)式进行换元后得到极坐标下的弧长公式:

l = ∫ α β [ r ( θ ) ] 2 + [ r ′ ( θ ) ] 2 d θ \begin{equation} l=\int_{\alpha}^{\beta}\sqrt{[r(\theta)]^2+[r'(\theta)]^2}\mathrm{d}\theta \end{equation} l=αβ[r(θ)]2+[r(θ)]2 dθ

采用本文同样的方法,可以证明在三维欧式空间中由参数方程

{ x = x ( t ) , y = y ( t ) , z = z ( t ) , t ∈ [ T 1 , T 2 ] . \begin{cases}x=x(t), \\ y=y(t),\\ z=z(t),\end{cases} t\in [T_1,T_2]. x=x(t),y=y(t),z=z(t)t[T1,T2].

确定的光滑曲线的弧长为

l = ∫ T 1 T 2 [ x ′ ( t ) ] 2 + [ y ′ ( t ) ] 2 + [ z ′ ( t ) ] 2 d t \begin{equation} l=\int_{T_1}^{T_2}\sqrt{[x'(t)]^2+[y'(t)]^2+[z'(t)]^2} \mathrm{d}t \end{equation} l=T1T2[x(t)]2+[y(t)]2+[z(t)]2 dt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/65387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计一个基于Spring Boot开发的电商网站,部署在阿里云上

系统架构设计&#xff0c;包含网络、部署架构等关键信息&#xff0c;要保证系统的高可用。设计中请明确指出使用的产品名称。 为了设计一个基于Spring Boot开发的电商网站系统架构&#xff0c;并确保其高可用性&#xff0c;以下是一个详细的系统架构设计方案&#xff0c;包含网…

C语言技巧之有条件的累加

什么叫有条件的累加&#xff1f; 主要是依靠循环&#xff0c;一般形式是一个在循环里面遍历&#xff0c;另一个只有达到一定的条件才会累加&#xff08;移动到下一个变量&#xff09;&#xff0c;从言语也能看出来&#xff0c;主要是用在字符串和数组里面的&#xff0c;毕竟链表…

Python基于Django的web漏洞挖掘扫描技术的实现与研究(附源码,文档说明)

博主介绍&#xff1a;✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&#x1f3…

数据结构-c++

数据结构 链表设计链表1.进制转换2.顺序表逆置3.链表转置 栈栈的实现 队列队列实现1.逆置队列 二叉树遍历顺序1.树的深度2.左右子树交换3.输出并求出非叶子节点个数 图1.邻接矩阵转换成临界表2.深度优先搜索 查找折半查找算法 排序快速排序 链表 设计链表 #include <iostr…

简单发布一个npm包

将自己封装的组件上传到 npm&#xff0c;并在其他项目中下载并使用&#xff0c;是一个非常有用的技能。看完下面这些你就可以自己完成从封装组件到上传 npm 并使用的全过程。 1: 封装组件 首先&#xff0c;你需要创建一个符合标准的 npm 包。假设你已经写好了组件代码&#xf…

24.try块怎么用 C#例子

这是一个用英语写的try-catch例子 简单来说就是一个try&#xff0c;try里面的代码可能会出错&#xff0c;然后有两个catch&#xff0c;规定了具体的错误是什么 如果发生相应的错误&#xff0c;就会把错误信息存到err里&#xff0c;err.Message是一个字符串格式的提示信息&…

记录命令行操作树莓派Wifi的方式

打开WiFi rfkill unblock wlan 关闭WiFi rfkill block wlan 设置可连接的WiFi 方法一&#xff08;bullseye及以前版本才可用&#xff0c;bookworm版本&#xff09; sudo nano /etc/wpa_supplicant/wpa_supplicant.conf network{ssid"wifi_name"psk"wifi_pas…

【Axure高保真原型】计时秒表

今天和大家分享计时原型模板&#xff0c;效果包括&#xff1a; 点击计时按钮&#xff0c;可以开始或者停止计时&#xff1b; 秒针会自动运转&#xff0c;时长会自动记录&#xff1b; 右侧表格会记录每一次开始和结束时间&#xff0c;并计算该段时长&#xff1b; 点击重置按钮…

随机变量是一个函数-如何理解

文章目录 一. 随机变量二. 随机变量是一个函数-栗子(一对一)1. 掷骰子的随机变量2. 掷骰子的随机变量&#xff08;求点数平方&#xff09;3. 抛硬币的随机变量4. 学生考试得分的随机变量 三. 随机变量是一个函数-理解(多对一) 一. 随机变量 随机变量就是定义在样本空间上的函数…

FOC软件 STM32CubeMX 使用

1、安装-及相关软件版本 展示版本注意事项&#xff1a;keil MDK和STM32CubeMX版本至少要大于等于图中版本。 2、 Motor Profiler 5.2.0使用方法 主要测试&#xff0c;电感、电流、最大速度等。 获得参数以后再使用控制台准确的控制。 3、MotorControl Workbench 5.2.0使用方法…

科技创新 数智未来|清科·沙丘投研院走进竹云

12月20日&#xff0c;清科沙丘投研院带领企投家团队走进竹云交流分享&#xff0c;聚焦技术创新、企业数字化管理、行业前沿应用案例等热点议题&#xff0c;深入探讨数字技术如何点燃企业高质量发展的澎湃动力&#xff0c;共话企业数字化、智能化发展之道。 达晨财智股权管理部…

Python机器学习笔记(十四、凝聚聚类和DBSCAN)

凝聚聚类 凝聚聚类&#xff08;agglomerative clustering&#xff09;指的是许多基于相同原则构建的聚类算法&#xff0c;这一原则是&#xff1a;算法首先声明每个点是自己的簇&#xff0c;然后合并两个最相似的簇&#xff0c;直到满足某种停止准则为止。 scikit-learn中实现…

题解:CF373B Making Sequences is Fun

思路 我们拿到这一题可以发现&#xff0c;可以使用二分查找。 bool check(ll x) {ll sum0;for(int im;i<mx;i){sumsumk*h(i);if(sum>n){return 0;}}return 1; }如果 check 函数这样写&#xff0c;那代码就算用了二分优化也一定会超时。那我们可以考虑如何优化 check 函…

v语言介绍

V 语言是一种多用途的编程语言&#xff0c;可以用于前端开发、后端开发、系统编程、游戏开发等多个领域。它的设计哲学是提供接近 C 语言的性能&#xff0c;同时简化开发过程并提高代码的安全性和可读性。接下来我会详细介绍 V 在前后端开发中的应用&#xff0c;并给出一个具体…

关于 K8s 的一些基础概念整理-补充【k8s系列之二】

〇、前言 本文继续整理下 K8s 的一些基础概念&#xff0c;作为前一篇概念汇总的补充。 前一篇博文链接&#xff1a;关于 K8s 的一些基础概念整理【k8s系列之一】_集群 master节点 控制节点 宿主机-CSDN博客 一、详情 1.1 Label Label 在 k8s 中是一个非常核心的概念&#xf…

php的zip扩展 先装libzip

【宝塔面板】php7.4 安装 zip 扩展 - PHP笔记网 在CentOS 7系统中&#xff0c;通过【宝塔Linux】安装了PHP7.4&#xff0c;运行业务系统时&#xff0c;报错&#xff1a; 1 it is missing from your system. Install or enable PHPs zip extension. 提示需要php的zip扩展&…

云效流水线自动化部署web静态网站

云效流水线部署静态网站 背景新建流水线配置流水线运行流水线总结 背景 配置流水线以前&#xff0c;每次更新导航网站都要登进去宝塔后台&#xff0c;删掉旧的目录和文件&#xff0c;再上传最新的文件&#xff0c;太麻烦啦 网上的博客基本都是分享vue项目&#xff0c;这一篇是…

Android MQTT关于断开连接disconnect报错原因

最近项目遇到一个需求&#xff0c;就是在登录状态的时候。才能接收到消息。所有我在上线&#xff0c;下线状态的时候。做了MQTT断开和连接的动作。然后就是发生了。我们标题的这关键点了。直接报错了。报错的内容如下&#xff1a; MqttAndroidClient unregisterRecevicer afte…

gitlab克隆仓库报错fatal: unable to access ‘仓库地址xxxxxxxx‘

首次克隆仓库&#xff0c;失效了&#xff0c;上网查方法&#xff0c;都说是网络代理的问题&#xff0c;各种清理网络代理后都无效&#xff0c;去问同事&#xff1a; 先前都是直接复制的网页url当做远端url&#xff0c;或者点击按钮‘使用http克隆’ 这次对于我来说有效的远端u…

我的秋招总结

我的秋招总结 个人背景 双非本&#xff0c;985硕&#xff0c;科班 准备情况 以求职为目的学习Java的时间大概一年。 八股&#xff0c;一开始主要是看B站黑马的八股文课程&#xff0c;背JavaGuide和小林coding还有面试鸭。 算法&#xff0c;250&#xff0c;刷了3遍左右 项目&…