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

CentOS7安装部署StarRocks

文章目录

  • CentOS7安装部署StarRocks
  • 一、前言
    • 1.简介
    • 2.环境
  • 二、正文
    • 1.StarRocks基础
      • 1)架构图
      • 2)通讯端口
    • 2.部署服务器
    • 3.安装基础环境
      • 1)安装JDK 11
      • 2)修改机器名
      • 3)安装GCC
      • 4)关闭交换分区(swap)
      • 5)时钟同步
      • 6)关闭防火墙
      • 7)SELinux
      • 8)LANG 变量
      • 9)时区
      • 10)ulimit 设置
      • 11)网络配置
      • 12)高并发配置
    • 4.集群部署
      • 1)安装FE
      • 2)拷贝BE
      • 3)安装BE
      • 4)安装CN【可选】
      • 5)安装MySQL客户端
      • 6)集群搭建
      • 7)测试
      • 8)WebUI
    • 5.服务自启动
      • 1)配置FE自启动
      • 2)配置BE自启动
      • 3)配置CN自启动
      • 4)启动服务

CentOS7安装部署StarRocks

一、前言

1.简介

  • Apache Doris:Apache Doris 是一个基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。基于此,Apache Doris 能够较好的满足报表分析、即席查询、统一数仓构建、数据湖联邦查询加速等使用场景,用户可以在此之上构建用户行为分析、AB 实验平台、日志检索分析、用户画像分析、订单分析等应用。
  • StarRocks:StarRocks 基于 Apache Doris (incubating) 0.13 打造;StarRocks 是一款高性能分析型数据仓库,使用向量化、MPP 架构、CBO、智能物化视图、可实时更新的列式存储引擎等技术实现多维、实时、高并发的数据分析。StarRocks 既支持从各类实时和离线的数据源高效导入数据,也支持直接分析数据湖上各种格式的数据。StarRocks 兼容 MySQL 协议,可使用 MySQL 客户端和常用 BI 工具对接。同时 StarRocks 具备水平扩展,高可用、高可靠、易运维等特性。广泛应用于实时数仓、OLAP 报表、数据湖分析等场景。
  • 镜舟数据库:基于 StarRocks 发展起来的企业级商用数据库,满足金融、物流、汽车、能源、医疗等政企客户对技术支持、解决方案、生态建设、售后保障等方面的极致要求。

2.环境

  • Linux 发行版:CentOS-7-x86_64-DVD-1804.iso
  • JDK 版本:Java SE Development Kit 11.0.19
  • StarRocks 版本:2.5.13

StarRocks 开发文档

镜舟数据库官网

Doris 介绍

SelectDB 官网

CentOS7安装部署Doris

CentOS7安装部署CDH6.2.1

CentOS基础操作命令

CentOS对换home分区与root分区的存储空间

CentOS7安装部署Java11

CentOS7安装部署MySQL80

二、正文

1.StarRocks基础

1)架构图

系统架构 @ Architecture @ StarRocks Docs

StarRocks 存算分离架构 @ StarRocks Docs

在这里插入图片描述

  • FE 是 StarRocks 的前端节点,负责管理元数据,管理客户端连接,进行查询规划,查询调度等工作。每个 FE 节点都会在内存保留一份完整的元数据,这样每个 FE 节点都能够提供无差别的服务。

对于 StarRocks 生产集群,建议至少部署三个 Follower FE 节点,以防止单点故障。

  • BE 是 StarRocks 的后端节点,负责数据存储、SQL执行等工作。

对于 StarRocks 生产集群,建议至少部署三个 BE 节点,这些节点会自动形成一个 BE 高可用集群,避免由于发生单点故障而影响数据可靠性和服务可用性。

通过增加 BE 节点的数量来实现查询的高并发。

  • Compute Node(CN)是一种无状态的计算服务,本身不存储数据,仅负责 SQL 执行;通过添加 CN 节点为查询提供额外的计算资源,而无需改变集群中的数据分布;CN 节点自 v2.4 版本起支持。

2)通讯端口

检查环境配置 | StarRocks

  • FE 端口
