运维各种中间件的手动安装(非常详细)
压缩文件夹
tar -zcvf newFolder.tar.gz oldFolder
把oldFolder文件夹压缩成newFolder.tar.gz
解压文件夹
tar -zxvf 压缩文件名.tar.gz
linux安装jdk
(参考 https://blog.csdn.net/qq_42269466/article/details/124079963 )
1、创建目录存放jdk包
mkdir /usr/local/soft
2、创建目录安装jdk
mkdir /usr/local/java
3、解压jdk到指定目录
tar -zxvf /usr/local/soft/jdk-xx-linux-xx.tar.gz -C /usr/local/java/
4、配置环境变量
vi /etc/profile
添加如下配置
#jdk安装目录(需要自己去看具体目录文件名)
export JAVA_HOME=/usr/local/java/jdk1.8.0_181
#jre安装目录
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/bin
5、让配置生效
source /etc/profile
6、测试是否安装成功
java -version
linux安装mysql8.0.
( https://blog.csdn.net/ShockChen7/article/details/126965940 )
注意:
tar -xvf 可以解压tar.xz后缀的压缩文件
tar -zxvf 可以解压tar.gz后缀的压缩文件
(以下以mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz为例)
1、解压:
tar -zxvf mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz
2、重命名
mv mysql-8.0.32-linux-glibc2.17-aarch64 mysql-8.0.32
3、创建data文件夹 储存文件
cd mysql-8.0.32
mkdir data
4、创建用户组和用户
groupadd mysql
useradd -g mysql mysql
5、授权用户
chown -R mysql.mysql /usr/local/soft/mysql-8.0.32
6、mysql初始化(注意这里会生成密码,记得保存)
cd bin
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0.32 --datadir=/usr/local/mysql-8.0.32/data/ --initialize
(注:如果报错./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
-bash: ./mysqld:: 没有那个文件或目录
则执行: yum install -y libaio
参考:https://blog.csdn.net/ycsdn10/article/details/121934412
)
然后再执行一次初始化
7、编辑my.cnf
vim /etc/my.cnf
=下面是修改后的
[[mysqld]
#datadir=/var/lib/mysql 【修改点】
datadir=/usr/local/mysql-8.0.19/data
#【修改点】
basedir=/usr/local/mysql-8.0.19
【修改点】
#socket=/var/lib/mysql/mysql.sock
socket=/tmp/mysql.sock]()Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0Settings user and group are ignored when systemd is used.If you need to run mysqld under a different user or group,customize your systemd unit file for mariadb according to theinstructions in http://fedoraproject.org/wiki/Systemd【修改点】
#[mysqld_safe]
【修改点】
#log-error=/var/log/mariadb/mariadb.log
【修改点】
#pid-file=/var/run/mariadb/mariadb.pid#include all files from the config directory#
!includedir /etc/my.cnf.d
=end
8、添加mysqld服务
返回mysql-8.0目录下,添加mysqld服务到系统
cp -a ./support-files/mysql.server /etc/init.d/mysql
9.授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
10.启动mysql
service mysql start
11.查看启动状态
service mysql status
12.将mysql命令添加到服务
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin
13.登录
mysql -uroot -p
14.修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
15.修改远程连接并生效
use mysql;
update user set host='%' where user='root';
flush privileges;
16.开放防火墙3306端口
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload
查看防火墙端口开放状态(看3306是否开启了)
firewall-cmd --list-all
mysql忘记密码
1.先杀死进程
lsof -i:3306
kill -9 pid
2.修改配置
vim /etc/my.cnf
添加以下配置
skip-grant-tables
3、重启服务器(到mysql的安装目录下)
bin/mysqld_safe --user=mysql &
4.修改密码(注意,不同版本修改密码方式不一样,这是8.0.*版本的)
ALTER USER 'root'@'%' IDENTIFIED BY 'root';
5.生效
flush privileges;
6.重新登录
bin/mysql -u root -p
7.把步骤2的skip-grant-tables注释掉,然后重启服务器
8.重启服务器
service mysql resart
redis安装
离线安装
指定运行conf文件
./redis-server redis/redis.conf
注意:要让外网连接到,redis.conf需要做以下改动
1、bind 127.0.0.1 改为bind 0.0.0.0
2、将 protected-mode yes 改为 protected-mode no
3、设置redis秘密,requirepass 123456
验证别的电脑是否连通
telnet ip port
docker安装
-
拉取镜像
docker pull redis -
创建挂载目录
mkdir -p /home/docker-redis/conf mkdir -p /home/docker-redis/data -
复制对应版本的redis.conf 到 /home/docker-redis/conf/目录下面
注意: 修改点1:bind 0.0.0.0 修改点2:protected-mode no -
运行
docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/docker-redis/conf/redis.conf:/etc/redis/redis.conf -v /home/docker-redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456注意:--requirepass 123456 表示密码为123456
服务时间不一致解决
参考地址:https://blog.csdn.net/u013810234/article/details/120341377
(centos ntp时间同步)
sudo yum install ntp -y完成安装之后,您需要编辑NTP服务器配置文件/etc/ntp.conf,执行以下命令:
sudo vim /etc/ntp.conf
在文件底部添加类似以下内容:
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
保存并关闭文件。
接下来,您需要启动NTP服务。执行以下命令:
sudo systemctl start ntpd
您还可以设置NTP服务在服务器启动时自动启动:
sudo systemctl enable ntpd
这样,您就可以通过NTP协议进行时间同步了。然后重启服务器(代码)
activemq安装
离线安装
https://activemq.apache.org/activemq-5014003-release
1、解压
tar -zxvf apache-activemq-5.14.3-bin.tar.gz
2、重命名
mv apache-activemq-5.14.3 activemq-5.14.3
3、到解压的目录/bin下
cd activemq-5.14.3/bin
4、启动,并指向日志
./activemq start > /soft/activemq-5.14.3/activemq.log
5、开启61616端口防火墙、开启8161防火墙(阿里云也需要手动开启相应的端口)
6、访问:http://ip:8161/ 默认用户和密码:admin/admin
安装Apache ActiveMQ 5.15.16
1、解压后,来到bin目录下
vim activemq
2、配置java目录(查看java环境:vim /etc/profile 或者 echo $JAVA_HOME)
在activemq里面新增下面两行
JAVA_HOME="/usr/local/jdk1.8.0_341"
JAVA_CMD="/usr/local/jdk1.8.0_341/bin"
3、启动
sh activemq start
4、修改用户名和密码(默认admin/admin)
到config目录下
vim jetty-realm.properties
admin: TX2023666888@EQ#ls3@Te, admin (解读:用户名:admin,密码:TX2023666888@EQ#ls3@Te,角色:admin)
保存后重新启动
docker构建activemq
参考
https://blog.csdn.net/Max_bin/article/details/108453252
https://www.cnblogs.com/shanfeng1000/p/16261005.html
- 把需要的文件都放到一个目录下
apache-activemq-5.15.16-bin.tar.gz
jdk-8u351-linux-x64.tar.gz
- 在改目录下创建Dockerfile文件,文件内容如下
FROM centos:latest
ADD apache-activemq-5.15.16-bin.tar.gz /usr/local/
ADD jdk-8u351-linux-x64.tar.gz /usr/local/
WORKDIR /usr/local
ENV LANG C.UTF-8
ENV TZ=Asia/Shanghai
ENV JAVA_HOME=/usr/local/jdk1.8.0_351
ENV ACTIVEMQ_HOME /usr/local/apache-activemq-5.15.16
ENV PATH=$JAVA_HOME/bin:$PATH:$ACTIVEMQ_HOME/bin
ENV export JAVA_HOME PATH
RUN source /etc/profile
EXPOSE 61616 8161
CMD sh /usr/local/apache-activemq-5.15.16/bin/activemq start && /bin/bash
对以上文件进行解释:
(1)ADD apache-activemq-5.15.16-bin.tar.gz /usr/local/ 把目录下的apache-activemq-5.15.16-bin.tar.gz添加到容器目录/usr/local/中(虚拟路径,无需手动创建,注意:该命令有拷贝且解压作用,无需后续手动解压!!!)
(2)ADD jdk-8u351-linux-x64.tar.gz /usr/local/跟(1)一样
(3) ENV LANG C.UTF-8 设置语言
(4) ENV TZ=Asia/Shanghai #指定容器内时间
-
生成镜像
docker build -t future/activemq:v1 . -
运行
docker run --name='activemq' -it -p 8161:8161 --rm future/activemq:v1
minio安装
1、拉取镜像
docker pull minio/minio:RELEASE.2023-01-18T04-36-38Z
2、运行
docker run
-d --name minio
-v /docker/minio/data:/data
-v /etc/localtime:/etc/localtime
-e “MINIO_ROOT_USER=minio”
-e “MINIO_ROOT_PASSWORD=minio123456”
-p 9000:9000 -p 19000:9090
minio/minio:RELEASE.2023-01-18T04-36-38Z server /data --console-address “:9090”
3、登录
http://ip:19000/
用户:minio
密码:minio123456
https://blog.csdn.net/l848168/article/details/131458698
Ngix安装
查看版本
方法一
strings sbin/nginx |grep "nginx version"
方法二
nginx -V
离线安装
安装步骤
1、解压
tar -zxvf nginx-1.25.2.tar.gz
(参考:https://blog.csdn.net/baidu_38300480/article/details/122292382 )
如果报如下错误
checking for getaddrinfo() ... found
checking for PCRE2 library ... not found
checking for PCRE library ... found
checking for PCRE JIT support ... found
checking for zlib library ... not found./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.
方法1:重启Linxu
方法2:执行
# yum -y install gcc gcc-c++ autoconf automake make
# yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
docker安装nginx
https://blog.csdn.net/u010148813/article/details/126172372
-
拉去镜像
docker pull nginx:1.22.0 -
下载完成后检查镜像
docker images -
创建挂载目录
mkdir /home/docker-nginx -
从容器中复制挂载的文件
先简单创建容器运行,从容器里面复制要挂载的文件到宿主机上。
创建并运行容器,容器命名为nginx docker run --name nginx -p 80:80 -d nginx:1.22.0 -
从容器中复制文件到宿主机
docker cp nginx:/etc/nginx/nginx.conf /home/docker-nginx/ docker cp nginx:/etc/nginx/conf.d/ /home/docker-nginx/conf/ docker cp nginx:/usr/share/nginx/html/ /home/docker-nginx/html/ docker cp nginx:/var/log/nginx/ /home/docker-nginx/logs/ -
停止、删除容器
docker stop nginx docker rm nginx -
创建并运行容器
docker run -p 80:80 \ -v /home/docker-nginx/nginx.conf:/etc/nginx/nginx.conf \ -v /home/docker-nginx/logs:/var/log/nginx \ -v /home/docker-nginx/html:/usr/share/nginx/html \ -v /home/docker-nginx/conf:/etc/nginx/conf.d \ -v /etc/localtime:/etc/localtime \ --name nginx \ --restart=always \ -d nginx:1.22.0参数说明: -p 映射端口,格式为“宿主机端口:容器端口” -v 挂载文件 -e TZ=Asia/Shanghai 设置时区 --privileged=true 让容器中的root用户拥有真正的root权限 --name 容器名字,以后可以使用这个名字启动或者停止容器 --restart=always docker启动时自动启动容器 -d 指定要启动的镜像名 -
访问:ip:80
influxdb安装
https://blog.csdn.net/weixin_67510312/article/details/129954375
docker安装
参考:https://blog.csdn.net/u011397981/article/details/130616038
-
step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 -
Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -
Step 3: 更新yum索引列表并安装Docker引擎
sudo yum makecache fast -
yum索引列表没有更新可以直接使用yum makecache
sudo yum install docker-ce -
Step 4: 开启Docker服务
sudo service docker start -
测试是否安装成功
docker version
xxl-job安装
1、docker pull xuxueli/xxl-job-admin:2.4.0
新建xxl-job的库, 执行xxl-job的脚本
服务器新建/usr/local/xxl-job文件夹, 并把application.properties配置文件放进去, 修改数据库地址
执行docker启动命令并制定端口
docker run -v /usr/local/xxl-job/application.properties:/application.properties -e PARAMS=“–spring.config.location=/application.properties” -p 18080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.1
注意:需要开启18080端口
nacos持久化(docker)
参考
https://blog.csdn.net/studio_1/article/details/132160081docker cp nico-nacos:/home/nacos/conf/ /home/docker/nacos
docker cp nico-nacos:/home/nacos/logs/ /home/docker/nacos
docker cp nico-nacos:/home/nacos/data/ /home/docker/nacos
docker 安装zk和kafka
https://blog.csdn.net/yuanjinshenglife/article/details/129472354
安装zookeeper
静态文件安装
- 解压到指定目录(解压到 /usr)
tar -zxf zookeeper-3.4.6.tar.gz -C /usr/
-
来到指定/usr目录
cd zookeeper-3.4.6/ -
拷贝zoo_sample.cfg一份为zoo.cfg
cp conf/zoo_sample.cfg conf/zoo.cfg -
修改zoo.cfg
vim conf/zoo.cfg 修改 dataDir=/root/zkdata -
创建dataDir指定的目录
mkdir /root/zkdata -
到zookeeper解压目录,启动
./bin/zkServer.sh start conf/zoo.cfg -
检查是否启动成功
方式1 jps 展示如下信息: 38961 QuorumPeerMain 38997 Jps 方式2 ./bin/zkServer.sh status conf/zoo.cfg 展示如下信息 JMX enabled by default Using config: conf/zoo.cfg Mode: standalone注意:3.5.*以上的版本安装可能报错,可能原因是缺少jar,需要特别注意
安装kafka
静态文件安装(单机)
-
解压到指定目录(解压到 /usr)
tar -zxf kafka_2.11-2.2.0.tgz -C /usr/ -
到指定的解压目录下
cd /usr/kafka_2.11-2.2.0/ -
配置主机名
-
查看是否配置了HOSTNAME
vim /etc/sysconfig/network -
没有就新增
HOSTNAME=主机名 如下是配置主机名为:CentOSHOSTNAME=CentOS 那么CentOS就是主机该linux的主机名 需要重启才能生效!!!!!!!!!!!!!!!!!!! -
重启生效
reboot -
查看本机地址
ifconfig我的ip地址 172.28.204.91 -
构建主机名和ip的映射文件
vim /etc/hosts 配置信息如下 172.28.204.91 CentOS -
检查是否配置成功
ping CentOS
-
-
修改文件server.properties
vim config/server.properties修改点1 把注释放开 #listeners=PLAINTEXT://:9092 改成(CentOS是上面配置的) listeners=PLAINTEXT://CentOS:9092修改点2 zookeeper.connect=localhost:2181 改成(CentOS是上面配置的) zookeeper.connect=CentOS:2181修改点3(保证能对该目录进行读写) log.dirs=/usr/kafka-logs修改点4 新增 advertised.listeners=PLAINTEXT://CentOS:9092 (默认这个key所在行是注释掉的,正是因为没这个,导致创建topic时总是报错 如果是阿里云,想让外网能访问,需要替换CentOS为相应的外网ip !!!!!!!!! No entry found for connection 1006) -
启动(后台启动方式,需要先启动zk)
./bin/kafka-server-start.sh -daemon config/server.properties -
查看是否启动成功
jps 如下:说明成了jps 6560 Kafka -
关闭
./kafka-server-stop.sh -
创建topic
./bin/kafka-topics.sh --bootstrap-server CentOS:9092 --create --topic topic01 --partitions 1 --replication-factor 1 -
消费者
./bin/kafka-console-consumer.sh --bootstrap-server CentOS:9092 --topic cmd_ywzn --group group1 -
生产消息
./bin/kafka-console-producer.sh --broker-list CentOS:9092 --topic cmd_ywzn
kafka图形化界面
参考 https://gitee.com/dushixiang/kafka-mapdocker run -d \-p 9981:8080 \-e DEFAULT_USERNAME=admin \-e DEFAULT_PASSWORD=admin \--name kafka-map \--restart always dushixiang/kafka-map:latest
activemq
- 部署方式:docker部署
docker pull webcenter/activemq:5.14.3docker run --name='activemq-dev' \-itd \-p 11494:8161 \-p 58283:61616 \-e ACTIVEMQ_ADMIN_LOGIN=admin \-e ACTIVEMQ_ADMIN_PASSWORD=123456 \--restart=always \-v /docker/activemq-dev:/data/activemq \-v /docker/activemq-dev/log:/var/log/activemq \-v /etc/localtime:/etc/localtime \webcenter/activemq:5.14.3
如果还嫌弃麻烦,这里我准备了一键安装脚本
相关文章:
运维各种中间件的手动安装(非常详细)
压缩文件夹 tar -zcvf newFolder.tar.gz oldFolder 把oldFolder文件夹压缩成newFolder.tar.gz解压文件夹 tar -zxvf 压缩文件名.tar.gzlinux安装jdk (参考 https://blog.csdn.net/qq_42269466/article/details/124079963 ) 1、创建目录存放jdk包 mkd…...
【Android】Android应用性能优化总结
AndroidApp应用性能优化总结 最近大半年的时间里,大部分投在了某国内新能源汽车的某款AndroidApp开发上。 由于该App是该款车上,常用重点应用。所以车厂对应用性能的要求比较高。 主要包括: 应用冷启动达到***ms。应用热(温)启动达到***ms应…...
FBA头程海运发货流程是怎样的?
FBA头程发货作为整个FBA流程的关键一环,更是直接影响到商品从起点到终点的流通效率和成本。其中,海运作为一种经济、稳定的运输方式,在FBA头程发货中扮演着举足轻重的角色。那么,FBA头程海运发货流程究竟是怎样的呢? 1、装箱与发…...
二、VLAN原理和配置
vlan不是协议,是一个技术,虚拟局域网技术,基于802.1q协议。 vlan(虚拟局域网),将一个物理的局域网在逻辑上划分成多个广播域的技术。 目录 1.冲突域和广播域 概念 范围 2.以太网帧格式 3.以太网帧封装…...
stackqueue类——适配器模式 双端队列deque(C++)
接下来我们将实现 stack、queue 类的常用函数,其实对于 stack 和 queue 的常用函数实现可以说得上是非常简单,若想详细了解可以看这篇:栈和队列&循环队列(C/C)_栈和循环队列-CSDN博客;在本篇中我们将使…...
SpringCloud知识点梳理
1. Spring Cloud 综述 1.1 Spring Cloud 是什么 [百度百科]Spring Cloud是⼀系列框架的有序集合。它利⽤Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中⼼、消息总线、负载均衡、断路器、数据监控等,都可以⽤ Spring Boot的开发⻛格…...
【NOI】C++程序结构入门之分支结构二
文章目录 前言一、逻辑运算符1.导入2.逻辑与(&&)3.逻辑或(||)4.逻辑非(!) 二、例题讲解问题:1656. 是两位的偶数吗问题:1658. 游乐设施问题:1659. 是否含有数字5…...
web自动化系列-使用普通模式编写测试用例以及存在问题(十六)
前面已经把selenium的主要操作介绍完毕 ,接下来我们通过编写几条测试用例感受下selenium的用法 。 1.用例需求 还是以登录为例 ,需要实现的测试用例为 : case1:输入正确的用户名和密码进行登录case2 : 输入正确的用户名和错误的…...
VSCode 配置 Qt 开发环境
文章目录 1. 环境说明2. 配置系统环境变量 1. 环境说明 操作系统:Windows 11VSCode版本:1.88.1CMake版本:3.27.7Qt6版本:6.7.0(MinGW 11.2.0 64-bit) 2. 配置系统环境变量 自行根据自己的Qt安装路径配置 配置 MinGW 和 CMake C…...
【Jenkins】持续集成与交付 (七):Gitlab添加组、创建用户、创建项目和源码上传到Gitlab仓库
🟣【Jenkins】持续集成与交付 (七):Gitlab添加组、创建用户、创建项目和源码上传到Gitlab仓库 1、创建组2、创建用户3、将用户添加到组中4、在用户组中创建项目5、源码上传到Gitlab仓库5.1 初始化版本控制5.2 将文件添加到暂存区5.3 提交代码到本地仓库5.4 推送代码到 Git…...
L1-017 到底有多二
一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字-13142223336是个11位数,其中有3个2,并且是负数,也是偶数&…...
常用语音识别开源四大工具:Kaldi,PaddleSpeech,WeNet,EspNet
无论是基于成本效益还是社区支持,我都坚决认为开源才是推动一切应用的动力源泉。下面推荐语音识别开源工具:Kaldi,Paddle,WeNet,EspNet。 1、最成熟的Kaldi 一个广受欢迎的开源语音识别工具,由Daniel Pove…...
python笔记 | 哥德巴赫猜想
哥德巴赫猜想:每个不小于6的偶数都可以表示成两个素数之和。 素数:只能被1和自身整除的正整数。就是大于1且除了1和它本身之外没有其他因数的数。例如,2、3、5、7、11等都是素数,而4、6、8、9等则不是素数。 下面这段Python代码…...
IO基础-IO多路复用基础
Java的Selector封装了底层epoll和poll的API,可以通过指定如下参数来调用执行的内核调用, 在Linux平台,如果指定 -Djava.nio.channels.spi.SelectorProvidersun.nio.ch.PollSelectorProvider 则底层调用poll, -Djava.nio.channels.spi.Selec…...
Python机器学习项目开发实战:如何进行人脸识别
注意:本文的下载教程,与以下文章的思路有相同点,也有不同点,最终目标只是让读者从多维度去熟练掌握本知识点。 下载教程: Python机器学习项目开发实战_人脸识别_编程案例解析实例详解课程教程.pdf 人脸识别是一个复杂但…...
管理能力学习笔记五:识别团队角色,因才施用
识别团队角色,因才施用,需要做到以下三点 扬长避短 管理者要学会问自己员工能把什么做好,而不是想方设法改造他们的短处 。 – 彼得德鲁克 人岗匹配 将合适的人放在合适的位置 人才多样化 团队需要各式各样的人才,才能高效配合…...
Real3DPortrait照片对口型,数字人,音频/视频驱动数字人
先看效果 上传一张图片和一段音频,照片如下: 合成后效果如下: 照片对口型-音频驱动 支持音频驱动和视频驱动,视频可以使照片有参照视频中的口型和和动作。 项目地址 https://github.com/yerfor/Real3DPortrait 我的环境 win…...
Stable Diffusion之Ubuntu下部署
1、安装conda环境 conda create -n webui python3.10.6 2、激活环境 每次使用都要激活 conda activate webui 注意开始位置的变换 关闭环境 conda deactivate webui 3、离线下载SD 代码 https://github.com/AUTOMATIC1111/stable-diffusion-webui https://github.com/Stabilit…...
LeetCode-15-三数之和问题
题目说明 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a b c 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 给定数组 nums [-1, 0,…...
springboot2集成东方通tongweb嵌入式版
由于最近项目需要国产化信创改造,引入东方通tongweb 联系东方通厂家 ,将依赖导入到maven仓库,并获取嵌入式版license文件修改pom.xml,引入依赖,注意springboot版本,这里以springboot2举例 首先移除springb…...
2024年App上架全攻略:从软著申请到应用市场发布
1. 2024年App上架必备条件全解析 想在2024年把App成功上架到各大应用市场,开发者需要跨过几道硬性门槛。最近帮几个创业团队走完上架流程,发现很多新手容易在这些基础环节卡壳。先说最重要的三件套:软件著作权证书、App备案号、应用市场要求的…...
iBeebo:5个理由让你选择这款纯净高效的第三方微博客户端
iBeebo:5个理由让你选择这款纯净高效的第三方微博客户端 【免费下载链接】iBeebo 第三方新浪微博客户端 项目地址: https://gitcode.com/gh_mirrors/ib/iBeebo 在信息过载的数字时代,官方微博客户端日益臃肿的界面设计、无处不在的广告推送和复杂…...
手把手拆解:一个QKD系统中的‘诱骗态’光源硬件是怎么搭出来的?
手把手拆解:一个QKD系统中的‘诱骗态’光源硬件是怎么搭出来的? 量子密钥分发(QKD)技术近年来从实验室走向商业化应用,其中诱骗态光源的设计与实现成为工程落地的核心挑战之一。不同于理论论文中简化的模型,…...
Python多线程真能并行了吗?(GIL绕过技术全图谱:subprocess/numba/multiprocessing/cython/rustpy)
第一章:Python无锁GIL环境下的并发模型面试题汇总Python 的全局解释器锁(GIL)长期被视为多线程并发的瓶颈,但近年来随着 CPython 3.13 引入实验性无锁 GIL(--without-pymalloc 配合 --with-per-object-gil 原型&#x…...
Souliss嵌入式状态同步框架:轻量级去中心化智能家居通信实践
1. Souliss 智能家居网络框架深度解析:面向嵌入式工程师的底层通信架构实践指南Souliss 是一个专为资源受限嵌入式节点设计的轻量级、去中心化智能家居网络框架。其核心目标并非构建通用物联网平台,而是解决真实家庭场景中多协议共存、低功耗节点协同、边…...
jcifs-ng:Java SMB客户端库如何简化企业文件共享?
jcifs-ng:Java SMB客户端库如何简化企业文件共享? 【免费下载链接】jcifs-ng A cleaned-up and improved version of the jCIFS library 项目地址: https://gitcode.com/gh_mirrors/jc/jcifs-ng jcifs-ng是一个经过清理和改进的jCIFS库版本&#…...
避坑指南:C# ComboBox那些容易踩的坑(SelectedIndexChanged的诡异事件)
C# ComboBox开发避坑实战:SelectedIndexChanged的7个隐秘陷阱与解决方案 下拉框控件ComboBox看似简单,却暗藏诸多让开发者抓狂的"坑"。我曾在一个仓储管理系统中,因为ComboBox的异常行为连续加班三晚——数据绑定时的SelectedInde…...
Qt实战:用QTreeWidget打造班级管理系统(含右键菜单完整源码)
Qt实战:用QTreeWidget构建高交互班级管理系统 在Qt框架中,QTreeWidget作为展示层级数据的利器,特别适合教育管理系统的开发需求。不同于简单的列表控件,树形结构能直观呈现班级、年级、学生等多级关系,配合右键菜单可实…...
1Panel v2.0.5及以下版本紧急加固指南:除了升级,这3个临时措施也能防住RCE
1Panel高危漏洞应急防护实战:3种临时方案守护服务器安全 当安全警报拉响时,运维团队往往面临两难选择:立即升级可能影响业务连续性,不升级则暴露在严重威胁之下。针对近期曝光的1Panel远程代码执行漏洞(CVE-2025-54424…...
5个高效能技巧:人工智能术语库全场景应用从入门到精通
5个高效能技巧:人工智能术语库全场景应用从入门到精通 【免费下载链接】Artificial-Intelligence-Terminology-Database 这个仓库包含一个关于人工智能术语的数据库。适合AI研究者、学生以及希望了解AI专业术语的人士。特点是包含大量AI相关词汇,有助于理…...
