饿了么后端登录模块

news2024/9/29 11:41:20

一、回顾
高并发集群 饿了么后端的登录模块

1、数据库
1. 主从复制(高可用)
2. 传统的主从复制
3. gtids事务型的主从复制
4. 注意
        1. server_id唯一

        2. 8.x版本需要get_ssl_pub_key

        3. 5.x不需要

        4. change master to

        5. stop | start slave

5. 非交互

import pymysql
conn=pymysql.connect(host=xxx,user=xxx,password=xxx,port=xx,database=xxxx)
cursor=conn. cursor()
sql="insertldeletelupdate|select ... "
cursor. execute(sql)
#查询不需要提交 直接使用fectch就可以得到结果
#增删改需要提交
conn. commit()
mysql -h192.168.71.11 << EOF
 
create database if not exists test charset utf8mb4;
use test;
create tables
 
quit
EOF
  6. 数据库的负载均衡 阿里巴巴的mycat
        server.xml schema.xml

<! --  vim /usr/local/mycat/conf/server.xml
对外的账号 密码 数据库  -- >
 
<user name="zhangmin">
<property name="password">zhangmin</property>
<property name="databasd">test</property>
</user>
 
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
 
    <schema name="eleme" dataNode="dn1"  checkSQLschema="false" sqlMaxLimit="100"></schema>
    <dataNode name="dn1" dataHost="localhost1" database="eleme" />
    <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
              writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
        <heartbeat>select user()</heartbeat>
        <writeHost host="hostM1" url="192.168.71.10:3306" user="zhangmin" password="zhangmin">
     <readHost host="hostS2" url="192.168.71.11:3310" user="zhangmin" password="zhangmin" />
     <readHost host="hostS3" url="192.168.71.12:3310" user="zhangmin" password="zhangmin" />
        </writeHost>
    </dataHost>
</mycat:schema>

 如果出现启动异常 8066端口没有打开,可以检查两个日志文件
vim /usr/local/mycat/logs/wrapper.log
vim /usr/local/mycat/logs/mycat.log

2、后端服务器 java|python|php|asp
版本:正常市场jdk8,但是由于spring6.x框架必须要求17以上的版本,jdk版本比较多,找开发者要版本-jdk

vim /etc/profile
 
export JAVA_HOme=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
 
source /etc/profile
 
使用jar包启动服务
#2Miapplication.properties|yml
修改 yml中的端口或者数据源
url=jdbc:msyq1://ip:port/databasename
username=dbuser
 
passowrd=dbpass
java -jar eleme_server.xxxxx.jar
3、负载均衡技术
1. 1vs
        dr模式

ds主机
1.挂载vip(对外)ens33:0
ifconfig ens33:0 vipxx broädcast=vipxxx
netmast=255.255.255.255 up
route add vip dev ens33:0
 
yum -y install ipvsadm
#添加规则
ipvsadm -A -t vipxx:port -s rr
ipvsadm -a -t vipxx:port -r ripxx -g
ipvsadm -a -t vipxx:port...
 
 
rs主机
ifconfig lo:0 vipxxx broadcast .... netmask xxxx up
route add vipxxx dev lo:0
 
 
java主机
抑制接受请求
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

2. nginx代理负载均衡