端口端口名称端口说明
8030http_portFE HTTP Server 端口
9020rpc_portFE Thrift Server 端口
9030query_portFE MySQL Server 端口
9010edit_log_portFE 内部通讯端口
  • BE 端口
端口端口名称端口说明
9060be_portBE Thrift Server 端口
8040webserver_portBE HTTP Server 端口
9050heartbeat_service_portBE 心跳服务端口
8060brpc_portBE BRPC 端口
  • CN 端口
端口端口名称端口说明
9060thrift_portCN Thrift Server 端口
8040webserver_portCN HTTP Server 端口
9050heartbeat_service_portCN 心跳服务端口
8060brpc_portCN BRPC 端口
  • FE 元数据存放位置:meta_dir = /data/starrocks/metadata
  • BE 数据存放目录:storage_root_path = /data/starrocks/storage

2.部署服务器

集群名IP 地址实例
sr001192.168.249.131FE
sr002192.168.249.132BE
sr003192.168.249.133BE
sr004192.168.249.134CN

规划 StarRocks 集群 @ plan_cluster @ StarRocks Docs

通常,FE 服务不会消耗大量的 CPU 和内存资源。建议您为每个 FE 节点分配 8 个 CPU 内核和 16 GB RAM。

与 FE 服务不同,如果应用程序需要在大型数据集上处理高度并发或复杂的查询,BE 服务可能会使用大量 CPU 和内存资源。因此,建议为每个 BE 节点分配 16 个 CPU 内核和 64 GB RAM。

3.安装基础环境

在 4 台服务器上执行基础环境的安装和配置

1)安装JDK 11

  • 参考:CentOS7安装部署Java11
  • 安装目录:/opt/java/jdk-11.0.19

2)修改机器名

  • 修改 4 台服务器的机器名
#-- sr001
hostnamectl set-hostname sr001 --static
hostnamectl set-hostname sr001 --transient#-- sr002
hostnamectl set-hostname sr002 --static
hostnamectl set-hostname sr002 --transient#-- sr003
hostnamectl set-hostname sr003 --static
hostnamectl set-hostname sr003 --transient#-- sr004
hostnamectl set-hostname sr004 --static
hostnamectl set-hostname sr004 --transient

3)安装GCC

yum -y install gcc
gcc --version

4)关闭交换分区(swap)

  • 查询交换分区
swapon --show
  • 关闭交换分区
# 备用:打开交换分区:swapon -a
swapoff -a
  • 编辑 /etc/fstab
vim /etc/fstab
  • 加入注释
# /dev/mapper/centos-swap swap                    swap    defaults        0 0

5)时钟同步

  • 安装 rdate 软件包
#安装rdate
yum -y install rdate#同步时间
rdate -s time-b.nist.gov#查看时间是否正确
date
  • 安装定时器软件包
yum -y install crontab
  • 创建 crontab 任务
crontab -e
  • 写入内容:20 秒同步一次
*/20 * * * * /usr/bin/rdate -s time-b.nist.gov > /dev/null 2>&1
  • 重启 crontab 服务
service crond reload
  • 其它时间同步服务器节点
节点位置节点域名
东南大学s1d.time.edu.cn
清华大学s1e.time.edu.cn
清华大学s2a.time.edu.cn
清华大学s2b.time.edu.cn
北京邮电大学s2c.time.edu.cn
上海交通大学ntp.sjtu.edu.cn
北京邮电大学s1a.time.edu.cn
北京大学s1c.time.edu.cn
香港中文大学clock.cuhk.edu.hk

6)关闭防火墙

  • 可禁用防火墙,或配置开放的端口,后者比较安全
#--关闭防火墙
systemctl stop firewalld.service
#--开机禁用防火墙
systemctl disable firewalld.service
#--防火墙状态
systemctl status firewalld.service

7)SELinux

  • 禁用 SELinux
sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
sed -i 's/SELINUXTYPE/#SELINUXTYPE/' /etc/selinux/config
setenforce 0

8)LANG 变量

echo "export LANG=en_US.UTF8" >> /etc/profile
source /etc/profile

