快速学会Linux的WEB服务
一.用户常用关于WEB的信息
什么是WWW
www是world wide web的缩写,及万维网,也就是全球信息广播的意思
通常说的上网就是使用www来查询用户所需要的信息。
www可以结合文字、图形、影像以及声音等多媒体,超链接的方式将信息以Internet传递到世界各处去。
当你连接www网站,该网站会提供一些数据,客户端要使用可以解析这些数据的软件来处理,那就是浏览器
网址
URI:Uniform Resource Identifier统一资源标识,分为URL和URN
URN:Uniform Resource Naming,统一资源命名,P2P下载使用的磁力链接是URN的一种实现
URL:Uniform Resorce Locator,统一资源定位符用于描述某服务器某特定资源位置
两者区别:而URL提供查找该事物的方法。URN仅用于命名,而不指定地址
URL组成
URL组成机构如下:
<scheme>://<user>:<password>@<host>:<port>/<path>:<params>?<query>#<frag>
每部分的定义为:
二.HTTP简介
什么是HTTP
HTTP协议:全称为Hyper Text Transfer Protocol(超文本传输协议)
简单来说http就是从服务器传输超文本(html)到本地浏览器的传输协议
HTTP协议工作于B/S架构上,浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务端发送请求(Request)Web服务端根据接收到的请求数据后,向客户端发送响应信息(Response)
面向开发者的 Web 技术 | MDN
HTTP工作机制
一次http事务包括:
http请求:http request
http响应: http response
Web资源: web resource
一个网页由多个资源(文件)构成,打开一个页面,通常会有多个资源展示出来,但是每个资源都要单独请求。因此,一个"Web页面”通常并不是单个资源,而是一组资源的集合
资源类型:
静态文件:无需服务端做出额外处理,服务器端和客户端的文件内容相同
常见文件后缀:.html,.txt,.jpg,.js,.css,mp3,avi
动态文件:服务端执行程序,返回执行的结果,服务器端和客户端的文件内容不相同
常见文件后缀:.php,jsp,asp
WEB中常用的语言介绍
html语言 超文本标记语言
<html><head><meta http-equiv=Content-Type content="text/html;charset=utf-8"><title>HTML语言</title></head><body><img src="http://www.xianoupeng.com/uploadfile/2019/0424/20190424115929686.jpg"><h1 style="color:red">欢迎</h1><p><a href=http://www.xianoupeng.com>欧鹏教育</a>欢迎你</p></body></html>
css 层叠样式表 表述网站的风格
html网页主体---<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>这是 heading 1</h1><p>这是一段普通的段落。请注意,该段落的文本是红色的。在body选择器中定义了本页面中的默认文本颜色。</p><p class="ex">该段落定义了class="ex"。该段落中的文本是蓝色的。</p></body></html>css文件--body {color:red }h1 {color:yellow }p.ex {color:blue }
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></htm1>
mine(Multipurpose Internet Mail Extensions)多用途因特网邮件扩展
它设计的最初目的是为了在发送电子邮件时附加多媒体数据,让邮件客户程序能根据其类型进行处理
为了支持多媒体数据类型,HTTP协议中就使用了附加在文档之前的MIME数据类型信息来标识数据类型。
其主要功能是让服务器将它们发送的多媒体数据的类型告诉浏览器
服务器将MIME标志符放入传送的数据中来告诉浏览器使用哪种插件读取相关文件
MIME类型存在于HTTP响应报文的响应头部信息里,它是一种文本标记
MIME格式: type/subtype 文件类型后缀(html txt jpg png... ...)
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
实际报文的主体内容
(1)URL重定向:web服务构建的响应并非客户端请求的资源,而是资源另外一个访问路径
(2)MIME类型:Web服务器要负责确定响应主体的MIME类型。多种配置服务器的方法可将MIME类型与资源管理起来
6)发送响应报文
Web服务器通过连接发送数据时也会面临与接收数据一样的问题。服务器可能有很多条到各个客户端的连接,有些是空闲的,有些在向服务器发送数据,还有一些在向客户端回送响应数据。服务器要记录连接的状态,还要特别注意对持久连接的处理。对非持久连接而言,服务器应该在发送了整条报文之后,关闭自己这一端的连接。对持久连接来说,连接可能仍保持打开状态,在这种情况下,服务器要正确地计算Content-Length首部,不然客户端就无法知道响应什么时候结束
HTTP协议报文头部结构
1)请求报文
求情报文由三部分组成即:开始行、首部行、是体主体
开始行:请求方法 url 版本 CRLF
首部行通常用键值表示
空格
实体主题数据,一般在post动作中可以提看到
开始行中的请求方法:
2)响应报文
求情报文由三部分组成即:开始行、首部行、是体主体
开始行:http版本 状态码 短语 CRLF
首部行通常用键值表示
空格
实体主题数据,即获取内容
状态代码
状态码由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值
常见状态代码、状态描述的说明如下:
三.WEB服务的配置详解
WEB服务的常用种类
Apache
Nginx
openresty
大厂自研
Nginx的安装
开源版本的Nginx官网:http://nginx.org
Nginx在安装的过程中可以选择源码安装也可以选择使用软件包安装
源码安装下载相应的源码压缩包解压后编译完成安装
软件安装包可以使用rpm或者apt命令进行安装,也可以使用dnf通过软件仓库安装
以软件仓库安装为例:
配置软件仓库
vim /etc/yum.repos.d/nginx.repo[nginx]name=nginxbaseurl=http://nginx.org/packages/rhel/9/x86_64gpgcheck=0
执行安装命令
dnf install nginx –y
启动服务并启用服务
systemctl enable --now nginx.servicefirewall-cmd --permanent --add-service=httpfirewall-cmd –reload
注意:在安装nginx之前还要配置好系统的软件仓库,nginx的安装需要通过系统软件仓库来解决依赖性
Nginx涉及到的文件
相关配置文件的作用
主配置目录:/etc/nginx
相关配置文件:/etc/nginx/
├── conf.d #子配置目录│ ├── default.conf #子配置文件├── fastcgi_params #fastcgi变量文件,用于识别php├── mime.types #媒体类型文件├── nginx.conf #主配置文件├── scgi_params #scgi变量文件,用于识别perl└── uwsgi_params #uwsgi变量文件,用于识别python/var/log/nginx #日志文件
nginx配置文件内容详解
1)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; #可接受最大连接数}
2)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; #指定子配置文件}
3)子配置文件
/etc/nginx/conf.d/default.confserver {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;}}
Nginx配置
1)nginx虚拟主机
默认情况下nginx只能发布一个站点
如果要发布多个站点需要搭建多台nginx来满足,如果这样会浪费太多资源
为解决上述问题,启用nginx的虚拟主机即可
虚拟主机有两种模式,基于IP或者基于域名
2)基于IP的虚拟主机
ip addr add 172.25.254.111/24 dev ens160ip addr add 172.25.254.222/24 dev ens160mkdir -p /usr/share/nginx/vhostroot/{111,222}/htmlecho 172.25.254.111 > /usr/share/nginx/vhostroot/111/html/index.htmlecho 172.25.254.222 > /usr/share/nginx/vhostroot/222/html/index.htmlvim vhost_ip.confserver{listen 172.25.254.111:80;location / {root /var/www/virtualdir/111/html;index index.html index.htm}}server{listen 172.25.254.222:80;location / {root /var/www/virtualdir/222/html;index index.html index.htm}}curl 172.25.254.222:8080172.25.254.222curl 172.25.254.111172.25.254.111
3)基于域名的虚拟主机
mkdir -p /usr/share/nginx/vhostroot/{bbs,news}/htmlecho news.easylee.org > /usr/share/nginx/vhostroot/news/html/index.htmlecho bbs.easylee.org > /usr/share/nginx/vhostroot/bbs/html/index.htmlvim vhost_name.confserver {listen 80;server_name bbs.easylee.org;location / {root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;}}server {listen 80;server_name news.easylee.org;location / {root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;}}
4)测试
[root@localhost conf.d]# curl news.easylee.orgnews.easylee.org[root@localhost conf.d]# curl bbs.easylee.orgnews.easylee.org
注意:在测试时因为虚拟主机是基于域名的,执行测试命令的主机需要做本地解析
vim /etc/hosts172.25.254.100 bbs.easylee.org news.easylee.org
web服务器的访问控制
1)基于IP的访问控制
mkdir -p /usr/share/nginx/vhostroot/bbs/html/adminecho admin page > /usr/share/nginx/vhostroot/bbs/html/admin/index.htmlvim vhost_name.confserver {listen 80;root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;server_name bbs.easylee.org;location / {}location /admin/ {allow 172.25.254.100;deny all;}}
2)基于认证的访问控制
建立认证文件按
yum install httpd-tools-2.4.57-5.el9.x86_64 -yhtpasswd -cm /etc/nginx/.htpasswd adminNew password:Re-type new password:Adding password for user admin
注意:htpasswd -c 表示新建认证文件,无论认证文件存不存在
当认证文件存在时加-c参数会把认证文件之前的内容全部清空
设置认证访问控制
vim vhost_name.confserver {listen 80;root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;server_name bbs.easylee.org;location / {}location /admin/ {auth_basic on;auth_basic_user_file /etc/nginx/.htpasswd;}}
相关文章:
快速学会Linux的WEB服务
一.用户常用关于WEB的信息 什么是WWW www是world wide web的缩写,及万维网,也就是全球信息广播的意思 通常说的上网就是使用www来查询用户所需要的信息。 www可以结合文字、图形、影像以及声音等多媒体,超链接的方式将信息以Internet传递到世…...
如何搭建spark yarn模式集群的集群
以下是搭建 Spark YARN 模式集群的一般步骤: 准备工作 确保集群中各节点已安装并配置好 Java 环境,且版本符合 Spark 要求。规划好集群中节点的角色,如 Master 节点、Worker 节点等,并确保各节点之间网络畅通,能相互…...
端口安全基本配置
1.top图 2.交换机配置 交换机swa <SWA> system-view [SWA] vlan batch 10 20[SWA] interface GigabitEthernet0/0/1 [SWA-GigabitEthernet0/0/1] port link-type trunk [SWA-GigabitEthernet0/0/1] port trunk allow-pass vlan 10[SWA] interface GigabitEthernet0/0/2 …...
【JsonCpp、Muduo、C++11】JsonCpp库、Muduo库、C++11异步操作
JsonCpp库、Muduo库、C11异步操作 1. JsonCpp库1.1 Json数据格式1.2 JsonCpp介绍1.3 JsonCpp使用 2. Muduo库2.1 Muduo库常见接口介绍2.1.1 TcpServer类基础介绍2.1.2 EventLoop类基础介绍2.1.3 TcpConnection类基础介绍2.1.4 Buffer类基础介绍2.1.5 TcpClient类基础介绍 2.2 M…...
【自然语言处理与大模型】LlamaIndex的词嵌入模型和向量数据库
(1)嵌入模型的定义和作用 嵌入模型(Embedding Model)的本质在于将高维的、稀疏的数据转换为低维的、密集的向量表示,使得这些向量能够在数学空间中表达原始数据的语义信息。作用如下: 降维表示:…...
SLAM算法工程师面经大全:2025年面试真题解析与实战指南
SLAM算法工程师面经大全:2025年面试真题解析与实战指南 一、SLAM技术概述与核心原理 1.SLAM基础理论框架 SLAM算法的核心在于同步定位与建图,这一过程涉及传感器数据融合、运动建模与优化方法。在传感器数据融合方面,不同类型的…...
虚拟现实视频播放器 2.6.1 | 支持多种VR格式,提供沉浸式观看体验的媒体播放器
虚拟现实媒体播放器是一款专为在智能手机上播放VR(虚拟现实)照片和视频而设计的应用程序。它支持多种格式的影像内容,包括360和180等距矩形柱面、标准镜头和鱼眼镜头拍摄的照片和视频,并且兼容3D立体并排、上/下以及收缩媒体格式。…...
从黔西游船侧翻事件看极端天气预警的科技防线——疾风气象大模型如何实现精准防御?
近日,贵州省黔西市一起载人游船侧翻事故令人痛心。调查显示,事发时当地突遇强风暴雨,水面突发巨浪导致船只失控。这一事件再次凸显:在极端天气频发的时代,传统“经验式防灾”已不足够,唯有依靠智能化的气象预警技术,才能筑牢安全底线。 极端天气预警的痛点:为什么传统方…...
颠覆监测体验!WM102无线温湿度记录仪开启智能物联新时代
当温湿度失控成为企业隐形成本杀手,您是否还在用传统设备疲于应对?一款集智能、精准、全能于一身的神器横空出世——WM102无线温湿度记录仪,用硬核科技重新定义环境监测! ▌5大场景痛点 一招破解 无论是医药冷库里的疫苗守护战&am…...
Linux云服务器配置git开发环境
文章目录 1. 安装 git2. git clone3. git add .4. git commit -m 提交记录5. git push🍑 异常原因🍑 解决办法 6. git pull7. git log8. git rm9. git mv10. git status 1. 安装 git sudo yum install git -y2. git clone 此命令的作用是从远程仓库把代…...
山东大学软件学院项目实训-基于大模型的模拟面试系统-个人主页头像上传
采用图床的方案,存储用户头像。 实现步骤 引入OSS依赖 在我们的SpringBoot项目中引入OSS依赖 <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.10.2</version> &l…...
AI智能体|扣子(Coze)实战【天气查询插件开发教程】
大家好,我是偶然,AI洞察,AI智能体,AI实战案例分享 今天教大家用 Coze 开发一个天气插件,本来我是想教大家怎么用 AI 写代码节点实现节点功能的,但是我感觉太复杂了。 起码来说,我还没做到用特别…...
VBA ListBox/ComboBox 响应鼠标滚轮操作
一般情况下,在Excel的vba窗口中,我们是无法使用鼠标滚轮控制例如 ListBox 和 ComboBox 控件的。我们只能通过鼠标点击的方式来逐个选择选项。 我们都知道,通过鼠标滚轮快速的上下滚动候选项,以快速的定位选择选项,这是…...
Linux 更改内存交换 swap 为 zram 压缩,减小磁盘写入
1、查看当前 swap 的方式 swapon --show 我这里是默认的 swap 文件,大小为 2G。 2、安装 zram Ubuntu 下: sudo apt install zram-tools安装后默认会启动: 3、关闭默认的 swap 文件 sudo swapoff /swapfile 其次是关闭 /etc/fstab 中的 …...
TypeScript简介
🌟 TypeScript入门 TypeScript 是 JavaScript 的超集,由微软开发并维护,通过静态类型检查和现代语言特性,让大型应用开发变得更加可靠和高效。 // 一个简单的 TypeScript 示例 interface User {name: string;age: number;greet():…...
Facebook如何运用AI实现元宇宙的无限可能?
引言 元宇宙(Metaverse)是一个虚拟的、由多个 3D 虚拟世界组成的网络,用户可以在其中进行互动、游戏、工作和社交。Facebook 作为全球最大的社交媒体平台之一,对元宇宙的构建和实现有着深远的影响。通过运用人工智能(…...
【大语言模型ChatGPT+Python】近红外光谱数据分析及机器学习与深度学习建模(近红外光谱数据分析、定性/定量分析模型代码自动生成等)
近红外光谱数据分析是一种重要的分析技术,广泛应用于化学、食品、制药、农业、环境科学等领域。以下是关于近红外光谱数据分析的详细介绍: 一、基本原理 近红外光谱的范围 近红外光谱是指波长范围在780 - 2500纳米的电磁辐射。在这个波段,分子…...
ArcGIS Pro图斑属性自动联动更新-在线卫星底图图斑采集
今天介绍一下在ArcGIS Pro图斑属性自动联动更新 主要介绍内容: 1、ArcGIS Pro数据设计中属性规则的设置,实现图斑属性的自动更新与联动更新。 2、介绍ArcGIS Pro不能新建要素类图层的原因 3、包括新建字段等内容 4、deepseek查询arcade计算图斑面积语…...
OpenHarmony GPIO应用开发-LED
学习于: https://docs.openharmony.cn/pages/v5.0/zh-cn/device-dev/driver/driver-platform-gpio-develop.md https://docs.openharmony.cn/pages/v5.0/zh-cn/device-dev/driver/driver-platform-gpio-des.md 通过OpenHarmony官方文档指导可获知:芯片厂…...
C语言结构体内存对齐使用场景
#pragma pack(push, 1) 和 #pragma pack(pop) 的使用场景(C语言) 这两个预处理指令用于控制结构体成员的内存对齐方式,主要在以下场景中使用: 主要使用场景 网络通信协议处理 当需要精确控制结构体布局以匹配网络协议格式时 确…...
极速轻量,Rust 网络开发新选择:Hyperlane 框架深度解析
极速轻量,Rust 网络开发新选择:Hyperlane 框架深度解析 在高性能网络服务开发领域,Rust 凭借其内存安全与高效并发的特性备受青睐。今天,我们迎来一款专为现代 Web 服务打造的明星框架——Hyperlane,它以“轻量高效、…...
从零开始学习人工智能(Python高级教程)Day6-Python3 正则表达式
一、Python3 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 在 Python 中,使用 re 模块来处理正则表达式。 re 模块提供了一组函数,允许你在字符串中进行模式匹配、搜索和替换操作。 r…...
UKCC(原OUCC)真题讲解(一)
题目链接:PRACTICE - 2025 Coding Challenge - UK Bebras 1.GreenStar 方法:使用模块 参考答案: 【知识点】 这里的长度100,是指中心到角的距离。 2.Draw a Square 参考答案: 【知识点】 在正多边形的图案中&#…...
Linux——特殊权限管理
Linux中的特殊权限(setuid、setgid、sticky bit)扩展了基本的文件权限机制,提供了更精细的控制。以下是详细说明: 1. SetUID(SUID) 作用:允许用户以文件所有者的权限执行文件。 例如:…...
Ubuntu18.04搭建samda服务器
一.什么是Samba服务器? Samba服务器是一种基于开源协议实现的网络共享服务软件,主要用于在不同操作系统(如Windows、Linux、Unix)之间实现文件和打印机共享功能。其核心目标是解决跨平台资源共享的兼容性问题,尤其是在…...
vue3搭建后台管理系统
找menu菜单 上部用height设置高度和背景颜色 需要自己改左侧栏的边线 将el-menu的border设置为0,然后上方设置border-right设置边框 设置右边 创建data.vue input组件 导入icon图标 引入import 一个template 设置个card el-card 定义card 加el-button查询 el-table表单 …...
[学习]RTKLib详解:pntpos.c与postpos.c
文章目录 RTKLib详解:pntpos.c与postpos.cPart A: pntpos.c一、概述二、整体工作流程三、主要函数说明1. pntpos()2. satposs()3. estpos()4. rescode()5. prange()6. ionocorr()7. tropcorr()8. valsol()9. raim_fde()10. estvel() 四、函数调用关系图(…...
64.微服务保姆教程 (七) RocketMQ--分布式消息中间件
RocketMQ–分布式消息中间件 一、MQ 1、什么是MQ MQ(Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据结构。指把要传输的数据(消息)放在队列中,用队列机制来实现消息传递——生产者产生消息并把消息放入队列,然后由消费者去处理。消费者可以到指定队…...
邀约媒体,邀请到场 多少钱?
传媒如春雨,润物细无声,大家好,我是51媒体胡老师。 在策划线下活动时,媒体邀约是提升品牌曝光度和影响力的重要环节。不同类型和规模的媒体邀约,其预算需求也各不相同。以下为各类媒体邀约的费用概览及影响因素&#…...
Android数据库全栈开发实战:Room+SQLCipher+Hilt企业级应用构建
简介 在移动应用开发中,数据库作为数据存储的核心组件,其安全性和性能对企业级应用至关重要。本文将从零开始,全面讲解Android数据库开发的最新技术,包括Room框架的深度使用、SQLCipher加密数据库的实现、Hilt依赖注入的集成以及前后端数据同步的完整方案。通过一个加密任…...
Kafka与RocketMQ在事务消息实现上的区别是什么?
一、Kafka事务消息核心实现(基于2.8版本) // KafkaProducer.java public synchronized Future<RecordMetadata> send(ProducerRecord<K, V> record) {// 事务消息校验(第256行)if (transactionManager ! null &&…...
Maven 依赖发布与仓库治理
🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…...
hybird接口配置
【sw1】 [sw1]vlan batch 10 20 [sw1]int g 0/0/3 [sw1-GigabitEthernet0/0/1]port hybrid tagged vlan 10 20 [sw1-GigabitEthernet0/0/1]int g 0/0/1 [sw1-GigabitEthernet0/0/2]port hybrid pvid vlan 10 [sw1-GigabitEthernet0/0/2]port hybrid untagged vlan 10 20 …...
AI视频智能分析网关打造社区/工厂/校园/仓库智慧消防实现精准化安全管控
一、背景 随着社区、商业场所对消防安全要求日益提升,传统消防系统已难以满足智能化、精细化管理需求。智能分析网关融合物联网与人工智能技术,具备强大的数据处理与分析能力,可全面升级消防系统。将其融入消防系统各层级,搭建智…...
Web3 应用中常见的数据安全风险及防护措施
随着 Web3 技术的蓬勃发展,我们见证了一个全新的互联网时代的到来。Web3 应用以其去中心化、用户控制数据和透明性的特点,为用户提供了前所未有的体验。然而,这些应用在提供便利的同时,也带来了一系列数据安全风险。本文将探讨 We…...
免费视频压缩软件
一、本地软件(支持离线使用) 1. HandBrake 平台:Windows / macOS / Linux 特点:开源免费,支持多种格式转换,提供丰富的预设选项(如“Fast 1080p”快速压缩),可自定义分…...
Java实用注解篇: @JSONField
前言 在 Java 开发中,进行对象与 JSON 的相互转换是一项常见操作,尤其在前后端分离的架构中显得尤为重要。Fastjson 作为阿里巴巴开源的 JSON 处理框架,因其高性能和强大功能而被广泛使用。JSONField 是 Fastjson 提供的一个注解,…...
浔川AI 第二次内测报告
浔川AI 第二次内测报告 执行社团:浔川社团官方联合会、总社团联合会 同意执行社团:总社团联合会 合作社团:暮烟社团官方联合会 合作分社团:浔川AI分社团、浔川AI分部 被执行内测程序:浔川AI 内测第二代 被执行内…...
React Hooks 深入浅出
目录 引言:React Hooks 的革命基础 Hooks useState:状态管理的新方式useEffect:组件生命周期的替代方案useContext:简化 Context API 额外的 Hooks useReducer:复杂状态逻辑的管理useCallback 与 useMemo:…...
解释 NestJS 的架构理念(例如,模块化、可扩展性、渐进式框架)
一、模块化设计 // user.module.ts Module({controllers: [UserController], // 当前模块的控制器providers: [UserService], // 当前模块的服务exports: [UserService] // 暴露给其他模块使用的服务 }) export class UserModule {}// order.module.ts Module({…...
Caffeine快速入门
依赖 <dependency><groupId>com.github.ben-manes.caffeine</groupId><artifactId>caffeine</artifactId><version>3.2.0</version> </dependency> Cache的基本api操作 Caffeine.newBuilder.build来构建Caffeine .maximumS…...
【踩坑记录】项目Bug分析:一次因 `String.isBlank()` 引发的崩溃(No such instance method: ‘isBlank‘)
项目Bug分析:一次因 String.isBlank() 引发的崩溃 一、前言 在日常的 Java 项目开发中,使用 String 的常见工具方法如 isEmpty()、trim() 等已司空见惯。然而,近期在一次项目中使用了 String.isBlank() 方法,结果竟然直接导致崩…...
SpringBoot整合Kafka、Flink实现流式处理
引言 在当今大数据处理领域,实时数据流处理变得越来越重要。Apache Kafka作为一个高吞吐量的分布式流处理平台,结合Apache Flink这一强大的流处理框架,可以构建出高效的实时数据处理系统。本文将指导您如何在SpringBoot应用中整合Kafka和Fli…...
互联网大厂Java求职面试:云原生与AI融合下的系统设计挑战-2
互联网大厂Java求职面试:云原生与AI融合下的系统设计挑战-2 第一轮提问:云原生架构选型与微服务治理 面试官(技术总监):郑薪苦,我们先从一个基础问题开始。你了解Spring Cloud和Kubernetes在微服务架构中…...
AI算力产业领域产品全景图:从硬件基础到应用场景
目录 1、硬件产品 2、 软件产品 3、云服务产品 4、边缘计算产品 5、AI应用产品 6、AI安全产品 7、AI合规产品 8、AI教培产品 9、AI研创产品 10、AI生态产品 在人工智能迅猛发展的今天,算力已成为推动AI技术进步与应用落地的核心驱动力。随着深度学习模型规模的不断膨…...
【优选算法 | 模拟】探索模拟算法: 编程与问题分析的双重 考验
算法相关知识点可以通过点击以下链接进行学习一起加油!双指针滑动窗口二分查找前缀和位运算 在本篇文章中,我们将深入解析模拟算法的原理。从基础概念到实际应用,带你了解如何通过模拟算法高效解决各种问题。无论你是刚接触算法的新手&#x…...
根据蓝牙名称自动匹配对应 UI
要实现“根据蓝牙名称自动匹配对应 UI”,并且支持未来不断增加的按摩椅型号和UI,推荐采用插件式UI注册自动路由的架构。下面是详细的可执行方案,适合你当前的 Flutter 项目结构: 1. 目录结构设计 假设每个按摩椅型号有独立的UI页…...
【25软考网工】第五章(7)路由协议、静态与默认路由、路由协议分类
目录 一、路由协议 1. 路由 2. 路由器工作原理 3. 查看路由表 4. IP路由查找的最长匹配原则 1)例题#最长匹配原则示例题 5. 应用案例 1)例题#路由优先级判断 2)例题#路由信息内容 3)例题#路由表迭代与静态路由 4&#…...
Rice Science∣武汉大学水稻研究团队发现水稻壁相关激酶OsWAKg16和OsWAKg52同时调控水稻抗病性和产量
近日,农学领域国际期刊Rice Science在线发表了武汉大学杂交水稻全国重点实验室范峰峰博士题为“Identification and Characterization of WAKg Genes Involved in Rice Disease Resistance and Yield”的研究论文。该论文系统分析了水稻壁相关激酶中包含半乳糖醛酸结…...
Spark,所用几个网页地址
hadoop的三大组成: 1. HDFS:存储。文件上传,下载 2. MapReduce:计算。词频统计,流量统计 3. YARN:调度 History Server网址:192.168.56.100:18080HDFS的NameNode网址:http://hadoop1…...