当前位置: 首页 > news >正文

Linux WEB服务器的部署及优化

1.用户常用关于web的信息

1.1.什么是www

  • www是world wide web的缩写,及万维网,也就是全球信息广播的意思。

  • 通常说的上网就是使用www来查询用户所需要的信息。

  • www可以结合文字、图形、影像以及声音等多媒体,超链接的方式将信息以Internet传递到世界各 处去。

  • 当你连接www网站,该网站会提供一些数据,客户端要使用可以解析这些数据的软件来处理,那就是浏览器。

1.2.网址

URI:Uniform Resource Identifier统一资源标识,分为URL和URN。

URN:Uniform Resource Naming,统一资源命名,P2P下载使用的磁力链接是URN的一种实现。

URL:Uniform Resorce Locator,统一资源定位符用于描述某服务器某特定资源位置

两者区别:URL提供查找该事物的方法;URN仅用于命名,而不指定地址。

1.3.URL组成

URL组成机

<scheme>://<user>:<password>@<host>:<port>/<path>:<params>?<query>#<frag>

2.HTTP简介

2.1.什么是http HTTP协议:

全称为Hyper Text Transfer Protocol(超文本传输协议) 简单来说http就是从服务器传输超文本(html)到本地浏览器的传输协议 HTTP协议工作于B/S架构上,浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务端发送请 求(Request)Web服务端根据接收到的请求数据后,向客户端发送响应信息(Response)。

https://developer.mozilla.org/zh-CN/docsWeb/

2.2.http工作机制

2.2.1.web中常用的语言介绍

html语言 超文本标记语言

<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<title>HTML语言</title>
</head>
<body>
<h1 style="color:red">欢迎</h1>
<p><a href=http://www.baidu.com>百度</a>你好</p>
</body>
</html>

 

css 层叠样式表 表述网站的风格

<html>
<head>
<meta http-equiv=Content-Type content="text/htm1;charset=utf-8">
<link rel="stylesheet" type="text/css" href="mystyle.css" />
</head>
<body>
<h1>这是标题</h1>
<p>红色代表喜庆,该段为红色</p>
<p class="ex">蓝色,宁静而深邃的色彩,承载着丰富的寓意和象征意义。该段落中的文本是蓝色的。</p>
</body>
</html>
css文件
--body {color: #e76666}h1 {color: #65c2b1}p.ex {color: #6e6ea2}

js实现html和css实现不了的功能,比如动画效果

<!DOCTYPE html>
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
</head>
<body>
<h2>我的第一个JavaScript</h2>
<button type="button"
onclick="document.getElementById('demo').innerHTML = Date()">
点击这里来显示日期和时间
</button>
<p id="demo"></p>
</body>
</html>

 

2.2.2.mine(Multipurpose Internet Mail Extensions)多用途因特网邮件扩展
  • 它设计的最初目的是为了在发送电子邮件时附加多媒体数据,让邮件客户程序能根据其类型进行处 理

  • 为了支持多媒体数据类型,HTTP协议中就使用了附加在文档之前的MIME数据类型信息来标识数据 类型。

  • 其主要功能是让服务器将它们发送的多媒体数据的类型告诉浏览器

  • 服务器将MIME标志符放入传送的数据中来告诉浏览器使用哪种插件读取相关文件

  • MIME类型存在于HTTP响应报文的响应头部信息里,它是一种文本标记

  • MIME格式: type/subtype 文件类型后缀(html txt jpg png... ...)

2.3.http访问请求完整过程

1.建立连接:

TCP的3次握手建立链接,向服务器发送http请求,服务器拒绝或允许

2.接受请求

接受客户端请求报文对某个资源的一次请求过程web响应访问模型

a.单进程I/O模型:启动一个进程处理用户请求,而且一次只处理一个,多个请求被串行响应

b.多进程I/O模型:并行启动多个进程,每个进程响应一个连接请求

c.复用I/O结构:启动一个进程,同时响应N个连接请求

d.复用的多进程I/O模型:启动M个进程,每个进程响应N个连接请求,同时接收M*N个请求

3.处理请求:

服务器对请求报文进行解析,并获取请求的资源及请求方法等相关信息,根据方法,资源,首部和可选 的主体部分对请求进行处理常用请求Method: GET、POST、HEAD、PUT、DELETE、TRACE、OPTIONS

4.访问资源:

服务器获取请求报文中请求的资源web服务器,即存放了web资源的服务器,负责向请求者提供对方请求 的静态资源,或动态运行后生成的资源

5.构建响应报文:

一旦Web服务器识别除了资源,就执行请求方法中描述的动作,并返回响应报文。响应报文中包含有响 应状态码、响应首部,如果生成了响应主体的话,还包括响应主体 响应实体:如果事务处理产生了响应主体,就将内容放在响应报文中回送过去。

响应报文中通常包括:

描述了响应主体MIME类型的Content-Type首部

描述了响应主体长度的Content-Length

实际报文的主体内容:

2)URL重定向:web服务构建的响应并非客户端请求的资源,而是资源另外一个访问路径