9)时区

cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock

10)ulimit 设置

  • 最大文件描述符
ulimit -n 655350
  • 最大用户进程
ulimit -u 40960

11)网络配置

  • 如果系统当前因后台进程无法处理的新连接而溢出,则允许系统重置新连接
echo 1 | sudo tee /proc/sys/net/ipv4/tcp_abort_on_overflow
  • 设置监听 Socket 队列的最大连接请求数为 1024
echo 1024 | sudo tee /proc/sys/net/core/somaxconn

12)高并发配置

echo 120000 > /proc/sys/kernel/threads-max
echo 262144 > /proc/sys/vm/max_map_count
echo 200000 > /proc/sys/kernel/pid_max

4.集群部署

1)安装FE

FE 服务器:192.168.249.131

  • 创建安装目录
mkdir /opt/starrocks
cd /opt/starrocks
  • 下载安装包,当前安装版本:2.5.13

Download StarRocks Free | StarRocks

wget https://releases.starrocks.io/starrocks/StarRocks-2.5.13.tar.gz
  • 解压安装包
tar -xzvf StarRocks-2.5.13.tar.gz
  • 移动 FE 文件夹到安装目录:/opt/starrocks/
mv /opt/starrocks/StarRocks-2.5.13/fe/ /opt/starrocks/
  • 创建 FE 元数据目录
mkdir -p /data/starrocks/metadata
chmod -R 777 /data/starrocks/metadata
  • 编辑配置文件
vim ./fe/conf/fe.conf
  • 修改内容:
# JAVA_OPTS 上面一行
JAVA_HOME=/opt/java/jdk-11.0.19# 绑定 IP
priority_networks=192.168.249.131/24# 元数据目录
meta_dir=/data/starrocks/metadata
  • 启动 FE
cd /opt/starrocks
# 启动
./fe/bin/start_fe.sh --daemon
# (备用)停止
# ./fe/bin/stop_fe.sh
  • 测试启动是否成功,方法一:
cat fe/log/fe.log | grep thrift
  • 输出以下内容,表示启动成功
thrift server started with port 9020.
  • 测试启动是否成功,方法二:
  1. 浏览器访问:http://192.168.249.131:8030/api/bootstrap

  2. 成功提示:

{"replayedJournalId":0,"queryPort":0,"rpcPort":0,"feStartTime":0,"status":"OK","msg":"Success"}

2)拷贝BE

FE 服务器:192.168.249.131

  • BE 服务器和 CN 服务器创建目录
mkdir -p /opt/starrocks
  • 拷贝 BE 安装包至 BE 服务器和 CN 服务器
scp -r /opt/starrocks/StarRocks-2.5.13/be root@192.168.249.132:/opt/starrocks/be
scp -r /opt/starrocks/StarRocks-2.5.13/be root@192.168.249.133:/opt/starrocks/be
scp -r /opt/starrocks/StarRocks-2.5.13/be root@192.168.249.134:/opt/starrocks/be

3)安装BE

BE 服务器:192.168.249.132、192.168.249.133

  • 创建安装目录
cd /opt/starrocks
  • 创建存储目录
mkdir -p /data/starrocks/storage
chmod -R 777 /data/starrocks/storage
  • 修改配置文件
vim ./be/conf/be.conf
  • 修改内容:
  1. 绑定服务器 IP;注意区分不同服务器 IP

priority_networks=192.168.249.132/24

priority_networks=192.168.249.133/24

# 绑定 IP
priority_networks=192.168.249.132/24# 存储目录
storage_root_path=/data/starrocks/storage# JAVA_HOME
JAVA_HOME=/opt/java/jdk-11.0.19
  • 限制一个进程可以拥有的VMA(虚拟内存区域)的数量
vim /etc/sysctl.conf
  • 写入内容
vm.max_map_count=2000000
fs.file-max=6553560
  • 加载并应用配置文件
sysctl -p
  • 启动 BE
cd /opt/starrocks
# 启动
./be/bin/start_be.sh --daemon
# (备用)停止
# ./be/bin/stop_be.sh
  • 测试启动是否成功,方法一:
