Unbutu系统-Docker安装、JDK环境配置,Docker常用指令、Docker安装MySQL、Redis、Tomcat、Nginx,前端后分离项目部署
目录
1、防火墙
1.1、查看防火墙状态
1.2、开启防火墙
1.3、关闭防火墙
1.4、重启防火墙
1.5、查看防火墙版本
2、安装JDK
2.1、官网下载tar包
2.3、解压tar.gz文件
2.4、配置环境变量
2.4.1、查看安装路径
2.4.2、设置环境变量
2.4.3、执行该让环境变量生效
2.4.4、查看JDK版本
3、Docker
3.1、安装Docker
3.1.1、卸载旧版本
3.1.2、获取软件最新源
3.1.3、安装apt依赖包
3.1.4、安装GPG证书
3.1.5、验证
3.1.6、设置稳定版仓库
3.2、安装 Docker Engine-Community
3.2.1、更新apt包索引
3.2.2、安装最新版本
3.2.3、安装特定版本
3.3、启动和停止
3.3.1、启动docker
3.3.2、停止docker
3.3.3、重启docker
3.4、Docker镜像操作
3.4.1、列出镜像
3.4.2、搜索镜像
3.4.4、拉去镜像
3.4.5、删除镜像
3.5、Docker操作容器
3.5.1、创建容器
3.5.2、交互式容器
3.5.3、守护式容器
3.5.4、进入已运行的容器
3.5.5、查看容器
3.5.6、停止与启动容器停止一个已经在运行的容器
3.5.7、启动一个已经停止的容器
3.5.8、kill掉一个已经在运行的容器
3.5.9、删除容器
3.6、Docker安装MySQL容器
3.6.1、下载MySQL镜像
3.6.2、创建MySQL容器并运行
3.6.3、查看MySQL是否运行
3.6.4、通过Docker命令进入MySQL容器内部
3.6.5、链接mysql
3.6.6、切换用户表
3.6.7、修改密码
3.6.8、开启远程访问
3.6.9、刷新
3.7、Docker安装Redis
3.7.1、下载Redis镜像
3.7.2、创建Redis配置文件
3.7.3、创建Redis容器并运行
3.7.4、查看Redis是否运行
3.7.5、通过Docker命令进入Redis容器内部
3.8、Docker安装Tomcat
3.8.1、下载Tomcat镜像
3.8.2、创建tomcat配置文件目录
3.8.3、创建Tomcat容器并运行
3.8.4、查看Tomcat是否运行
3.8.5、通过Docker命令进入Tomcat容器内部
3.8.6、查看主机本机数据是否被挂载
3.8.7、修改tomcat的server.xml配置文件
3.9、Docker安装Nginx
3.9.1、下载Nginx镜像
3.9.2、创建目录并且赋予权限
3.9.3、创建Redis容器并运行(不做挂载)
3.9.4、拷贝nginx配置文件到主机
3.9.5、删除没有做数据挂载的nginx容器
3.9.6、创建nginx容器、运行并做数据挂载
3.9.7、通过Docker命令进入Nginx容器内部
3.9.8、查看主机数据是否被挂载
3.9.9、Nginx配置文件基本配置
3.10、前后端分离项目部署(Ruoyi框架)
3.10.1、后端SpringBoot打包成jar包
3.10.2、前端vue项目打成dist文件
3.10.3、项目上传
3.10.4、运行项目
3.10.5、配置前端Nginx
3.10.6、前后端项目整体运行效果
1、防火墙
1.1、查看防火墙状态
sudo ufw status
注:如果没有安装防火墙可以使用命令安装
sudo sudo apt-get install ufw
1.2、开启防火墙
sudo ufw enable
注:启动防火墙时,服务器会提示:Command may disrupt existing ssh connections.Proceed with operation (y|n)?
意思就是,命令有可能会中断本次ssh的连接,是否继续。
选择:y,会提示防火墙已打开。
1.3、关闭防火墙
sudo ufw disable
1.4、重启防火墙
重启防火墙,添加规则以后需要使用该命令进行重启防火墙,比如设置对外开放的端口号等。
sudo ufw reload
1.5、查看防火墙版本
sudo ufw version
2、安装JDK
2.1、官网下载tar包
官网地址:Java Downloads | Oracle 中国
2.3、解压tar.gz文件
sudo tar -zxvf jdk-8u381-linux-x64.tar.gz
2.4、配置环境变量
2.4.1、查看安装路径
2.4.2、设置环境变量
export JAVA_HOME=/usr/local/JDK/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=.:${JAVA_HOME}/bin:$PATH
2.4.3、执行该让环境变量生效
source /etc/profile
2.4.4、查看JDK版本
java -version
3、Docker
Ubuntu系统安装Docker_ubuntu安装docker_流觞浮云的博客-CSDN博客
3.1、安装Docker
3.1.1、卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
3.1.2、获取软件最新源
sudo apt-get update
3.1.3、安装apt依赖包
用于HTTPS来获取仓库
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
3.1.4、安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
3.1.5、验证
sudo apt-key fingerprint 0EBFCD88
3.1.6、设置稳定版仓库
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
3.2、安装 Docker Engine-Community
3.2.1、更新apt包索引
sudo apt-get update
3.2.2、安装最新版本
sudo apt-get install docker-ce docker-ce-cli containerd.io
3.2.3、安装特定版本
查看可获取的版本
apt-cache madison docker-ce
安装指定版本
3.3、启动和停止
3.3.1、启动docker
sudo service docker start
3.3.2、停止docker
sudo service docker stop
3.3.3、重启docker
sudo service docker restart
3.4、Docker镜像操作
3.4.1、列出镜像
docker images
REPOSITORY:镜像所在的仓库名称
TAG:镜像标签
IMAGEID:镜像ID
CREATED:镜像的创建日期(不是获取该镜像的日期)
SIZE:镜像大小
3.4.2、搜索镜像
docker search mysql
3.4.4、拉去镜像
要想获取某个镜像,我们可以使用pull命令,从仓库中拉取镜像到本地,如
docker pull hackeryx/ubuntu:16.04
3.4.5、删除镜像
docker image rm 镜像名或镜像 id 或 docker rmi 镜像名或镜像 id
3.5、Docker操作容器
3.5.1、创建容器
docker run [option] 镜像名:tag [向启动容器中传入的命令]
常用可选参数说明:
-i 表示以“交互模式”运行容器
-t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即 分配一个伪终端。
–name 为创建的容器命名
-v 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录,即 宿主机目录:容器中目录),可以使 用多个-v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后 共享到容器上。
-d 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不 会自动登录容器,如果只加-i -t 两个参数,创建后就会自动进去容器)。
-p 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p 做多个端口映射
-e 为容器设置环境变量
–network=host 表示将主机的网络环境映射到容器中,容器的网络与主机相同
3.5.2、交互式容器
例如,创建一个交互式容器,并命名为myubuntu
docker run -it --name=ubuntu kochul2000/ubuntu20.04-apt-pip:latest /bin/bash
在容器中可以随意执行linux命令,就是一个ubuntu的环境,当执行exit命令退出时,该容器也随之停止。
3.5.3、守护式容器
创建一个守护式容器:如果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器。在容器内部exit退出时,容器也不会停止。
docker run -itd --name=ubuntu2 --network=host kochul2000/ubuntu20.04-apt-pip:latest
3.5.4、进入已运行的容器
docker exec -it 容器名或容器id 进入后执行的第一个命令
docker exec -it ubuntu /bin/bash
3.5.5、查看容器
列出本机所有容器,包括已经终止运行的
docker ps -a
3.5.6、停止与启动容器
停止一个已经在运行的容器
docker container stop 容器名或容器id
3.5.7、启动一个已经停止的容器
docker container start 容器名或容器id
3.5.8、kill掉一个已经在运行的容器
docker container kill 容器名或容器id
3.5.9、删除容器
docker container rm 容器名或容器id 或 docker rm 容器名或容器id
3.6、Docker安装MySQL容器
3.6.1、下载MySQL镜像
命令 | 描述 |
docker pull mysql | 下载最新版Mysql镜像 (其实此命令就等同于 : docker pull mysql:latest ) |
docker pull mysql:xxx | 下载指定版本的Mysql镜像 (xxx指具体版本号) |
3.6.2、创建MySQL容器并运行
sudo docker run --name mysqlserver -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d -i -p 3306:3306 mysql:5.7
命令 | 描述 |
docker run | 创建一个新的容器 , 同时运行这个容器 |
–name mysql | 启动容器的名字 |
-d | 后台运行 |
-p 3306:3306 | 将容器的 3306 (后面那个) 端口映射到主机的 3306 (前面那个) 端口 |
–restart unless-stopped | 容器重启策略 |
-v /mydata/mysql/log:/var/log/mysql | 将日志文件夹挂载到主机 |
-v /mydata/mysql/data:/var/lib/mysql | 将mysql储存文件夹挂载到主机 |
-v /mydata/mysql/conf:/etc/mysql | 将配置文件夹挂载到主机 |
-e MYSQL_ROOT_PASSWORD=root | 设置 root 用户的密码 |
mysql:5.7 | 启动哪个版本的 mysql (本地镜像的版本) |
\ | shell 命令换行符 |
注:命令中所有 冒号 前面的是主机配置 , 冒号 后面的是mysql容器配置 。
–restart unless-stopped : 在docker重启时重启当前容器。但不包含docker重启时已停止的容器。
3.6.3、查看MySQL是否运行
docker ps
3.6.4、通过Docker命令进入MySQL容器内部
docker exec -it mysqlserver /bin/bash
或
docker exec -it mysqlserver bash
3.6.5、链接mysql
mysql -uroot -p123456
3.6.6、切换用户表
use mysql;
3.6.7、修改密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
3.6.8、开启远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
3.6.9、刷新
flush privileges;
3.7、Docker安装Redis
3.7.1、下载Redis镜像
命令 | 描述 |
docker pull redis | 下载最新版Redis镜像 (其实此命令就等同于 : docker pull redis:latest ) |
docker pull redis:xxx | 下载指定版本的Redis镜像 (xxx指具体版本号) |
3.7.2、创建Redis配置文件
启动前需要先创建Redis外部挂载的配置文件 ( /usr/local/redis/conf/redis.conf )
之所以要先创建 , 是因为Redis本身容器只存在 /etc/redis 目录 , 本身就不创建 redis.conf 文件
当服务器和容器都不存在 redis.conf 文件时, 执行启动命令的时候 docker 会将 redis.conf 作为目录创建 , 这并不是我们想要的结果 。
3.7.3、创建Redis容器并运行
sudo docker run -p 6379:6379 --name redis -v /usr/local/redis/data:/data -v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf
3.7.4、查看Redis是否运行
sudo docker ps
3.7.5、通过Docker命令进入Redis容器内部
docker exec -it redis /bin/bash
## 或者
docker exec -it redis bash
3.8、Docker安装Tomcat
3.8.1、下载Tomcat镜像
命令 | 描述 |
docker pull tomcat | 下载最新版Tomcat镜像(其实此命令等同于:docker pull tomcat:latest) |
docker pull tomcat:xxx | 下载指定版本的Tomcat镜像(xxx指具体版本号) |
3.8.2、创建tomcat配置文件目录
创建(conf、webapps、logs)并赋予权限,目的是做数据挂载
3.8.3、创建Tomcat容器并运行
sudo docker run -d -p 8080:8080 --name tomcat -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps -v /usr/local/tomcat/conf:/usr/local/tomcat/conf -v /usr/local/tomcat/logs:/usr/local/tomcat/logs tomcat
3.8.4、查看Tomcat是否运行
3.8.5、通过Docker命令进入Tomcat容器内部
3.8.6、查看主机本机数据是否被挂载
3.8.7、修改tomcat的server.xml配置文件
设置Tomcat 上传图片的访问路径,使上传的图片可以直接用URL直接访问
在Tomcat的conf目录下的server.xml配置访问路径。
doBase:图片上传的路径
path:ip:8080/img/xxx.png访问图片的重定向方式
3.9、Docker安装Nginx
3.9.1、下载Nginx镜像
命令 | 描述 |
docker pull nginx | 下载最新版Nginx镜像(命令等同于:docker pull redis:latest) |
docker pull redis:xxx | 下载指定版本的Nginx镜像(xxx指具体版本号) |
3.9.2、创建目录并且赋予权限
在主机中创建Nginx文件目录并赋予权限sudo chmod 777 文件目录或文件/
3.9.3、创建Redis容器并运行(不做挂载)
以不做数据挂载的方式创建nginx容器并运行,目的是将docker中nginx的配置文件拷贝到主机
sudo docker run -d --name nginx -p 80:80 nginx:1.23
3.9.4、拷贝nginx配置文件到主机
sudo docker cp nginx:/etc/nginx/nginx.conf /usr/local/nginx/
sudo docker cp nginx:/etc/nginx/conf.d /usr/local/nginx/conf/
sudo docker cp nginx:/usr/share/nginx/html /usr/local/nginx/html
sudo docker cp nginx:/var/log/nginx/ /usr/local/nginx/logs/
3.9.5、删除没有做数据挂载的nginx容器
sudo docker rm -f 容器ID
3.9.6、创建nginx容器、运行并做数据挂载
sudo docker run \
-d \
--name nginx \
-p 80:80 \
-v /usr/local/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/nginx/logs:/var/log/nginx \
-v /usr/local/nginx/html:/usr/share/nginx/html \
-v /usr/local/nginx/conf:/etc/nginx/conf.d \
--privileged=true \
-e TZ=Asia/Shanghai \
nginx:1.23
3.9.7、通过Docker命令进入Nginx容器内部
3.9.8、查看主机数据是否被挂载
3.9.9、Nginx配置文件基本配置
3.10、前后端分离项目部署(Ruoyi框架)
3.10.1、后端SpringBoot打包成jar包
3.10.2、前端vue项目打成dist文件
3.10.3、项目上传
将前端和后端项目上传到服务器并将目录赋予权限
3.10.4、运行项目
启动后端项目后台运行并将日志保存在chatgpt.log文件中
nohup java -jar ruoyi-admin.jar > chatgpt.log 2>&1 &
3.10.5、配置前端Nginx
前端项目通过nginx配置文件设置路由转发和方向代理,当然可以将dist文件放入到docker中的nginx文件目录下的html文件中,并重启nginx,可以参考3.9.9的配置文件。
3.10.6、前后端项目整体运行效果
相关文章:
Unbutu系统-Docker安装、JDK环境配置,Docker常用指令、Docker安装MySQL、Redis、Tomcat、Nginx,前端后分离项目部署
目录 1、防火墙 1.1、查看防火墙状态 1.2、开启防火墙 1.3、关闭防火墙 1.4、重启防火墙 1.5、查看防火墙版本 2、安装JDK 2.1、官网下载tar包 2.3、解压tar.gz文件 2.4、配置环境变量 2.4.1、查看安装路径 2.4.2、设置环境变量 2.4.3、执行该让环境变量生效 2.4…...
Python绘图系统10:在父组件中使用子组件的函数
文章目录 Combobox绑定事件互相调用源代码 Python绘图系统: 📈从0开始实现一个三维绘图系统自定义控件:坐标设置控件📉坐标列表控件📉支持多组数据的绘图系统图表类型和风格:散点图和条形图📊混…...
【Linux的成长史】Linux的发展史
🎬 博客主页:博主链接 🎥 本文由 M malloc 原创,首发于 CSDN🙉 🎄 学习专栏推荐:LeetCode刷题集 数据库专栏 初阶数据结构 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如…...
OLED透明屏是什么?什么叫做OLED透明屏的原屏?
OLED透明屏是一种新型的显示技术,具有高对比度、高亮度和能耗低等优势,正被越来越广泛地应用于各个领域中。 在OLED透明屏中,原屏是至关重要的元件之一。本文将深入探讨OLED透明屏原屏的意义、制造过程、品质要求、应用案例和发展趋势&#…...
Redis 持久化的手段有哪些 ?RDB 和 AOF 有什么区别 ?
目录 1. Redis 持久化的手段有哪些 2. RDB 和 AOF 有什么区别 2.1 RDB 持久化 2.2 AOF 持久化 2.2.1 AOF 持久化策略有哪些 3. 混合持久化是如何执行的(了解) 1. Redis 持久化的手段有哪些 Redis 持久化的手段有三种: 快照方式&#…...
【Vue】vue2预览显示quill富文本内容,vue-quill-editor回显页面,v-html回显富文本内容
文章目录 前言一、下载二、使用步骤1.引入样式2.html代码 总结 前言 提示:这里可以添加本文要记录的大概内容: vue后台框架,若依系统里有一个富文本编辑器,效果如下 在package.json里面查看,发现插件名叫quill 插件的…...
华纳云:ubuntu下nginx服务器如何配置
在Ubuntu操作系统上配置Nginx服务器涉及以下步骤。这里我将提供一个基本的配置示例,你可以根据自己的需求进行修改和定制。 安装 Nginx: 打开终端,并输入以下命令来安装 Nginx: sudo apt update sudo apt install nginx 启动 …...
PTP时间同步例程
下面是一个基本的PTP时间同步例程,可以使用Arduino或其他类似的微控制器实现: 步骤1:准备硬件 - 一个Arduino或类似的微控制器 - 一个以太网模块 步骤2:导入库文件 #include <Ethernet.h> #include <EthernetUdp.h>…...
【ES6】ES6遍历属性的方法
在ES6中,有几种遍历属性的方法,其中包括: 使用for…in循环和Object.keys()方法。 let obj {a: 1, b: 2, c: 3}; for (let key in obj) {console.log(obj[key]); }使用for…of循环和Object.values()方法。 let obj {a: 1, b: 2, c: 3}; f…...
【Web系列二十四】使用JPA简化持久层接口开发
目录 环境配置 1、引入依赖 配置文件 代码编写 实体类创建 JPA常用注解 Service与ServiceImpl Service ServiceImpl Controller Dao 三种实现Dao功能方式 1.继承接口,使用默认接口实现 2.根据接口命名规则默认生成实现 3.自定义接口实现(类似MyBatis…...
Flink流批一体计算(16):PyFlink DataStream API
目录 概述 Pipeline Dataflow 代码示例WorldCount.py 执行脚本WorldCount.py 概述 Apache Flink 提供了 DataStream API,用于构建健壮的、有状态的流式应用程序。它提供了对状态和时间细粒度控制,从而允许实现高级事件驱动系统。 用户实现的Flink程…...
软考高级系统架构设计师系列论文九十三:论计算机网络的安全性设计
软考高级系统架构设计师系列论文九十三:论计算机网络的安全性设计 一、计算机网络安全性设计相关知识点二、摘要三、正文四、总结一、计算机网络安全性设计相关知识点 软考高级系统架构设计师:计算机网络...
山西电力市场日前价格预测【2023-08-29】
日前价格预测 预测明日(2023-08-29)山西电力市场全天平均日前电价为321.48元/MWh。其中,最高日前电价为372.80元/MWh,预计出现在19: 30。最低日前电价为272.85元/MWh,预计出现在12: 30。 价差方向预测 1: 实…...
计算机毕设 基于深度学习的人脸专注度检测计算系统 - opencv python cnn
文章目录 1 前言2 相关技术2.1CNN简介2.2 人脸识别算法2.3专注检测原理2.4 OpenCV 3 功能介绍3.1人脸录入功能3.2 人脸识别3.3 人脸专注度检测3.4 识别记录 4 最后 1 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新…...
ES 7.6 - APi基础操作篇
ES7.6-APi基础操作篇 前言相关知识索引相关创建索引查询索引查询所有索引删除索引关闭与打开索引关闭索引打开索引 冻结与解冻索引冻结索引解冻索引 映射相关创建映射查看映射新增字段映射 文档相关(CURD)新增文档根据ID查询修改文档全量覆盖根据ID选择性修改根据条件批量更新 …...
【Go 基础篇】Go语言循环结构:实现重复执行与迭代控制
介绍 循环结构是编程中的重要概念,它允许我们重复执行一段代码块,或者按照一定的条件进行迭代控制。Go语言提供了多种循环结构,包括for、while和do-while等,用于不同的场景下实现循环操作。本篇博客将深入探讨Go语言中的循环结构…...
RabbitMQ笔记-RabbitMQ基本术语
RabbitMQ基本术语 相关概念; 生产者(Producer):投递消息。消息:消息体(payload)标签(label);生产者把消息交给rabbitmq,rabbitmq会根据标签把消息发给感兴趣…...
Git向远程仓库与推送以及拉取远程仓库
理解分布式版本控制系统 1.中央服务器 我们⽬前所说的所有内容(⼯作区,暂存区,版本库等等),都是在本地也就是在你的笔记本或者计算机上。⽽我们的 Git 其实是分布式版本控制系统!什么意思呢? 那我们多人…...
PostgreSQL+SSL链路测试
SSL一个各种证书在此就不详细介绍了,PostgreSQL要支持SSL的前提需要打开openssl选项,包括客户端和服务器端。 测试过程。 1. 生成私钥 root用户: mkdir -p /opt/ssl/private mkdir -p /opt/ssl/share/ca-certificateschmod 755 -R /opt/ss…...
服务器(容器)开发指南——code-server
文章目录 code-server简介code-server的安装与使用code-server的安装code-server的启动code-server的简单启动指定配置启动code-server code-server环境变量配置 code-server端口转发自动端口转发手动添加转发端口 nginx反向代理code-servercode-server打包开发版镜像 GitHub官…...
C++贪吃蛇(控制台版)
C自学精简实践教程 目录(必读) 目录 主要考察 需求 输入文件 运行效果 实现思路 枚举类型 enum class 启动代码 输入文件data.txt 的内容 参考答案 学生实现的效果 主要考察 模块划分 文本文件读取 UI与业务分离 控制台交互 数据抽象 需求 用户输入字母表示方…...
Java之字符串实践
功能概述 字符串是Java编程中常用的数据类型,本文对String部分常见功能做了对应实践以及分析。 功能实践 场景1:字符串比较 用例代码 Test public void test_string_compare() {String s1 "abc";String s2 s1;String s5 "abc&quo…...
BM20 数组中的逆序对
描述 解题思路:归并排序 分治:分治即“分而治之”,“分”指的是将一个大而复杂的问题划分成多个性质相同但是规模更小的子问题,子问题继续按照这样划分,直到问题可以被轻易解决;“治”指的是将子问题单独进…...
高德猎鹰轨迹查询相关接口
高德猎鹰轨迹官网:服务管理-API文档-开发指南-猎鹰轨迹服务 | 高德地图API 轨迹查询 httpclient的post // post方法请求 创建轨迹 private static void createTrace() {String key "高德注册的key";String sid "服务id"; // 服务idString…...
整理总结新手开始抖音小店经营:常见问题及解决办法
抖音小店作为一种新兴的电商模式,在短时间内获得了广泛的关注和使用。然而,对于新手来说,抖音小店经营可能会遇到一些问题。下面是四川不若与众总结的一些常见的问题以及相应的解决办法。 问题一:产品选择困难 对于新手来说&#…...
4-1-netty
非阻塞io 服务端就一个线程,可以处理无数个连接 收到所有的连接都放到集合channelList里面 selector是有事件集合的 对server来说优先关注连接事件 遍历连接事件...
hive 动态分区-动态分区数量太多也会导致效率下降只设置非严格模式也能执行动态分区
hive 动态分区-动态分区数量太多也会导致效率下降&只设置非严格模式也能执行动态分区 结论 在非严格模式下不开启动态分区的功能的参数(配置如下),同样也能进行动态分区数据写入,目测原因是不严格检查SQL中是否指定分区或者…...
java八股文面试[JVM]——JVM调优
知识来源: 【2023年面试】JVM性能调优实战_哔哩哔哩_bilibili...
FairyGUI-Unity 异形屏适配
本文中会修改到FairyGUI源代码,涉及两个文件Stage和StageCamera,需要对Unity的屏幕类了解。 在网上查找有很多的异形屏适配操作,但对于FairyGUI相关的描述操作很少,这里我贴出一下自己在实际应用中的异形屏UI适配操作。 原理 获…...
Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了解决方案
在启动oracle的服务OracleOraDb11g_home1TNSListener时,提示服务启动后又停止了。 解决方法: 修改oracle安装目录下的两个配置文件: 以上两个文件,对应的HOST的值,都改为127.0.0.1 然后再启动服务,启动成…...
做网站没签合同/百度惠生活商家入驻
图的邻接表存储 代码如下: //图的邻接表存储结构#include<stdio.h> #include<string.h> #include<malloc.h> #define MAX_VERTEX_NUM 20 //最大顶点个数 #define MAX_NAME 3 //顶点字符串最大长度1 #define ERROR 0 #define OK …...
高唐做网站推广/hao123网址之家官网
最近在复习JS,写着练练手 项目结构 整个项目分成六个部分 Util 工具类Param 配置类Pipe 管道类Bird 鸟类Score 分数类Main 主程序 显示效果 游戏效果大概是这样,碰撞坐标的判定感觉还有点问题,有空再调: 模块介绍 下面简单介…...
专业网站建设模板下载/什么软件可以推广自己的产品
给出凸包的定义: 简要说一下思路: 首先将所有点按照x从小到大(x同则y从小到大)排序 把p1,p2放入凸包,从p3开始,当新点在凸包‘前进’方向的左边时继续,否则依次删除最近加入凸包的点,…...
网站建设技术论坛/设计好看的网站
实验题目 扩展银行项目,添加一个 Customer 类。Customer 类将包含一个 Account对 象。 实验目的 使用引用类型的成员变量。 提 示 在banking包下的创建Customer类。该类必须实现上面的UML图表中的模 型。 声明三个私有对象属性:firstName、lastName…...
北京网站建设联系电话/营销方式都有哪些
报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下: 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被读作 "one 1" ("一个一") , 即 11。11 被读作 "two 1s" (&…...
wordpress wpuf/中文域名交易网站
先获取div img 先清空img 给刚加载时设定初始图片 img.empty(); img.append("<img srcimg/1.jpg />");设置定时器 每4秒给i6自增1 当超过图片数量时将i6重新设定为0 开始新的自增 下面是js $(document).ready(function(){ var img$("#img");var …...