3)MIME类型:Web服务器要负责确定响应主体的MIME类型。多种配置服务器的方法可将MIME类型 与资源管理起来

6.发送响应报文:

Web服务器通过连接发送数据时也会面临与接收数据一样的问题。服务器可能有很多条到各个客户端的 连接,有些是空闲的,有些在向服务器发送数据,还有一些在向客户端回送响应数据。服务器要记录连 接的状态,还要特别注意对持久连接的处理。对非持久连接而言,服务器应该在发送了整条报文之后, 关闭自己这一端的连接。对持久连接来说,连接可能仍保持打开状态,在这种情况下,服务器要正确地 计算Content-Length首部,不然客户端就无法知道响应什么时候结束

2.4.http协议报文头部结构

2.4.1.请求报文

请求报文由三部分组成:开始行、首部行、实体主体

开始行:请求方法 url 版本 CRLF

首部行通常用键值表示 空格 实体主题数据,一般在post动作中可以提看到

开始行中的请求方法:

 

2.4.2.响应报文

响应报文由三部分组成即:开始行、首部行、实体主体

开始行:http版本 状态码 短语 CRLF

首部行通常用键值表示 空格 实体主题数据,即获取内容

2.5.状态代码

状态码由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值

常见状态代码、状态描述的说明如下:

3.web服务的配置详解

3.1.web服务的常用种类

Apache  Nginx  openresty  大厂自研

curl -I 163.com
curl -I baidu.com

3.2.Nginx的安装

开源版本的Nginx官网:nginx

[root@localhost 桌面]# dnf install nginx -y
[root@localhost ~]# systemctl enable --now nginx //开启服务
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.

查看端口

[root@localhost 桌面]# netstat -antlupe | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      0          37696      3402/nginx: master  
tcp6       0      0 :::80                   :::*                    LISTEN      0          37697      3402/nginx: master  

默认配置文件

[root@localhost 桌面]# cd /etc/nginx

默认发布目录

[root@localhost nginx]# cd /usr/share/nginx/html/

修改默认发布目录

[root@localhost nginx]# mkdir /nginx/virtual/aaa.org/{news,bbs}/html -p
[root@localhost nginx]#  echo bbs.aaa.org > /nginx/virtual/aaa.org/bbs/html/index.html
[root@localhost nginx]#  echo news.aaa.org >/nginx/virtual/aaa.org/news/html/index.html
[root@localhost nginx]# vim nginx.conf
root /nginx/html;
index aaa.html; //默认发布文件

3.4nginx配置文件内容详解

nginx全局配置

user nginx; #nginx程序运行用户
worker_processes auto; #开启work进程数量
error_log /var/log/nginx/error.log notice; #错误日志
pid       /var/run/nginx.pid; #pid文件
events {worker_connections 1024; #可接受最大连接数
}

http模块配置