cat be/log/be.INFO | grep heartbeat
  • 输出以下内容,表示启动成功
thrift server started with port 9020.
  • 测试启动是否成功,方法二:
  1. 浏览器访问:

​ http://192.168.249.132:8040/api/health

​ http://192.168.249.133:8040/api/health

  1. 成功提示:
{"status": "OK","msg": "To Be Added"}

4)安装CN【可选】

BE 服务器:192.168.249.134

CN 节点是 StarRocks 的可选组件,CN 节点自 v2.4 版本起支持

  • 创建安装目录
cd /opt/starrocks
  • 修改配置文件
vim ./be/conf/cn.conf
  • 修改内容:
  1. 绑定服务器 IP;注意区分不同服务器 IP
# 绑定 IP
priority_networks=192.168.249.134/24# JAVA_HOME
JAVA_HOME=/opt/java/jdk-11.0.19
  • 限制一个进程可以拥有的VMA(虚拟内存区域)的数量
vim /etc/sysctl.conf
  • 写入内容
vm.max_map_count=2000000
fs.file-max=6553560
  • 加载并应用配置文件
sysctl -p
  • 启动 BE
cd /opt/starrocks
# 启动
./be/bin/start_cn.sh --daemon
#(备用)停止
# ./be/bin/stop_cn.sh
  • 测试启动是否成功
cat be/log/cn.INFO | grep heartbeat
  • 输出以下内容,表示启动成功
heartbeat has started listening port on 9050.

5)安装MySQL客户端

可忽略,使用 Navicat 替代

FE 服务器:192.168.249.131

  • 创建安装目录
mkdir /opt/mysql
cd /opt/mysql
  • 下载安装软件包
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-community-common-8.0.25-1.el7.x86_64.rpm 
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-community-client-plugins-8.0.25-1.el7.x86_64.rpm 
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-community-libs-8.0.25-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-community-client-8.0.25-1.el7.x86_64.rpm
  • 安装 RPM 软件包
rpm -Uvh *.rpm --nodeps --force

6)集群搭建

  • MySQL 客户端连接(无密码)
mysql -h 192.168.249.131 -P 9030 -uroot -p
  • 新增两个 BE 和 一个 CN

扩容缩容 StarRocks

All commands @ StarRocks Docs

# 备用(删除BE节点):ALTER SYSTEM DROPP BACKEND "192.168.249.132:9050";
ALTER SYSTEM ADD BACKEND "192.168.249.132:9050","192.168.249.133:9050";
# CN 节点(可选)
# 备用(删除CN节点):ALTER SYSTEM DROP COMPUTE NODE "192.168.249.134:9050";
ALTER SYSTEM ADD COMPUTE NODE "192.168.249.134:9050";
  • 修改密码
SET PASSWORD FOR 'root' = PASSWORD('srdb123');
  • 设置数据库时区

设置时区 @ timezone @ StarRocks Docs

# 查询当前时间
select NOW();
# 查询时区
SHOW VARIABLES LIKE '%time_zone%';
# 设置时区
SET global time_zone = 'Asia/Shanghai';
  • 节点状态
# 查询 FE 节点状态
SHOW PROC '/frontends'\G
# 查询 BE 节点状态
SHOW PROC '/backends'\G
# 查询 CN
SHOW PROC '/compute_nodes'\G

7)测试

  • 创建数据库(MySQL 客户端执行)
create database demo;
  • 创建数据表
CREATE TABLE IF NOT EXISTS example_tb
(`user_id` LARGEINT NOT NULL COMMENT "用户id",`date` DATE NOT NULL COMMENT "数据灌入日期时间",`city` VARCHAR(20) COMMENT "用户所在城市",`age` SMALLINT COMMENT "用户年龄",`sex` TINYINT COMMENT "用户性别",`last_visit_date` DATETIME REPLACE DEFAULT "1970-01-01 00:00:00" COMMENT "用户最后一次访问时间",`cost` BIGINT SUM DEFAULT "0" COMMENT "用户总消费",`max_dwell_time` INT MAX DEFAULT "0" COMMENT "用户最大停留时间",`min_dwell_time` INT MIN DEFAULT "99999" COMMENT "用户最小停留时间"
)
AGGREGATE KEY(`user_id`, `date`, `city`, `age`, `sex`)
DISTRIBUTED BY HASH(`user_id`) BUCKETS 1
PROPERTIES (
"replication_num" = "1"
);
  • 输出表结构