vim /etc/nginx/conf/nginx.conf
http {
 
upstream javagroup {
server ip:port weight=99;
server ip:port weight=1;
 
}
 
server {
location ~/ {
pass_proxy http://javagroup;
}
}
二、Docker
1、Docker是什么?
Docker是一个开源的应用容器引擎,可以实现虚拟化,完全采用“沙盒”机制,容器之间不会存在任何接口。

Docker通过Linux Container(容器)技术将任意类型的应用进行包装,变成一种轻量级、标准化、可移植、自管理的组件。在包装应用的同时,可连带该应用的依赖和环境一并进行打包,所以可以将这种“包”移植到任意环境去运行,省去兼容性的问题。

2、docker和虚拟机的区别
Docker和虚拟机在以下八个方面存在差异:
1. 启动速度:Docker启动速度非常快,属于秒级别,而虚拟机通常需要几分钟去启动。

2. 资源消耗:Docker需要的资源更少,它直接运行在宿主机的内核上,以一系列进程的结合形式
存在。而虚拟机则需要消耗更多的资源,因为它在操作系统级别进行虚拟化。

3. 轻量级:Docker更轻量,它的架构可以共用一个内核与共享应用程序库,所占内存极小。而虚
拟机则相对较重,需要消耗更多的内存。

4. 隔离性:虚拟机可以实现系统级别的隔离,而Docker则属于进程之间的隔离,隔离性相对较弱

5. 安全性:Docker的安全性也更弱。

6. 可管理性:Docker的集中化管理工具还不算成熟。

7. 兼容性:开发人员不需要关系具体是哪个Linux操作系统,基本市面上主流系统都可使用
Docker,

8. 数据持久性:Docker无法存储数据,当容器重启后,数据会消失;而虚拟机可以存储各种数
据,包括日志、数据库等。                        

3、docker解决的问题
(1)系统环境不一致问题


环境不同时可能会出现的环境问题:

 将简易的操作系统、编写好的代码、部署完成的应用服务配置等打包放到容器内,再转到鲸鱼上,由鲸鱼送到服务器,此时,无论是什么运行环境,docker容器都可以运行。

(2)应用隔离问题

Linux是一个支持多用户的操作系统,正因如此,可能会造成用户使用时,互相之间占用资源过多,以致于服务器资源空间不足,而docker具有隔离性,可以在启动时就限定好硬件的使用率,当某个容器到达或超过限定的阈值了,就会被kill,此时需要运维人员对其进行调试。

(3)服务器扩展问题

日常的业务量大多很平均,但在业务量繁多时期,比如“双十一”,“春运购票”等场景,就需要对服务器进行横向扩展才能将负载均衡下来,而如果大规模地扩展服务器,待服务器满载时期过去,回到日常业务量后,就会导致剩余资源极大地浪费。并且在扩展时,还要对各种应用服务进行部署、调试等,工作量也十分庞大,所以,此时使用Docker将会真正意义上实现快速部署,且耗费资源较少,尤其不会出现兼容性的问题。

4、Docker的优缺点

(1)优点

1. 体积小:减小系统的开销值,一台主机可以运行上千个容器。

2. 启动迅捷:更快速的交付和部署,docker容器,比传统虚拟机要快很多,docker核心解决的问
题就是利用容器实现VM类似的功能。

3. 操作方便:通过配置dockerfile便支持灵活的自动化创建和部署。

4. 更轻松的扩展:可以实现更简单的、更可靠的迁移,避免了兼容性等问题。

5. 更强的可扩展性和可移植性。

 (2)缺点

1. 安全问题:如果没有正确配置,一个容器中的恶意代码可能会影响到主机上的其他容器以及主机本身的安全。

2. 存储问题:当使用大量容器时,存储和管理容器映像可以变得非常困难。这可能需要使用分布式存储或其他解决方案来管理大量容器的存储。

3. 性能问题:在某些情况下,容器和虚拟机相比会导致性能损失。这些性能问题越来越少,但是仍然需要考虑。
4. 网络问题:Docker可能会在网络配置上存在一些问题,这可能需要更多的时间来诊断和解决

5. 复杂性:Docker是一个非常灵活的系统,但这同时也让它更加复杂。长时间使用Docker会产生大量的脚本和配置文件,这些可能变得难以维护。

6. 资源消耗:使用Docker必须占用一些资源,包括CPU、内存、磁盘等等。如果运行容器的主机资源不足,可能会导致性能问题。

7. 学习曲线:Docker是一个相对新的技术,相比传统环境需要一定的学习曲线。需要了解Docker基本概念、命令和配置文件等。

8. 需要花费时间配置和管理:使用Docker需要花时间配置和管理容器集群和应用程序。需要配置每个容器,管理Jenkins、Kubernetes等运行Docker容器的工具。

9. 映像构建复杂:构建Docker映像需要按照特定格式编写Dockerfile脚本,需要遵循一定的规范和流程,这可能需要更多的时间和精力。

5、docker架构


1. 用docker pull 命令从hub.docker.com官网上下载images(镜像)。

2. 可以用docker save命令将镜像保存到本地tar文件,也可以用docker load 命令将本地tar文件导入镜像。

3. 可以用docker build构建Dockerfile镜像。

4. 可以用docker run和docker create 将镜像运行成container(容器),容器内可以安装所需要的APP。

5. 可以用docker commit/export将容器做成镜像反复的使用。

6. 可以将自己制作的镜像发布到hub.docker.com网站,需要注册账号。

6、Docker核心概念

1. 镜像(images):一个面向docker容器引擎的只读模板,也是容器的基础,类似于iso镜像文件。

2. 容器(container):基于镜像所创建的虚拟实例,相当于一个简易的Linux环境,可启停,且多个容器之间互相隔离。
3. 仓库(Repository):集中存放docker镜像的位置,可使用docker pull或push命令下载或上传到私有或公有仓库。

4. 仓库注册服务器(registry):存放仓库的地方,如果没有私有仓库,则使用公共仓库dockerhub

7、Docker特性

1. 文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里。

2. 资源隔离:实现不同的容器的资源配额和调度,cgroup。

3. 网络隔离:每个进程容器运行在自己的网络空间,拥有虚拟接口和IP地址。

4. 日志记录:Docker将收集到和记录的每个进程容器的标准流(stdout/stderr/stdin),用于实时
检索或者批量检索。

5. 变更管理:容器文件系统的变更可以提交到新的镜像中,并可重复使用以创建更多的容器。

6. 交互式shell:Docker可以分配一个虚拟终端并且关联到任何容器的标准输出上,例如运行一个一次性交互shell。

 三、安装docker

■ overlay:是一种文件系统层叠技术,常用于容器化平台(比和Docker)中。它允许将多个文件系统叠加在一起,从而创建一个统一可见的文件系统。通过加载ovfsrlay模块,可以在Linux系统
中使用overlay文件系统,并且它将提供一些额外的功能,比如联合挂载、I文件层叠等。
■br_netfilter: Linux内核中的一个模块,它提供了桥接设备(bridge device)和网络过滤器
(netfilter)之间的集成。它允许在桥接设备上使用网络过滤器功能,如防火墙规则、网络地址转换(NAT)等。通过加载br_netfilter模块,你可以在Linux系统中的桥接设备上应用网络过滤规则对网络流量进行管理和控制。

■ device-mapper-persistent-data:一个Linux内核模块,它为Device Mapper设备提供持久存储功能。DMPD提供了一个用于存储映射关系的数据库,使得Device Mapper可以持久化存储映射数据,以便在系统重新启动后仍然可以恢复之前的映射关系。

■ lvm2:Linux系统下的逻辑卷管理工具,LVM的升级版,它是对磁盘分区进行管理的一种机制,
建立在硬盘和分区之上的一个逻辑层,用来提高磁盘管理的灵活性。

1、配置环境 

 [root@docker1 ~]# cat << EOF | tee /etc/modules-load.d/k8s.conf
> overlay
> br_netfilter
> EOF
overlay
br_netfilter
[root@docker1 ~]# modprobe overlay   #加载overlay内核模块
[root@docker1 ~]# modprobe br_netfilter  #加载br_netfilter内核模块

[root@docker1 ~]# cat /etc/modules-load.d/k8s.conf 
overlay
br_netfilter

[root@docker1 ~]# cat << EOF | tee /etc/sysctl.d/k8s.conf
> net.bridge.bridge-nf-call-iptables = 1
> net.bridge.bridge-nf-call-ip6tables = 1
> net.ipv4.ip_forward = 1
> EOF
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
[root@docker1 ~]# sysctl --system
[root@docker1 ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
[root@docker1 ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

[root@docker1 ~]# ls /etc/yum.repos.d/
CentOS-Base.repo  docker-ce.repo  epel-testing.repo
dd.repo           epel.repo

[root@docker1 ~]# yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y   #--allowerasing  #允许卸载旧版本

2、启动服务和关闭服务

[root@docker1 ~]# systemctl start docker  #启动服务

[root@docker1 ~]# systemctl stop docker

[root@docker1 ~]# systemctl restart docker

3、镜像管理

[root@docker1 ~]# docker images  #查看现有镜像

[root@docker1 ~]# docker search tomcat  #查找tomcat镜像
[root@docker1 ~]# docker search nginx

[root@docker1 ~]# docker search centos

[root@docker1 ~]# docker inspect centos  #查看镜像详细信息

[root@docker1 ~]# vim /etc/docker/daemon.json   #下载镜像,配置docker镜像站

{
        "registry-mirrors": [
                "https://do.nark.eu.org",
                "https://dc.j8.work",
                "https://docker.m.daocloud.io",
                "https://dockerproxy.com",
                "https://docker.mirrors.ustc.edu.cn",
                "https://docker.nju.edu.cn"
        ]
}
[root@docker1 ~]# systemctl restart docker
[root@docker1 ~]# docker pull centos 

[root@docker1 ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   2 years ago   231MB

4、容器管理
(1)运行容器

[root@docker1 ~]# docker run -i -t --name=c0 centos:latest /bin/bash  # run启动 -i 交互 -t终端 -name 命名 centos:latest 应用:版本 /bin/bash 指令
[root@e84261634543 /]#  

[root@e84261634543 ~]# rm -rf /etc/yum.repos.d/*
[root@e84261634543 ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo  #阿里云镜像

[root@e84261634543 ~]# yum clean all && yum makecache
[root@e84261634543 ~]# yum -y install httpd
[root@e84261634543 ~]# yum -y install iproute
[root@e84261634543 ~]# yum -y install net-tools

[root@e84261634543 ~]# ps  #当前运行的进程

[root@e84261634543 ~]# uptime  #启动时间
 06:33:22 up 30 min,  0 users,  load average: 0.00, 0.03, 0.05
[root@e84261634543 ~]# pwd  #当前位置
/root
[root@e84261634543 ~]# cat /etc/redhat-release   #当前当前版本
CentOS Linux release 8.4.2105

向index.html写入东西

[root@e84261634543 ~]# echo "docker_httpd_server" > /var/www/html/index.html
[root@e84261634543 ~]# systemctl start httpd  #启动不了
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down

[root@e84261634543 ~]# httpd -k start   #启动

[root@e84261634543 ~]# curl localhost
docker_httpd_server

本机另一个终端可以访问

[root@docker1 ~]# curl http://172.17.0.2
docker_httpd_server

另一台机器访问不到

[root@docker1 ~]# ps -aux|grep docker

[root@e84261634543 ~]# exit
exit
[root@docker1 ~]# curl 172.17.0.2
^C
[root@docker1 ~]# ps -aux|grep docker
root       1215  0.0  5.9 1635992 59804 ?       Ssl  14:05   0:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root       1885  0.0  0.0 112720   980 pts/0    R+   15:05   0:00 grep --color=auto docker
退出就没有进程了

[root@docker1 ~]# docker start c0  #启动
c0
[root@docker1 ~]# docker attach c0  #将c0终端界面挂载到当前终端

[root@e84261634543 /]# netstat -lnput |grep 80
[root@e84261634543 /]# httpd -k start
docker_httpd_server

启动服务,退出但不中断 ctrl+p+q    CTRL别松手先按p再按q

[root@e84261634543 /]# read escape sequence

[root@docker1 ~]# docker attach c0
[root@docker1 ~]# systemctl status docker.service  #查看状态

[root@docker1 ~]# systemctl stop docker  #关闭
[root@docker1 ~]# docker attach c0  #不可以启动了
You cannot attach to a stopped container, start it first

(2) 允许远程管理

[root@master ~]# service mysql57 start  #启动之后会创建套接文件
Starting MySQL. SUCCESS! 
[root@master ~]# ls -lh /tmp/
总用量 4.0K
srwxrwxrwx 1 mysql mysql  0 8月  22 15:31 mysql.sock

[root@docker1 ~]# ls -lh /var/run/  #tcp连接

(3)编写配置文件

[root@docker1 ~]# vim /usr/lib/systemd/system/docker.service 
允许远程2375端口开启

[root@docker1 ~]# vim /etc/docker/daemon.json 

{
        "registry-mirrors": [
                "https://do.nark.eu.org",
                "https://dc.j8.work",
                "https://docker.m.daocloud.io",
                "https://dockerproxy.com",
                "https://docker.mirrors.ustc.edu.cn",
                "https://docker.nju.edu.cn"
        ],
 
        "hosts": [
                "tcp://0.0.0.0:2375",
                "unix:///var/run/docker.sock"
        ]
}
[root@docker1 ~]# systemctl start docker
[root@docker1 ~]# vim /usr/lib/systemd/system/docker.service​
 13 ExecStart=/usr/bin/dockerd 
 14 # -H fd:// --containerd=/run/containerd/containerd.sock
[root@docker1 ~]# systemctl daemon-reload
[root@docker1 ~]# systemctl restart docker
[root@docker1 ~]# netstat -lnput|grep 2375
tcp6       0      0 :::2375                 :::*                    LISTEN      2686/dockerd  

[root@docker1 ~]# ls -lh /var/run/docker.sock 
srw-rw---- 1 root docker 0 8月  22 16:24 /var/run/docker.sock

(4)远程管理

[root@docker1 ~]# docker -H 192.168.8.195 images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   2 years ago   231MB

[root@docker1 ~]# docker ps -all
CONTAINER ID   IMAGE           COMMAND       CREATED       STATUS                         PORTS     NAMES
e84261634543   centos:latest   "/bin/bash"   2 hours ago   Exited (0) About an hour ago             c0
[root@docker1 ~]# docker start c0
c0
[root@docker1 ~]# docker attach c0
[root@e84261634543 /]# httpd -k start
[root@e84261634543 /]# curl localhost
docker_httpd_server
[root@e84261634543 /]# read escape sequence
[root@docker1 ~]# docker ps -all
CONTAINER ID   IMAGE           COMMAND       CREATED       STATUS          PORTS     NAMES
e84261634543   centos:latest   "/bin/bash"   2 hours ago   Up 43 seconds             c0
[root@docker1 ~]# curl 172.17.0.2
docker_httpd_server

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

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

相关文章

uniapp 地图map画出地市轮廓

最近做uniapp项目 H5微信小程序&#xff0c;需要在地图中打点并把相对应的区域轮廓给画出来。 首先查看uniapp官方文档&#xff1a;https://uniapp.dcloud.net.cn/component/map.html 想在uniapp中使用map直接写map标签即可 <view class"page-section page-section-…

CSS实现鼠标hover展开菜单

效果图&#xff1a; HTML源码&#xff1a; 背景图地址需要更改 <!-- 软件介绍 --> <div class"software-box"><div class"software-container"><div class"software-title"><h2>&ldquo; 一个软件搞定所有 &am…

创客匠人老蒋在「IP私域发售六脉神剑落地班」现场金句频出

破认知&#xff0c;提新知&#xff0c;老蒋的观点&#xff0c;再一次带你穿越周期 2024&#xff0c;变革不断&#xff0c;知识服务行业到底该怎么做&#xff1f;「IP私域发售六脉神剑落地班」现场&#xff0c;老蒋作为大课导师&#xff0c;再一次为大家带来了新鲜且颠覆的行业知…

基于SpringBoot的在线笔记网站的设计与实现

目录 项目技术和环境 页面展示 登录注册 管理员页面 用户页面 在线网址 源代码 本系统由十大核心模块构成&#xff0c;包括用户登录与注册模块、个人中心模块、笔记分类与笔记管理模块、笔记详情展示模块、分享协作与收藏管理模块、回收站与用户管理模块&#xff0c;以及…

CoppeliaSim(V-Rep)与ROS1、ROS2接口变迁-2024-

Webots&#xff1a;Webots与ROS1、ROS2接口变迁 Gazebo&#xff1a;Gazebo与ROS1、ROS2接口变迁 ROS1 2016&#xff1a;ROS_Kinetic_18 使用V-Rep3.3.1和Matlab2015b&#xff08;vrep_ros_bridge&#xff09;续 vrep_ros_bridge 插件 一、项目背景与目标 vrep_ros_bridge 是…

[数据集][目标检测]光伏发电板红外图像鸟粪检测数据集VOC+YOLO格式173张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;173 标注数量(xml文件个数)&#xff1a;173 标注数量(txt文件个数)&#xff1a;173 标注类别…

Windows—RAW编程

客服端骨架&#xff1a; #include <iostream> #include <WinSock2.h> #pragma comment(lib,"ws2_32.lib")int main() {WORD wVersionRequested MAKEWORD(2, 2);WSADATA lpWSAData;WSAStartup(wVersionRequested, &lpWSAData);SOCKADDR_IN saddr{ …

如何在没有密码的情况下解锁iPhone?

如果您的 iPhone 被锁定&#xff0c;知道如何在没有密码的情况下解锁它会派上用场。有几种方法可以帮助您重新使用无价的小工具&#xff0c;无论您是忘记了密码&#xff0c;还是现在只想使用手机。这篇博客文章将讨论在 iPhone 上设置密码的价值、忘记密码的典型原因以及在没有…

什么是DDOS攻击?DDOS攻击一小时多少钱?DDOS攻击如何防御?

什么是DDOS攻击? 拒绝服务攻击&#xff08;DDOS&#xff09;亦称洪水攻击&#xff0c;是一种网络攻击手法&#xff0c;其目的在于使目标计算机的网络或系统资源耗尽&#xff0c;使服务暂时中断或停止&#xff0c;导致其正常用户无法访问。当黑客使用网络上两个或以上被攻陷的计…

AWK的高级用法、三剑客总结

1、定义引用变量 -v:声明变量 案例一: 将系统的变量a,在awk里赋值为变量b,然后调用变量b -v 选项将其传递给 awk直接调用的话需要先用双引号再用单引号awk直接定义变量并引用调用函数getline,读取一行数据的时候并不是得到当前行而是当前行的下一行打印整个行面下面含有ro…

mp4怎么转换成mp3?看了就会的8种mp4转mp3方法!

mp4怎么转换成mp3&#xff1f;MP4作为广泛应用的视频格式&#xff0c;在日常娱乐与工作中扮演着重要角色&#xff0c;但它在特定情境下也带来了一些不便&#xff0c;你是否曾遇到过这样的困扰&#xff0c;当视频内容中的画面并非焦点&#xff0c;而你只对其中的音频感兴趣时&am…

鸿蒙Harmony编程开发:服务端证书锁定防范中间人攻击示例

1. TLS通讯中间人攻击及防范简介 TLS安全通讯的基础是基于对操作系统或者浏览器根证书的信任&#xff0c;如果CA证书签发机构被入侵&#xff0c;或者设备内置证书被篡改&#xff0c;都会导致TLS握手环节面临中间人攻击的风险。其实&#xff0c;这种风险被善意利用的情况还是很…

EasyCVR视频汇聚技术赋能智慧煤矿:车载设备接入方案助力实时监控与远程监管

在煤矿行业&#xff0c;智慧化转型已成为提升生产效率、保障安全的重要途径。随着物联网、大数据、云计算等技术的快速发展&#xff0c;智慧煤矿建设逐步深入&#xff0c;车载设备作为煤矿生产的重要一环&#xff0c;其接入智慧管理系统显得尤为重要。本文将详细介绍智慧煤矿车…

软件开发整体介绍

软件开发流程 需求分析&#xff1a;需求规格说明书&#xff08;一般以word文档的形式&#xff09;、产品原型&#xff08;静态页面展示出来&#xff09;设计&#xff1a;UI设计、数据库设计、接口设计编码&#xff1a;项目代码、单元测试测试&#xff1a;测试用例、测试报告上…

滚雪球学Java(89):Java GUI入门与进阶:AWT核心概念深度解析,有两下子!

咦咦咦&#xff0c;各位小可爱&#xff0c;我是你们的好伙伴——bug菌&#xff0c;今天又来给大家普及Java SE啦&#xff0c;别躲起来啊&#xff0c;听我讲干货还不快点赞&#xff0c;赞多了我就有动力讲得更嗨啦&#xff01;所以呀&#xff0c;养成先点赞后阅读的好习惯&#…

html文件运行后界面反馈xxx拒绝连接

概述&#xff1a;我的html代码中包含了外站界面&#xff0c;运行后界面反馈到xxx拒绝连接&#xff0c;我尝试了网上的诸多方法&#xff0c;例如换一个浏览器运行&#xff0c;修改主机网络设置&#xff0c;更改浏览器DNS都没有作用。 <!DOCTYPE html> <html> <h…

html+css+js网页设计 电商 翡翠钻石电商网站10个页面

htmlcssjs网页设计 电商 翡翠钻石电商网站10个页面 网页作品代码简单&#xff0c;可使用任意HTML编辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源…

华为录音删除怎么恢复?教你几招轻松找回重要录音

在日常生活中&#xff0c;我们经常会使用华为手机进行通话录音或录制一些重要的会议内容。然而&#xff0c;有时不小心删除了这些录音文件&#xff0c;可能会带来不小的麻烦。那么&#xff0c;华为录音删除后该如何恢复呢&#xff1f;本文将为你详细介绍几种实用的恢复方法&…

红黑树的插入

目录 一、红黑树 二、红黑树节点的定义 三、红黑树的插入 3.1按照二叉搜索的树规则插入新节点 3.2检测新节点插入后红黑树的情况 3.3红黑树插入代码总体实现 四、红黑树的验证 五、红黑树和AVL树的比较 一、红黑树 红黑树&#xff0c;是一种二叉搜索树&#xff0c;但在…

如何申请开通商家转账到零钱【成功经验分享】

商家转账到零钱功能是微信支付为商户提供的一项便捷服务&#xff0c;允许商户直接将资金转入用户的微信钱包。鉴于很多商户在申请商家转账到零钱时被过时的、错误的经验文章所误导&#xff0c;以我们上万次成功开通商家转账到零钱功能的经验整理这篇文章&#xff0c;希望能对新…