【Linux学习】05-1Linux上安装部署各类软件

news2024/11/25 18:48:19

Linux(B站黑马)学习笔记

01Linux初识与安装
02Linux基础命令
03Linux用户和权限
04Linux实用操作
05-1Linux上安装部署各类软件


文章目录

  • Linux(B站黑马)学习笔记
  • 前言
  • 05-1Linux上安装部署各类软件
  • JDK安装部署
  • Tomcat安装部署
  • maven安装
  • MySQL数据库管理系统安装部署
    • MySQL8.0在CentOS系统安装
      • 安装
      • 配置
  • Git安装
  • nginx安装部署
    • 通过压缩包安装
    • 通过yum安装
  • rabbitmq安装部署
  • redis安装部署
  • elasticSearch安装部署
  • 注:


前言

Linux(B站黑马)学习笔记 05-1Linux上安装部署各类软件


05-1Linux上安装部署各类软件

JDK安装部署

  1. 下载JDK压缩包

官网:https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html

在页面下方找到:

下载jdk-8u351-linux-x64.tar.gz

在弹出的页面中输入Oracle的账户密码即可下载(如无账户,请自行注册,注册是免费的

  1. 登陆Linux系统,切换到root用户

  1. 通过FinalShell,上传下载好的JDK安装包

(也可直接复制到centos可视化窗口中 注意:如果在windows下载了JDK压缩包拖拽进虚拟机里的话解压时会出现问题,但是复制粘贴进去的就没事)

  1. 创建文件夹,用来部署JDK,将JDK和Tomcat都安装部署到:/export/server 内

  1. 解压缩JDK安装文件

  1. 配置JDK的软链接

jdk1.8.0_351的名称太长,我们可以配置它的软连接(类似windows里的快捷方式)

  1. 配置JAVA_HOME环境变量,以及将$JAVA_HOME/bin文件夹加入PATH环境变量中
# 使用vim打开/etc/profile文件
vim /etc/profile

# 编辑/etc/profile文件
export JAVA_HOME=/export/server/jdk
export PATH=$PATH:$JAVA_HOME/bin

JAVA_HOME:告诉操作系统JDK安装在了哪个位置(将来其他技术要通过这个环境变量找JDK,而且我们电脑可能安装多个jdk,之后变更jdk版本只用改这里就行,Path也会跟着改)

Path环境变量用于记住程序路径,方便在命令行窗口的任意目录启动程序

  1. 生效环境变量
source /etc/profile
  1. 配置java执行程序的软链接
# 删除系统自带的java程序
rm -f /usr/bin/java
# 软链接我们自己安装的java程序
ln -s /export/server/jdk/bin/java /usr/bin/java
  1. 执行验证:
java -version
javac -version

Tomcat安装部署

简介

Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。

简单来说,Tomcat是一个WEB应用程序的托管平台,可以让用户编写的WEB应用程序,被Tomcat所托管,并提供网站服务。即让用户开发的WEB应用程序,变成可以被访问的网页。

安装

Tomcat的安装非常简单,主要分为2部分:

  1. 安装JDK环境(前面已完成)

  2. 解压并安装Tomcat

本次安装使用Tomcat版本是:10.0.27版本,需要Java(JDK)版本最低为JDK8或更高版本

教程中使用的JDK版本是:JDK8u351版本

Tomcat建议使用非Root用户安装并启动

可以创建一个用户:tomcat用以部署

  1. 首先,放行tomcat需要使用的8080端口的外部访问权限

CentOS系统默认开启了防火墙,阻止外部网络流量访问系统内部

所以,如果想要Tomcat可以正常使用,需要对Tomcat默认使用的8080端口进行放行

放行有2种操作方式:

Ⅰ. 关闭防火墙

Ⅱ. 配置防火墙规则,放行端口

# 以下操作2选一即可
# 方式1:关闭防火墙
systemctl stop firewalld        # 关闭防火墙
systemctl disable firewalld        # 停止防火墙开机自启

# 方式2:放行8080端口的外部访问
firewall-cmd --add-port=8080/tcp --permanent    # --add-port=8080/tcp表示放行8080端口的tcp访问,--permanent表示永久生效
firewall-cmd --reload                # 重新载入防火墙规则使其生效

方便起见,建议同学们选择方式1,直接关闭防火墙一劳永逸

且防火墙的配置非常复杂

  1. 以root用户操作,创建tomcat用户
# 使用root用户操作
useradd tomcat
# 可选,为tomcat用户配置密码
passwd tomcat

  1. 下载Tomcat安装包
# 使用root用户操作
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.73/bin/apache-tomcat-9.0.73.tar.gz
# 如果出现https相关错误,可以使用--no-check-certificate选项
wget --no-check-certificate https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.73/bin/apache-tomcat-9.0.73.tar.gz

如果Linux内下载过慢,可以复制下载链接在Windows系统中使用迅雷等软件加速下载然后上传到Linux内即可

下载时可能出现404 Not Found的错误,有可能是官网安装包更新导致原来的找不到,换下版本号就行

注意版本冲突,Tomcat 9.0需要Java 8或更高版本。

  1. 解压Tomcat安装包
# 使用root用户操作,否则无权限解压到/export/server内,除非修改此文件夹权限
tar -zxvf apache-tomcat-9.0.73.tar.gz -C /export/server
  1. 创建Tomcat软链接
# 使用root用户操作
ln -s /export/server/apache-tomcat-9.0.73 /export/server/tomcat
  1. 修改tomcat安装目录权限
# 使用root用户操作,同时对软链接和tomcat安装文件夹进行修改,使用通配符*进行匹配
chown -R tomcat:tomcat /export/server/*tomcat*
  1. 切换到tomcat用户
su - tomcat
  1. 启动tomcat
/export/server/tomcat/bin/startup.sh
  1. tomcat启动在8080端口,可以检查是否正常启动成功
netstat -anp | grep 8080

  1. 打开浏览器

    输入:
    http://centos:8080或http://192.168.81.130:8080或http://127.0.0.1:8080/
    使用主机名(需配置好本地的主机名映射)或IP地址访问Tomcat的WEB页面

至此,Tomcat安装配置完成。

maven安装

  1. maven下载:https://maven.apache.org/download.cgi

  1. windows下载好后上传到Linux中
rz  #打开FinalShell文件上传界面,找到windows上的压缩包

  1. 切换到root用户,将maven安装部署到:/export/server 内
tar -zxvf apache-maven-3.9.1-bin.tar.gz -C /export/server  #解压maven压缩包到指定目录下

  1. 配置环境变量

配置JAVA_HOME环境变量,以及将$JAVA_HOME/bin文件夹加入PATH环境变量中

# 使用vim打开/etc/profile文件
vim /etc/profile

# 编辑/etc/profile文件
export MAVEN_HOME=/export/server/apache-maven-3.9.1    #若文件名过长可配置软连接
export PATH=$PATH:$MAVEN_HOME/bin   #注意:如果有JAVA_HOME拼在后面如:$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

# 重新生效环境变量
source /etc/profile

验证是否成功配置

mvn -version

  1. 修改本地仓库地址 conf目录下settings.xml文件
# 创建mvn_resp目录作为本地仓库地址
mkdir mvn_resp

# 打开settings.xml文件配置本地仓库
vim settings.xml

# 找到对应位置加入
<localRepository>/export/server/mvn_resp</localRepository>

  1. 配置阿里云镜像,加快依赖下载速度(不然会在国外的中央仓库下载,速度会非常慢),同样在conf目录下settings.xml文件
<!-- 添加镜像地址 -->
<mirror>
  <id>alimaven</id>
  <name>aliyun maven</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  <mirrorOf>central</mirrorOf>
</mirror>

MySQL数据库管理系统安装部署

MySQL8.0在CentOS系统安装

MySQL的安装我们可以通过前面学习的yum命令进行。

安装

  1. 配置yum仓库
# 更新密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

# 安装Mysql8.x版本 yum库
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

由于由于MySQL并不在CentOS的官方仓库yum中,所以我们通过上述rpm命令:

导入MySQL仓库的密钥

配置MySQL的yum仓库

  1. 使用yum安装MySQL
# yum安装Mysql
yum -y install mysql-community-server

  1. 安装完成后,启动MySQL并配置开机自启动
systemctl start mysqld        # 启动
systemctl enable mysqld        # 开机自启

MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  1. 检查MySQL的运行状态
systemctl status mysqld

配置

主要配置管理员用户root的密码以及配置允许远程登录的权限。

  1. 获取MySQL的初始密码
# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
grep 'temporary password' /var/log/mysqld.log

  1. 登录MySQL数据库系统
# 执行
mysql -u root -p
# 解释
# -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
# -p,表示使用密码登陆

# 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库

  1. 修改root用户密码
# 在MySQL控制台内执行
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';    -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
  1. 【扩展】配置root的简答密码

我们可以给root设置简单密码,如123456.

请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

# 如果你想设置简单密码,需要降低Mysql的密码安全级别
set global validate_password.policy=0;        # 密码安全级别低
set global validate_password.length=4;        # 密码长度最低4位即可

# 然后就可以用简单密码了(课程中使用简单密码,为了方便,生产中不要这样)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '简答密码';
  1. 【扩展】配置root允许远程登录(注:MySQL5.0和MySQL8.0设置不一样)

默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

请注意,允许root远程登录会带来安全风险

# 第一次设置root远程登录,并配置远程密码使用如下SQL命令
create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!';    -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
# IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址
# 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同
 
# 后续修改密码使用如下SQL命令
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

# 授权root远程登录
grant all privileges on *.* to root@'%' with grant option;

# 刷新权限,生效
flush privileges;
  1. 退出MySQL控制台页面
# 退出命令
exit

# 或者通过快捷键退出:ctrl + d
  1. 检查端口

MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

netstat -anp | grep 3306

Git安装

# root执行
yum list git       # 列出git安装包

yum install -y git    # 在线安装git

nginx安装部署

简介

Nginx是一款轻量级的web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东新浪、网易、腾讯、淘宝等。

Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。

官网: https://nginx.org/

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

同Tomcat一样,Nginx可以托管用户编写的WEB应用程序成为可访问的网页服务,同时也可以作为流量代理服务器,控制流量的中转。

Nginx在WEB开发领域,基本上也是必备组件之一了。

安装

通过压缩包安装

安装过程:(切换为root用户)

  1. 安装依赖包
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
  1. 下载Nginx安装包
wget https://nginx.org/download/nginx-1.22.1.tar.gz
  1. 解压到当前目录
tar -zxvf nginx-1.22.1.tar.gz
  1. 进入解压后目录
cd nginx-1.22.1
  1. 配置等下安装到哪个目录下
mkdir -p /export/server/nginx  # 先创建目录

./configure --prefix=/export/server/nginx
  1. 安装
make

make install

  1. 启动Nginx服务使用如下命令:
./nginx    # sbin目录下执行
  1. 配置防火墙放行

nginx默认绑定80端口,需要关闭防火墙或放行80端口

# 方式1(推荐),关闭防火墙
systemctl stop firewalld        # 关闭
systemctl disable firewalld        # 关闭开机自启

# 方式2,放行80端口
firewall-cmd --add-port=80/tcp --permanent        # 放行tcp规则下的80端口,永久生效
firewall-cmd --reload                    # 重新加载防火墙规则
  1. 启动后浏览器输入Linux服务器的IP地址或主机名即可访问

http://192.168.81.130 或 http://centos

ps:80端口是访问网站的默认端口,所以后面无需跟随端口号

显示的指定端口也是可以的比如:

http://192.168.81.130:80

http://centos:80

至此,Nginx安装配置完成。

Nginx目录结构

安装完Nginx后,我们先来熟悉一下Nginx的目录结构,如图

重点目录/文件:

  • conf/nginx.conf nginx配置文件
  • html 存放静态文件 (html、CSS、Js等)
  • logs 日志目录,存放日志文件
  • sbin/nginx 二进制文件,用于启动、停止Nginx服务

通过yum安装

Nginx同样需要配置额外的yum仓库,才可以使用yum安装

安装Nginx的操作需要root身份

  1. 安装yum依赖程序
# root执行
yum install -y yum-utils
  1. 手动添加,nginx的yum仓库

yum程序使用的仓库配置文件,存放在:/etc/yum.repo.d 内。

# root执行
# 创建文件使用vim编辑
vim /etc/yum.repos.d/nginx.repo
# 填入如下内容并保存退出
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

通过如上操作,我们手动添加了nginx的yum仓库

  1. 通过yum安装最新稳定版的nginx
# root执行
yum install -y nginx
  1. 启动
# nginx自动注册了systemctl系统服务
systemctl start nginx        # 启动
systemctl stop nginx        # 停止
systemctl status nginx        # 运行状态
systemctl enable nginx        # 开机自启
systemctl disable nginx        # 关闭开机自启
  1. 配置防火墙放行

nginx默认绑定80端口,需要关闭防火墙或放行80端口

# 方式1(推荐),关闭防火墙
systemctl stop firewalld        # 关闭
systemctl disable firewalld        # 关闭开机自启

# 方式2,放行80端口
firewall-cmd --add-port=80/tcp --permanent        # 放行tcp规则下的80端口,永久生效
firewall-cmd --reload                    # 重新加载防火墙规则
  1. 启动后浏览器输入Linux服务器的IP地址或主机名即可访问

http://192.168.81.130 或 http://centos

ps:80端口是访问网站的默认端口,所以后面无需跟随端口号

显示的指定端口也是可以的比如:

http://192.168.81.130:80

http://centos:80

至此,Nginx安装配置完成。

rabbitmq安装部署

简介

RabbitMQ一款知名的开源消息队列系统,为企业提供消息的发布、订阅、点对点传输等消息服务。

RabbitMQ在企业开发中十分常见,课程为大家演示快速搭建RabbitMQ环境。

安装

rabbitmq在yum仓库中的版本比较老,所以我们需要手动构建yum仓库

  1. 准备yum仓库
# root执行
# 1. 准备gpgkey密钥
rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
rpm --import https://packagecloud.io/rabbitmq/erlang/gpgkey
rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey

# 2. 准备仓库文件
vim /etc/yum.repos.d/rabbitmq.repo
# 填入如下内容
##
## Zero dependency Erlang
##

[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
       https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
       https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

##
## RabbitMQ server
##

[rabbitmq_server]
name=rabbitmq_server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
       https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[rabbitmq_server-source]
name=rabbitmq_server-source
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
  1. 安装RabbitMQ
# root执行
yum install erlang rabbitmq-server -y

  1. 启动
# root执行
# 使用systemctl管控,服务名:rabbitmq-server
systemctl enable rabbitmq-server        # 开机自启
systemctl disable rabbitmq-server        # 关闭开机自启
systemctl start rabbitmq-server            # 启动
systemctl stop rabbitmq-server            # 关闭
systemctl status rabbitmq-server        # 查看状态
  1. 放行防火墙,RabbitMQ使用5672、15672、25672 3个端口
# 方式1(推荐),关闭防火墙
systemctl stop firewalld        # 关闭
systemctl disable firewalld        # 关闭开机自启

# 方式2,放行5672 25672端口
firewall-cmd --add-port=5672/tcp --permanent    # 放行tcp规则下的5672端口,永久生效
firewall-cmd --add-port=15672/tcp --permanent    # 放行tcp规则下的15672端口,永久生效
firewall-cmd --add-port=25672/tcp --permanent    # 放行tcp规则下的25672端口,永久生效
firewall-cmd --reload                    # 重新加载防火墙规则
  1. 启动RabbitMQ的WEB管理控制台
rabbitmq-plugins enable rabbitmq_management
  1. 添加admin用户,并赋予权限
rabbitmqctl add_user admin 'pgw_rabbitmq'
rabbitmqctl set_permissions -p "/" "admin" ".*" ".*" ".*"
rabbitmqctl set_user_tags admin administrator

  1. 浏览器打开管理控制台

http://192.168.81.130:15672/

至此,RabbitMQ已经安装完成了。

redis安装部署

简介

redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。

redis的特点就是:,可以基于内存存储数据并提供超低延迟、超快的检索速度

一般用于在系统中提供快速缓存的能力。

安装

  1. 配置EPEL仓库

EPEL 的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。EPEL则为服务器版本提供大量的rpm包(yum程序所使用的程序安装包,类似Windows的exe),而且大多数rpm包在官方 repository 中是找不到的。

# root执行
yum install -y epel-release
  1. 安装redis
# root执行
yum install -y redis

  1. 启动redis
# root执行
# 使用systemctl管控,服务名:redis
systemctl enable redis        # 开机自启
systemctl disable redis        # 关闭开机自启
systemctl start redis        # 启动
systemctl stop redis        # 关闭
systemctl status redis        # 查看状态
  1. 放行防火墙,redis使用端口6379
# 方式1(推荐),关闭防火墙
systemctl stop firewalld        # 关闭
systemctl disable firewalld        # 关闭开机自启

# 方式2,放行6379端口
firewall-cmd --add-port=6379/tcp --permanent        # 放行tcp规则下的6379端口,永久生效
firewall-cmd --reload
  1. 进入redis服务
# 执行redis-cli
[root@centos ~]# redis-cli
127.0.0.1:6379> set mykey hello
OK
127.0.0.1:6379> get mykey
"hello"
127.0.0.1:6379> 

至此,redis安装完成。

elasticSearch安装部署

简介

全文搜索属于最常见的需求,开源的 Elasticsearch (以下简称 es)是目前全文搜索引擎的首选。

它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。

Elasticsearch简称es,在企业内同样是一款应用非常广泛的搜索引擎服务。

很多服务中的搜索功能,都是基于es来实现的。

安装

  1. 添加yum仓库
# root执行
# 导入仓库密钥
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

# 添加yum源
# 编辑文件 
vim /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md


# 更新yum缓存
yum makecache
  1. 安装es
yum install -y elasticsearch
  1. 配置es
vim /etc/elasticsearch/elasticsearch.yml

# 17行,设置集群名称
cluster.name: my-cluster

# 23行,设置节点名称
node.name: node-1

# 56行,允许外网访问
network.host: 0.0.0.0

# 74行,配置集群master节点
cluster.initial_master_nodes: ["node-1"]

  1. 启动es
systemctl start | stop | status | enable | disable elasticsearch
  1. 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
  1. 测试

浏览器打开:http://192.168.81.130:9200/?pretty

启动后浏览器输入Linux服务器的IP地址或主机名即可访问


注:

该内容是根据B站黑马程序员学习时所记,相关资料可在B站查询:黑马程序员新版Linux零基础快速入门到精通,全涵盖linux系统知识、常用软件环境部署、Shell脚本、云平台实践、大数据集群项目实战等

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

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

相关文章

Matlab绘图函数subplot、tiledlayout、plot和scatter

一、绘图函数subplot subplot(m,n,p)将当前图窗划分为 mn 网格&#xff0c;并在 p 指定的位置创建坐标区。MATLAB按行号对子图位置进行编号。第一个子图是第一行的第一列&#xff0c;第二个子图是第一行的第二列&#xff0c;依此类推。如果指定的位置已存在坐标区&#xff0c;…

ahk系列——ahk_v2实现win10任意界面ocr

前言&#xff1a; 不依赖外部api接口&#xff0c;界面简洁&#xff0c;翻译快速&#xff0c;操作简单&#xff0c; 有网络就能用 、还可以把ocr结果非中文翻译成中文、同样可以识别中英日韩等60多个国家语言并翻译成中文&#xff0c;十分的nice 1、所需环境 windows10及其以上…

【小沐学C++】C++ 基于Premake构建工程项目(Windows)

文章目录 1、简介2、下载和安装2.1 下载2.3 快速入门 3、使用3.1 支持的工程文件Project Files3.2 构建设置Build Settings3.3 链接Linking3.4 配置Configurations3.5 平台Platforms3.6 过滤Filters3.7 预设值Tokens 4、测试4.1 测试1&#xff1a;入门例子4.2 测试2&#xff1a…

STL upper_bound和lower_bound函数

声明&#xff1a; 首先包含头文件#include<algorithm> 这里的两个函数所运用的对象必须是非递减的序列&#xff08;也就是数组&#xff0c;数组必须是非递减的&#xff09;&#xff0c;只有这样才可以使用upper_bound和lower_bound这两个函数。 还有一点&#xff0c;就…

手摸手带你 在Windows系统中安装Istio

Istio简介 通过负载均衡、服务间的身份验证、监控等方法&#xff0c;Istio 可以轻松地创建一个已经部署了服务的网络&#xff0c;而服务的代码只需很少更改甚至无需更改。 通过在整个环境中部署一个特殊的 sidecar 代理为服务添加 Istio 的支持&#xff0c;而代理会拦截微服务…

【C++】string 之 find、rfind、replace、compare函数的学习

前言 上篇文章&#xff0c;我们学习了assign、at、append这三个函数 今天&#xff0c;我们来学习find、 函数 find函数 引入 我们都知道&#xff0c;find函数可以是string类中&#xff0c;用于查找字符或者字符串的函数 也可以是&#xff0c;<algorithm>头文件中&am…

帝国CMS插件-最全免费帝国CMS插件大全

在如今的数字时代&#xff0c;网站管理员和内容创作者面临着一个共同的挑战&#xff1a;如何快速而有效地生成并发布大量内容&#xff0c;以吸引更多的用户和读者。帝国CMS&#xff08;Empire CMS&#xff09;是一个备受欢迎的内容管理系统&#xff0c;许多网站使用它来创建和管…

3.物联网射频识别,RFID

一。ISO14443-2协议简介 1.ISO14443协议组成及部分缩略语 &#xff08;1&#xff09;14443协议组成 14443-1 物理特性 14443-2 射频功率和信号接口 14443-3 初始化和防冲突 14443-4 传输协议 &#xff08;2&#xff09;针对前两节的名词&#xff0c;对应的英语缩略语 PCD&…

解决webpack报错:You forgot to add ‘mini-css-extract-plugin‘ plugin

现象&#xff1a; 原因&#xff1a; webpack5.72跟mini-css-extract-plugin有兼容性问题 解决办法&#xff1a;把 new MiniCssExtractPlugin()放在webpack配置文件中plugins数组的第一项&#xff1a; plugins: [ // 此处解决报错&#xff1a;You forgot to add mini-css-extra…

Lua表公共操作

--表的公共操作 t1 {{age 1,name "123"},{age 2,name "456"}} t2 {name "Holens" , sex true} --插入 print(#t1) table.insert(t1,t2) print(#t1) print(t1[3].sex) print("*************************************")--删除 -…

媒体编解码器MediaCodec

目录 1.介绍MediaCodec类 2.创建MediaCodec的方式 3.MediaCodec流程 &#xff08;1&#xff09;配置编码参数 &#xff08;2&#xff09;创建编码器 &#xff08;3&#xff09;创建混合器 &#xff08;4&#xff09;开始编码 4.MediaCodec编码的工作方式 5.MediaCodec…

整型提升——(巩固提高——字符截取oneNote笔记详解)

文章目录 前言一、整型提升是什么&#xff1f;二、详细图解1.图解展示 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 整型提升是数据存储的重要题型&#xff0c;也是计算机组成原理的核心知识点。学习c语言进阶的时候,了解内存中数据怎么存&#…

Lua表实现类

--类 Student { name "Holens",age 1,sex true,Say1 function()print(Student.name.."说话了")end,Say2 function(t)print(t.name.."说话了2")end } Student.Say1() print("*************************************")--声明后添加…

Python大数据之pandas快速入门(一)

文章目录 pandas快速入门学习目标1. DataFrame 和 Series 简介2. 加载数据集(csv和tsv)2.1 csv和tsv文件格式简介2.2 加载数据集(tsv和csv) pandas快速入门 学习目标 能够知道 DataFrame 和 Series 数据结构能够加载 csv 和 tsv 数据集能够区分 DataFrame 的行列标签和行列位…

Windows11安装MySQL8.1

安装过程中遇到任何问题均可以参考(这个博客只是单纯升级个版本和简化流程) Windows安装MySQL8教程-CSDN博客 到官网下载mysql8数据库软件 MySQL :: Download MySQL Community Server 下载完后,解压到你需要安装的文件夹 其中的配置文件内容了如下 [mysqld]# 设置3306端口po…

设计模式4、建造者模式 Builder

解释说明&#xff1a;将一个复杂对象的构建与它的表示分离&#xff0c;使得同样的构建过程可以创建不同的表示 UML 结构图&#xff1a; 抽象建造者&#xff08;Builder&#xff09;&#xff1a;这个接口规定要实现复杂对象的那些部分的创建&#xff0c;并不设计具体部件对象的创…

【Spring Cloud】Ribbon 实现负载均衡的原理,策略以及饥饿加载

文章目录 前言一、什么是 Ribbon二、Ribbon 实现负载均衡的原理2.1 负载均衡的流程2.2 Ribbon 实现负载均衡的源码剖析 三、Ribbon 负载均衡策略3.1 负载均衡策略3.2 演示 Ribbon 负载均衡策略的更改 四、Ribbon 的饥饿加载4.1查看 Ribbon 的懒加载4.2 Ribbon 的饥饿加载模式 前…

《The Rise and Potential of Large Language Model Based Agents: A Survey》全文翻译

The Rise and Potential of Large Language Model Based Agents: A Surve - 基于 LLMs 的代理的兴起和潜力&#xff1a;一项调查 论文信息摘要1. 介绍2. 背景2.1 AI 代理的起源2.2 代理研究的技术趋势2.3 为什么大语言模型适合作为代理大脑的主要组件 3. 代理的诞生&#xff1a…

【文档智能】:GeoLayoutLM:一种用于视觉信息提取(VIE)的预训练模型

前言 文章介绍了一种用于视觉信息提取&#xff08;VIE&#xff09;的预训练模型&#xff1a;GeoLayoutLM。GeoLayoutLM通过显式建模几何关系和特殊的预训练任务来提高文本和布局的特征表示。该模型能够提高文档信息抽取的性能。 一、提出背景 当前多模态预训练模型在 SER 任…

c/c++中如何输入pi

标准的 C/C 语言中没有π这个符号及常量&#xff0c;一般在开发过程中是通过开发人员自己定义这个常量的&#xff0c;最常见的方式是使用宏定义&#xff1a; 方法1&#xff1a;#define pi 3.1415926 方法2&#xff1a;使用反三角函数const double pi acos(-1.0);