desc example_tb;
  • 插入数据
insert into example_tb values
(10000,"2017-10-01","北京",20,0,"2017-10-01 06:00:00",20,10,10),
(10000,"2017-10-01","北京",20,0,"2017-10-01 07:00:00",15,2,2),
(10001,"2017-10-01","北京",30,1,"2017-10-01 17:05:45",2,22,22),
(10002,"2017-10-02","上海",20,1,"2017-10-02 12:59:12",200,5,5),
(10003,"2017-10-02","广州",32,0,"2017-10-02 11:20:00",30,11,11),
(10004,"2017-10-01","深圳",35,0,"2017-10-01 10:00:15",100,3,3),
(10004,"2017-10-03","深圳",35,0,"2017-10-03 10:20:22",11,6,6);
  • 查询数据
SELECT * FROM example_tb;

8)WebUI

  • 浏览器访问:http://192.168.249.131:8030
  • 账号:root
  • 密码:输入客户端修改的密码(srdb123);默认无密码

5.服务自启动

1)配置FE自启动

  • 创建 starrocks-fe.service ,写入内容(根据实际情况修改 ExecStartExecStop
cat > /etc/systemd/system/starrocks-fe.service <<EOF
[Unit]
Description=StarRocks FE
After=network-online.target
Wants=network-online.target[Service]
Type=forking
User=root
Group=root
LimitCORE=infinity
LimitNOFILE=200000
Restart=on-failure
RestartSec=30
StartLimitInterval=120
StartLimitBurst=3
KillMode=none
ExecStart=/opt/starrocks/fe/bin/start_fe.sh --daemon 
ExecStop=/opt/starrocks/fe/bin/stop_fe.sh[Install]
WantedBy=multi-user.target
EOF
  • 查看文件
cat /etc/systemd/system/starrocks-fe.service

2)配置BE自启动

  • 创建 starrocks-be.service ,写入内容(根据实际情况修改 ExecStartExecStop
cat > /etc/systemd/system/starrocks-be.service <<EOF
[Unit]
Description=StarRocks BE
After=network-online.target
Wants=network-online.target[Service]
Type=forking
User=root
Group=root
LimitCORE=infinity
LimitNOFILE=200000
Restart=on-failure
RestartSec=30
StartLimitInterval=120
StartLimitBurst=3
KillMode=none
ExecStart=/opt/starrocks/be/bin/start_be.sh --daemon
ExecStop=/opt/starrocks/be/bin/stop_be.sh[Install]
WantedBy=multi-user.target
EOF
  • 查看文件
cat /etc/systemd/system/starrocks-be.service

3)配置CN自启动

  • 创建 starrocks-cn.service ,写入内容(根据实际情况修改 ExecStartExecStop
cat > /etc/systemd/system/starrocks-cn.service <<EOF
[Unit]
Description=StarRocks CN
After=network-online.target
Wants=network-online.target[Service]
Type=forking
User=root
Group=root
LimitCORE=infinity
LimitNOFILE=200000
Restart=on-failure
RestartSec=30
StartLimitInterval=120
StartLimitBurst=3
KillMode=none
ExecStart=/opt/starrocks/be/bin/start_cn.sh --daemon
ExecStop=/opt/starrocks/be/bin/stop_cn.sh[Install]
WantedBy=multi-user.target
EOF
  • 查看文件
cat /etc/systemd/system/starrocks-cn.service

4)启动服务

  • 重新加载配置
systemctl daemon-reload
  • 启动服务
systemctl start starrocks-fe
systemctl start starrocks-be
systemctl start starrocks-cn
  • 设置开机自启动
systemctl enable starrocks-fe
systemctl enable starrocks-be
systemctl enable starrocks-cn
  • 查询服务状态