http {include       /etc/nginx/mime.types; #可解析的静态资源类型default_type application/octet-stream; #用来配置Nginx响应前端请求默认的MIME类
型log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log /var/log/nginx/access.log main; #访问日志sendfile       on; # Nginx服务器是否使用sendfile()传输文件#tcp_nopush     on; # 当包累计到一定大小后就发送,默认0.2s一次keepalive_timeout 65; # 长连接超时时间子配置文件#gzip on; #可以使网站的css、js 、xml、html 等静态资源在传输时
进行压缩include /etc/nginx/conf.d/*.conf; #指定子配置文件
}

子配置文件

/etc/nginx/conf.d/default.conf
server {listen       80; #监听端口server_name localhost; #服务器的名字location / {root   /usr/share/nginx/html; #默认发布目录index index.html index.htm; #默认发布文件}#error_page 404             /404.html;# redirect server error pages to the static page /50x.html#error_page   500 502 503 504 /50x.html; #访问出错呈现错误页面location = /50x.html {root   /usr/share/nginx/html;
}
}

3.5.Nginx配置

3.5.1基于IP的虚拟主机

[root@localhost 桌面]# mkdir /nginx/virtual/aaa.org/{news,bbs}/html -p
[root@localhost 桌面]# ls -ld /nginx/virtual/aaa.org/{news,bbs}/html 
drwxr-xr-x 2 root root 6 12月 10 16:13 /nginx/virtual/aaa.org/bbs/html
drwxr-xr-x 2 root root 6 12月 10 16:13 /nginx/virtual/aaa.org/news/html
[root@localhost 桌面]# echo bbs.aaa.org > /nginx/virtual/aaa.org/bbs/html/index.html
[root@localhost 桌面]# echo news.aaa.org > /nginx/virtual/aaa.org/news/html/index.html[root@localhost 桌面]# ip a a 172.25.254.101/24 dev ens160
[root@localhost 桌面]# ip a a 172.25.254.102/24 dev ens160[root@localhost conf.d]# vim vhosts.conf
[root@localhost conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@localhost conf.d]# nginx -s reload
[root@localhost conf.d]# cat vhosts.conf
server{listen 172.25.254.101:80;root /nginx/virtual/aaa.org/bbs/html;index index.html;
}
server {listen 172.25.254.102:80;root /nginx/virtual/aaa.org/news/html;index index.html;
}

 

[root@localhost conf.d]# curl news.aaa.org
news.aaa.org
[root@localhost conf.d]# curl bbs.aaa.org
news.aaa.org

3.5.2基于域名的虚拟主机

[root@localhost conf.d]# vim vhosts.conf
[root@localhost conf.d]# cat vhosts.conf
server{listen 80;server_name bbs.aaa.org;root /nginx/virtual/aaa.org/bbs/html;index index.html;
}
server {listen 80;server_name news.aaa.org;root /nginx/virtual/aaa.org/news/html;index index.html;
}
[root@localhost conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@localhost conf.d]# nginx -s reload

Linux中做域名解析

[root@localhost conf.d]# vim /etc/hosts
[root@localhost conf.d]# curl www.aaa.org
aaa
[root@localhost conf.d]# curl www.bbs.org
^[[A^C
[root@localhost conf.d]# curl bbs.aaa.org
bbs.aaa.org
[root@localhost conf.d]# curl news.aaa.org
news.aaa.org

3.5.3基于认证的访问控制 

基于ip的访问控制

root@localhost html]# mkdir admin
[root@localhost html]# echo admin > admin/index.html
[root@localhost html]# curl 172.25.254.100/admin/
admin[root@localhost html]# vim /etc/nginx/nginx.conf
[root@localhost html]# nginx -s reload
[root@localhost html]# curl 172.25.254.100/admin/
admin

 

基于IP的访问控制

[root@localhost html]# dnf install httpd-tools -y
[root@localhost html]# htpasswd -cm /etc/nginx/.htpasswd admin
New password: 
Re-type new password: 
Adding password for user admin
[root@localhost html]# cat /etc/nginx/.htpasswd
admin:$apr1$wq41crUZ$hLYd97P6s4ceABx4XWZpD.[root@localhost html]# vim /etc/nginx/nginx.conf
[root@localhost html]# nginx -s reload
[root@localhost html]# curl 172.25.254.100/admin/ -uadmin:aaa
aaa

 

3.6.web服务器的数据加密(https)

3 3.6.1.https简介 

  • HTTP协议以明文方式发送内容,不提供任何方式的数据加密,
  • HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等
  • 为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。
  • HTTPS全称:Hyper Text Transfer Protocol over Secure Socket Layer ),是以安全为目标的HTTP通道
  • HTTPS并不是一个新协议,而是HTTP+SSL(TLS)
  • 原本HTTP先和TCP直接通信,而加了SSL后,就变成HTTP先和SSL通信,再由SSL和TCP通信,相当于SSL被嵌在了HTTP和TCP之间。

3.6.2.https握手流程

3.6.3.部署https

1.生成密钥

[root@localhost html]# openssl req -newkey rsa:2048 -nodes -sha256 -keyout /etc/nginx/certs/aaa.org.key -x509 -days 365 -out /etc/nginx/certs/aaa.org.crt
[root@localhost 桌面]# mkdir /nginx/virtual/aaa.org/login/html -p
[root@localhost 桌面]# echo login.aaa.org > /nginx/virtual/aaa.org/login/html/index.html[root@localhost html]# cd /etc/nginx/certs/
[root@localhost certs]# ls
aaa.org.crt  aaa.org.key
[root@localhost certs]# openssl x509 -in aaa.org.crt -text -noout
[root@localhost certs]# cd /etc/nginx/conf.d/
[root@localhost conf.d]# vim https.confserver {listen 443;server_name login.aaa.org;root /nginx/virtual/aaa.org/login/html/;index index.htmlssl_certificate "/etc/nginx/certs/aaa.org.crt";ssl_certificate_key "/etc/nginx/certs/aaa.org.key";ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers          HIGH:!aNULL:!MD5;
}
~

3.7搭建动态网站

  • 动态网站指网站内容可根据不同情况动态变更的网站,一般情况下动态网站通过数据库进行架构。

  • 动态网站除了要设计网页外,还要通过数据库和编程序来使网站具有更多自动的和高级的功能。

  • 动态网页:使用网页脚本语言,比如php、JSP等,通过脚本将网站内容动态存储到数据库,用户访 问网站是通过读取数据库来动态生成网页的方法

配置web服务器对php站点的支持

[root@localhost ~]# mkdir -p /nginx/html/index.php
[root@localhost html]# cat index.php 
<?phpphpinfo();
?>

2.配置web服务器对php页面的发布

        location ~ \.php$ {fastcgi_pass php-fpm;  # 对应前面在 php-fpm.conf 中定义的 upstream 名称fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /nginx/html/$fastcgi_script_name;include fastcgi_params;}

相关文章:

Linux WEB服务器的部署及优化

1.用户常用关于web的信息 1.1.什么是www www是world wide web的缩写&#xff0c;及万维网&#xff0c;也就是全球信息广播的意思。 通常说的上网就是使用www来查询用户所需要的信息。 www可以结合文字、图形、影像以及声音等多媒体&#xff0c;超链接的方式将信息以Internet…...

人工智能大模型LLM开源资源汇总(持续更新)

说明 目前是大范围整理阶段&#xff0c;所以存在大量机翻说明&#xff0c;后续会逐渐补充和完善资料&#xff0c;减少机翻并增加说明。 Github上的汇总资源&#xff08;大部分英文&#xff09; awesome-production-machine-learning 此存储库包含一系列精选的优秀开源库&am…...

目标跟踪算法:SORT、卡尔曼滤波、匈牙利算法

目录 1 目标检测 2 卡尔曼滤波 3《从放弃到精通&#xff01;卡尔曼滤波从理论到实践》视频简单学习笔记 3.1 入门 3.2 进阶 3.2.1 状态空间表达式 3.2.2 高斯分布 3.3 放弃 3.4 精通 4 匈牙利算法 5 《【运筹学】-指派问题&#xff08;匈牙利算法&#xff09;》视…...

Java版-图论-拓扑排序与有向无环图

拓扑排序 拓扑排序说明 对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边<u,v>∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列…...

GTC2024 回顾 | 优阅达携手 HubSpot 亮相上海,赋能企业数字营销与全球业务增长

从初创企业入门到成长型企业拓展&#xff0c;再到 AI 驱动智能化运营&#xff0c;HubSpot 为企业的每步成长提供了全方位支持。 2024 年 11 月下旬&#xff0c;备受瞩目的 GTC2024 全球流量大会&#xff08;上海&#xff09;成功举办。本次大会汇聚了全国内多家跨境出海领域企业…...

eclipse启动的时候,之前一切很正常,但突然报Reason: Failed to determine a suitable driver class的解决

1、之前项目都是启动正常的&#xff0c;然后运行以后发现启动不了了&#xff0c;还会报错&#xff1a; 2、这个Reason: Failed to determine a suitable driver class&#xff0c;说是没有合适的驱动class spring:datasource:url: jdbc:sqlserver://192.168.1.101:1433;databa…...

_tkinter.TclError: can‘t find package tkdnd Unable to load tkdnd library.解决办法

Traceback (most recent call last): File “tkinterdnd2\TkinterDnD.py”, line 55, in _require _tkinter.TclError: can’t find package tkdnd During handling of the above exception, another exception occurred: Traceback (most recent call last): File “1.导入总表…...

VBA高级应用30例应用在Excel中的ListObject对象:向表中添加注释

《VBA高级应用30例》&#xff08;版权10178985&#xff09;&#xff0c;是我推出的第十套教程&#xff0c;教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开&#xff0c;这套教程案例与理论结合&#xff0c;紧贴“实战”&#xff0c;并做“战术总结”&#xff0c;以…...

folly库Conv类型转换源码解析

1,普通类型转换 例子1: bool boolV = true;EXPECT_EQ(to<bool>(boolV), true);int intV = 42;EXPECT_EQ(to<int>(intV), 42);float floatV = 4.2f;EXPECT_EQ(to<float>(floatV), 4.2f);double doubleV = 0.42;EXPECT_EQ(to<double>(doubleV), 0.42)…...

UE4 骨骼网格体合并及规范

实现代码 // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h" #include "SkeletalMeshMerge.h" #include "Kismet/BlueprintFunctionLibrary.h" #include "AceMeshCom…...

Java版企业电子招标采购系统源业码Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis

功能描述 1、门户管理&#xff1a;所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含&#xff1a;招标公告、非招标公告、系统通知、政策法规。 2、立项管理&#xff1a;企业用户可对需要采购的项目进行立项申请&#xff0c;并提交审批&#xff0c;查看所…...

通过源码⼀步⼀步分析 ArrayList 扩容机制

ArrayList 是 Java 中常用的集合类&#xff0c;它底层实现是基于数组的。为了处理元素的动态增加&#xff0c;ArrayList 会在容量不足时进行扩容。以下是通过源码逐步分析 ArrayList 扩容机制的过程。 1. ArrayList 类的基本结构 ArrayList 继承自 AbstractList&#xff0c;实…...

源码分析之Openlayers中默认Controls控件渲染原理

概述 Openlayers 中默认的三类控件是Zoom、Rotate和Attribution 源码分析 defaults方法 Openlayers 默认控件的集成封装在defaults方法中&#xff0c;该方法会返回一个Collection的实例&#xff0c;Collection是一个基于数组封装了一些方法&#xff0c;主要涉及到数组项的添…...

中间件的分类与实践:从消息到缓存

目录 一. 中间件的基本概念 二. 中间件的主要类型 &#xff08;1&#xff09;消息中间件&#xff08;Message-Oriented Middleware, MOM&#xff09;&#xff1a; &#xff08;2&#xff09;数据库中间件&#xff1a; &#xff08;3&#xff09;Web中间件&#xff1a; &a…...

京东e卡 h5st 4.96

声明: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 有相关问题请第一时间头像私信联系我删…...

《CSS 知识点》滚动条仅在 hover 时才显示(宽度不改变)

很简单&#xff01; 滚动条的滑动小方块背景色默认透明&#xff0c;仅在hover时设置背景色&#xff1b; 滚动条的轨道背景色默认透明&#xff0c;仅在hover时设置背景色&#xff1b; /*滚动条的滑动小方块*/ ::-webkit-scrollbar-thumb {background: transparent; } /*hover…...

手里有病理切片+单细胞测序的数据,如何开展医工交叉的研究?

小罗碎碎念 这一期推文研究一个问题&#xff1a;病理如何与单细胞结合&#xff1f; 病理与单细胞的结合&#xff0c;时常出现在今年的各大顶刊中。 关于这一领域的研究&#xff0c;其实19年就开始了。我把部分低质量的文献做了剔除&#xff0c;但是也基本能反应这一领域的受关注…...

力矩扭矩传感器介绍

在机械臂&#xff08;机器人臂&#xff09;末端使用的力矩扭矩传感器主要用于测量机械臂末端执行器&#xff08;例如机械手爪、抓取装置等&#xff09;所受的扭矩和力。这些传感器对机械臂的控制系统至关重要&#xff0c;能够提供精确的力反馈信息&#xff0c;帮助实现更高效、…...

【Appium】AttributeError: ‘NoneType‘ object has no attribute ‘to_capabilities‘

目录 1、报错内容 2、解决方案 &#xff08;1&#xff09;检查 &#xff08;2&#xff09;报错原因 &#xff08;3&#xff09;解决步骤 3、解决结果 1、报错内容 在PyCharm编写好脚本后&#xff0c;模拟器和appium也是连接成功的&#xff0c;但是运行脚本时报错&…...

QT 中 多线程(备查)

基础 一个线程处理窗口事件&#xff0c;其他线程进行逻辑运算 在QT中使用多线程&#xff0c;需要额外注意的&#xff1a; 1&#xff09;默认的线程在Qt中称之为窗口线程&#xff0c;也叫主线程&#xff0c;负责窗口事件处理或者窗口控件数据的更新 2&#xff09;子线程负责后台…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

FFmpeg 低延迟同屏方案

引言 在实时互动需求激增的当下&#xff0c;无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作&#xff0c;还是游戏直播的画面实时传输&#xff0c;低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架&#xff0c;凭借其灵活的编解码、数据…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

Linux 中如何提取压缩文件 ?

Linux 是一种流行的开源操作系统&#xff0c;它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间&#xff0c;使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的&#xff0c;要在 …...

通过MicroSip配置自己的freeswitch服务器进行调试记录

之前用docker安装的freeswitch的&#xff0c;启动是正常的&#xff0c; 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...