systemctl status starrocks-fe
systemctl status starrocks-be
systemctl status starrocks-cn

相关文章:

CentOS7安装部署StarRocks

文章目录 CentOS7安装部署StarRocks一、前言1.简介2.环境 二、正文1.StarRocks基础1&#xff09;架构图2&#xff09;通讯端口 2.部署服务器3.安装基础环境1&#xff09;安装JDK 112&#xff09;修改机器名3&#xff09;安装GCC4&#xff09;关闭交换分区&#xff08;swap&…...

树形Dp 2925. 在树上执行操作以后得到的最大分数

2925. 在树上执行操作以后得到的最大分数 两次DFS class Solution { public:// 节点状态有两种&#xff0c;选和不选&#xff0c;// dp(u, fa, 0) 不选u 节点&#xff0c;其他节点都可以选&#xff0c;值为以u为根的子树的所有节点的和- 根节点的值。// dp(u, fa, 1) 选u节点&…...

选择企业云盘?品牌推荐和评价解析

企业云盘是如今热门的企业协作工具&#xff0c;为企业提供了文件存储、文件共享服务。市面上的企业云盘千千万&#xff0c;到底哪个企业云盘好用&#xff1f;哪些品牌值得信赖呢&#xff1f; 好用的企业云盘&#xff0c;不能不提&#xff0c;Zoho Workdrive企业云盘为企业提供…...

redis: 记录一次线上redis内存占用过大问题解决过程

引言 记录一次线上redis占用过大的排查过程&#xff0c;供后续参考 问题背景 测试同事突然反馈测试环境的web系统无法登陆&#xff0c;同时发现其他子系统也存在各类使用问题 排查过程 1、因为首先反馈的是测试环境系统无法登陆&#xff0c;于是首先去查看了登陆功能的报错…...

数据资产、数字资产、数据资源及数据资产入表

数据要素 《中共中央关于坚持和完善中国特色社会主义制度推进国家治理体系和治理能力现代化若干重大的决议》&#xff08;2019&#xff09; 首次将数据列为生产要素 《关于构建更加完善的要素市场化配置体制机制的意见》&#xff08;2020.3&#xff09; 数据成为土地、劳动力、…...

Docker之Centos安装

介绍 Docker官方建议在Ubuntu中安装&#xff0c;因为Docker是基于Ubuntu发布的&#xff0c; 而且一般Docker出现的问题Ubuntu是最先更新或者打补丁的。 在很多版本的CentOS中是不支持更新最新的一些补丁包的。由于我们学习的环境都使用的是CentOS&#xff0c;因此这里我们将Do…...

SQL注入漏洞:CMS布尔盲注python脚本编写

SQL注入漏洞:CMS布尔盲注python脚本编写 文章目录 SQL注入漏洞:CMS布尔盲注python脚本编写库名爆破爆破表名用户名密码爆破 库名爆破 import requests #库名 database"" x0 while requests.get(urlf"http://10.9.47.77/cms/show.php?id33%20and%20length(data…...

security

Java Security 是一个用于在 Java 平台上提供安全性的框架。下面是 Java Security 的一些主要知识点&#xff1a; 1. 加密和解密&#xff1a;Java Security 提供了一组加密和解密 API&#xff0c;可以实现各种加密标准&#xff0c;如 AES、DES、RSA 等。 2. 数字签名&#xf…...

了解web3,什么是web3

Web3是指下一代互联网&#xff0c;它基于区块链技术&#xff0c;将各种在线活动更加安全、透明和去中心化。Web3是一个广义的概念&#xff0c;它包括了很多方面&#xff0c;如数字货币、去中心化应用、智能合约等等。听不懂且大多数人听到这个东西&#xff0c;直觉感觉就像骗子…...

Harbor企业级Registry基础镜像仓库的详细安装使用教程(保姆级)

Harbor Docker 官方提供的私有仓库 registry&#xff0c;用起来虽然简单 &#xff0c;但在管理的功能上存在不足。 Harbor是vmware一个用于存储和分发Docker镜像的企业级Registry服务器&#xff0c;harbor使用的是官方的docker registry(v2命名是distribution)服务去完成。 ha…...

Linux系统下数据同步服务RSYNC

一、RSYNC概述 1、什么是rsync rsync的好姐妹 sync 同步&#xff1a;刷新文件系统缓存&#xff0c;强制将修改过的数据块写入磁盘&#xff0c;并且更新超级块。 async 异步&#xff1a;将数据先放到缓冲区&#xff0c;再周期性&#xff08;一般是30s&#xff09;的去同步到磁…...

Docker介绍及其常用命令

Docker是一种容器化技术&#xff0c;可以打包应用程序及其依赖项&#xff0c;并将其作为独立的进程运行。它实现了操作系统级别的虚拟化&#xff0c;允许不同容器之间相互隔离&#xff0c;同时提高了应用程序的可移植性和安全性。Docker可以快速部署和扩展应用程序&#xff0c;…...

SwissArmyTransformer瑞士军刀工具箱使用手册

Introduction sat&#xff08;SwissArmyTransformer&#xff09;是一个灵活而强大的库&#xff0c;用于开发您自己的Transformer变体。 sat是以“瑞士军刀”命名的&#xff0c;这意味着所有型号&#xff08;例如BERT、GPT、T5、GLM、CogView、ViT…&#xff09;共享相同的backo…...

unity【动画】脚本_角色动画控制器 c#

首先创建一个代码文件夹Scripts 从人物角色Player的基类开始 创建IPlayer类 首先我们考虑到如果不挂载MonoBehaviour需要将角色设置成预制体实例化到场景上十分麻烦&#xff0c; 所以我们采用继承MonoBehaviour类的角色基类方法写代码 也就是说这个脚本直接绑定在角色物体…...

Java代码如何对Excel文件进行zip压缩

1&#xff1a;新建 ZipUtils 工具类 package com.ly.cloud.datacollection.util;import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.net.URLEncoder; import ja…...

改进YOLO系列:12.Repulsion损失函数【遮挡】

1. RepLoss论文 物体遮挡问题可以分为类内遮挡和类间遮挡两种情况。类间遮挡产生于扎堆的同类物体,也被称为密集遮挡(crowd occlusion)。Repulsion损失函数由三个部分构成,yolov5样本匹配,得到的目标框和预测框-一对应第一部分主要作用:预测目标框吸引IOU最大的真实目标框,…...

win11网络连接正常,但是无法正常上网

前言&#xff1a; 这个是一个win11的bug&#xff0c;好多人都遇到了&#xff0c;在孜孜不倦的百度下&#xff0c;毫无收获&#xff0c;终于是在抖音上看到有人分享的经验而解决了这个问题。 找到internet选项&#xff0c;然后点击打开 选择连接 将代理服务器中&#xff0c;为…...

硬科技企业社区“曲率引擎”品牌正式发布

“曲率引擎”&#xff0c;是科幻作品中最硬核的加速系统&#xff0c;通过改变时空的曲率&#xff0c;可实现光速飞行甚至能够超越光速。11月3日&#xff0c;“曲率引擎&#xff08;warp drive&#xff09;”作为硬科技企业社区品牌&#xff0c;在2023全球硬科技创新大会上正式对…...

少儿编程 2023年9月中国电子学会图形化编程等级考试Scratch编程三级真题解析(判断题)

2023年9月scratch编程等级考试三级真题 判断题(共10题,每题2分,共20分) 19、运行程序后,“我的变量”的值为25 答案:对 考点分析:考查积木综合使用,重点考查变量和运算积木的使用 开始我的变量为50,执行完第二行代码我的变量变为49,条件不成立执行否则语句,所以…...

MCU常见通信总线串讲(二)—— RS232和RS485

&#x1f64c;秋名山码民的主页 &#x1f602;oi退役选手&#xff0c;Java、大数据、单片机、IoT均有所涉猎&#xff0c;热爱技术&#xff0c;技术无罪 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; 获取源码&#xff0c;添加WX 目录 前言一…...

[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解

突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 ​安全措施依赖问题​ GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...