实习十九:学习笔记
上午
1、构建vue发行版本
[root@server ~]# cd eleme_web/
[root@server eleme_web]# npm run buid //项目未执行时运行该命令,创建发行版本
[root@server eleme_web]# cd dist/ //dist中包含发行版本的所有文件
[root@server dist]# ls
css favicon.ico img index.html js nohup.out
[root@server dist]# vim index.html
[root@server eleme_web]# nohup npm run serve& //运行vue项目
[root@server eleme_web]# mkdir /eleme
[root@server eleme_web]# cp -r /root/eleme_web/dist/* /eleme/ //将项目整体移动到/eleme目录下
[root@server eleme_web]# cd /usr/local/nginx/conf.d
[root@server conf.d]# cp baibai.conf eleme.conf
[root@server conf.d]# vim eleme.conf //编辑.conf文件
server {
listen 80;
server_name www.eleme.com;
root /eleme;
location / {
index index.html;
}
}
[root@server conf.d]# /usr/local/nginx/sbin/nginx
在windows中的C:\Windows\System32\drivers\etc路径下的hosts文件中添加:10.0.0.10 www.eleme.com
用浏览器访问www.eleme.com
2、java环境配置
jdk软件包路径:
https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz
[root@001 ~]# tar -zxvf jdk22.tar_1
1
.gz
[root@001 ~]# mv jdk-22.0.2/ /usr/local/jdk22
[root@001 ~]# vim /etc/profile
export JAVA_HOME=/usr/local/jdk22/
export PATH=$JAVA_HOME/bin:$PATH
[root@001 ~]# source /etc/profile //运行profile
[root@001 ~]# java //测试
用法:java [options] <mainclass> [args...]
(执行类)
或 java [options] -jar <jarfile> [args...]
(执行 jar 文件)
或 java [options] -m <module>[/<mainclass>] [args...]
java [options] --module <module>[/<mainclass>] [args...]
(执行模块中的主类)
或 java [options] <sourcefile> [args]
(执行源文件程序)
[root@001 ~]# java -version //测试
java version "22.0.2" 2024-07-16
Java(TM) SE Runtime Environment (build 22.0.2+9-70)
Java HotSpot(TM) 64-Bit Server VM (build 22.0.2+9-70, mixed mode, sharing)
下午
1、安装tomcat软件
tomcat软件包路径:
https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz
[root@001 ~]# tar -zxvf apache-tomcat-10.1.26.tar.gz
[root@001 ~]# mv apache-tomcat-10.1.26 /usr/local/tomcat/
[root@001 ~]# ls /usr/local/tomcat/
bin CONTRIBUTING.md logs RELEASE-NOTES webapps
BUILDING.txt lib NOTICE RUNNING.txt work
conf LICENSE README.md temp
[root@001 ~]# /usr/local/tomcat/bin/startup.sh //开启tomcat服务
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk22/
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
[root@001 ~]# netstat -lntup | grep java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 1273/java
tcp6 0 0 :::8080 :::* LISTEN 1273/java
[root@001 ~]# cd /usr/local/tomcat/logs/
[root@001 logs]# tail -f catalina.2024-08-01.log //查看你是否启动成功
[root@001 logs]# tail -f localhost.2024-08-01.log
[root@001 ~]# /usr/local/tomcat/bin/shutdown.sh //停用tomcat服务
[root@001 tomcat]# ls
bin logs webapps lib work conf temp
2、tomcat目录介绍
(1)bin目录
[root@001 bin]# ls
bootstrap.jar daemon.sh shutdown.sh
catalina.bat digest.bat startup.bat
catalina.sh digest.sh startup.sh
catalina-tasks.xml makebase.bat tomcat-juli.jar
ciphers.bat makebase.sh tomcat-native.tar.gz
ciphers.sh migrate.bat tool-wrapper.bat
commons-daemon.jar migrate.sh tool-wrapper.sh
commons-daemon-native.tar.gz setclasspath.bat version.bat
configtest.bat setclasspath.sh version.sh
configtest.sh shutdown.bat
1、含有多个可执行文件,这些可执行文件在window和linux中是通用
2、win10上优化之后上传到linux,只需要添加权限就可以了
3、win对应的的文件的扩展名为bat(批处理文件)
4、linux对应的文件的扩展名为sh
5、startupsh.sh启动服务,shutdown.sh停止服务
(2)webapps目录
[root@001 tomcat]# cd webapps/
[root@001 webapps]# mkdir myweb
[root@001 myweb]# vim 1.txt
i am jsp
......
i am jsp
[root@001 webapps]# vim myweb/a.jsp
i am jsp
......
i am jsp
......
<%=3+4 %>
[root@001 webapps]# ls
docs examples host-manager manager myweb ROOT
1、webapps目录中每个目录都是一个项目
2、ROOT是默认的项目目录,在实际开发中,我们可以将程序打包成ROOT.war或者将目录名称修改为ROOT就可以直接发布
3、使用10.0.0.20:8080直接访问的页面是ROOT目录下的index.jsp
4、在这个目录下可以部署一些静态资源,可以使用浏览器查看,也可以使用下载
5、还可以在该目录下创建新的文件夹作为项目发布
要发布项目有两个选项:
1、将项目移动到该目录下
2、在conf/server.xml修改资源文件的位置
3、nginx默认的路径/usr/local/nginx/html,也可以在server中配置其他的绝对路径,不必须是在内部的html目录中
(3)work目录
[root@001 work]# tree
.
└── Catalina
└── localhost
├── docs
│ └── org
│ └── apache
│ └── WEB_002dINF
│ └── jsp
│ ├── _403_jsp.class
│ └── _403_jsp.java
├── examples
├── host-manager
├── manager
├── myweb
│ └── org
│ └── apache
│ └── jsp
│ ├── a_jsp.class
│ └── a_jsp.java
└── ROOT
└── org
└── apache
└── jsp
├── index_jsp.class
└── index_jsp.java
19 directories, 6 files
1、将jsp还原成java和class文件
2、保存的路径/usr/local/tomcat/work/Catalina/localhost/myweb/org/apache/jsp/xxx.java
3、将jsp文件自动解析为java文件,不需要重启服务器
(4)logs目录
[root@001 logs]# ls -l
总用量 32
-rw-r-----. 1 root root 9069 8月 1 15:12 catalina.2024-08-01.log
-rw-r-----. 1 root root 9069 8月 1 15:12 catalina.out
-rw-r-----. 1 root root 414 8月 1 14:12 localhost.2024-08-01.log
-rw-r-----. 1 root root 1096 8月 1 15:16 localhost_access_log.2024-08-01.txt
1、日志文档
2、catalina.log
3、localhost.log
4、都有相应的日期
(5)conf目录
[root@001 conf]# ls -l
总用量 232
drwxr-x---. 3 root root 23 8月 1 14:12 Catalina
-rw-------. 1 root root 12926 7月 8 05:02 catalina.policy
-rw-------. 1 root root 7693 7月 8 05:02 catalina.properties
-rw-------. 1 root root 1411 7月 8 05:02 context.xml
-rw-------. 1 root root 1149 7月 8 05:02 jaspic-providers.xml
-rw-------. 1 root root 2313 7月 8 05:02 jaspic-providers.xsd
-rw-------. 1 root root 4144 7月 8 05:02 logging.properties
-rw-------. 1 root root 7126 7月 8 05:02 server.xml
-rw-------. 1 root root 2756 7月 8 05:02 tomcat-users.xml
-rw-------. 1 root root 2558 7月 8 05:02 tomcat-users.xsd
-rw-------. 1 root root 172780 7月 8 05:02 web.xml
[root@001 conf]# vim server.xml
[root@001 conf]# vim web.xml
(6)lib目录
[root@001 lib]# ls //存放依赖文件
annotations-api.jar tomcat-dbcp.jar catalina-ant.jar tomcat-i18n-cs.jar
catalina-ha.jar tomcat-i18n-de.jar catalina.jar tomcat-i18n-es.jar
catalina-ssi.jar tomcat-i18n-fr.jar catalina-storeconfig.jar tomcat-i18n-ja.jar
catalina-tribes.jar tomcat-i18n-ko.jar ecj-4.27.jar tomcat-i18n-pt-BR.jar
el-api.jar tomcat-i18n-ru.jar jakartaee-migration-1.0.8-shaded.jar tomcat-i18n-zh-CN.jar
jasper-el.jar tomcat-jdbc.jar jasper.jar tomcat-jni.jar
jaspic-api.jar tomcat-util.jar jsp-api.jar tomcat-util-scan.jar
servlet-api.jar tomcat-websocket.jar tomcat-api.jar websocket-api.jar
tomcat-coyote-ffm.jar websocket-client-api.jar tomcat-coyote.jar
1、tomcat运行中为项目提供的依赖文件
2、要访问
(7)temp目录
[root@001 temp]# ls //存放临时文件
safeToDelete.tmp
3、脚本安装jdk环境和tomcat网站
[root@001 ~]# vim jdk.sh
#!/bin/bash
tar -zxvf jdk22.tar_1
1
.gz
mv jdk-22.0.2/ /usr/local/jdk22
sed -i '$a export JAVA_HOME=/usr/local/jdk22/' /etc/profile
sed -i '$a export PATH=$JAVA_HOME/bin:$PATH' /etc/profile
source /etc/profile
java -version
tar -zxvf apache-tomcat-10.1.26.tar.gz
mv apache-tomcat-10.1.26 /usr/local/tomcat/
/usr/local/tomcat/bin/startup.sh
netstat -lntup | grep java
tail -f /usr/local/tomcat/logs/catalina.2024-08-01.log
[root@001 ~]# ssh-keygen
[root@001 ~]# ssh-copy-id root@10.0.0.30
[root@001 ~]# ssh-copy-id root@10.0.0.40
[root@001 ~]# scp /root/jdk.sh root@10.0.0.30:/root/
[root@001 ~]# scp /root/jdk.sh root@10.0.0.40:/root/
[root@002 ~]# sh jdk.sh
[root@003 ~]# sh jdk.sh
[root@001 ~]# echo "i am dynamic jsp java server page, nameber is 001" > /usr/local/tomcat/webapps/ROOT/index.jsp
[root@002 ~]# echo "i am dynamic jsp java server page, nameber is 002" > /usr/local/tomcat/webapps/ROOT/index.jsp
[root@003 ~]# echo "i am dynamic jsp java server page, nameber is 003" > /usr/local/tomcat/webapps/ROOT/index.jsp
4、nginx代理tomcat服务
[root@server ~]# cd /usr/local/nginx/
[root@server nginx]# cd conf.d/
[root@server conf.d]# cp eleme.conf ele.conf
[root@server conf.d]# ls
baibai.conf ele.conf eleme.conf
[root@server conf.d]# vim ele.conf
server {
listen 80;
server_name www.ele.com;
location / {
proxy_pass http://ele_group;
}
}
[root@server conf.d]# cd /usr/local/nginx/conf/
[root@server conf]# vim nginx.conf
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream ele_group{
server 10.0.0.20:8080;
server 10.0.0.30:8080;
server 10.0.0.40:8080;
}
include ../conf.d/*.conf;
[root@server conf]# /usr/local/nginx/sbin/nginx
在C:\Windows\System32\drivers\etc下的hosts文件中添加:10.0.0.10 www.ele.com
错误解决:
[root@server conf.d]# vim ele.conf
proxy_pass http://elegroup; //去掉下划线
[root@server conf]# vim nginx.conf
upstream elegroup{} //去掉下划线
5、数据库
(1)关系型数据库
1、oracel
2、mysql
1、安装和配置
2、sql语句
3、优化
4、备份和安全
5、集群
1、主从
2、一主多从
3、增删改主机
4、从服务负责mysql查询
3、sql-server
(2)非关系型数据库
1、redis
2、cached
3、mongodb
相关文章:
实习十九:学习笔记
上午 1、构建vue发行版本 [rootserver ~]# cd eleme_web/ [rootserver eleme_web]# npm run buid //项目未执行时运行该命令,创建发行版本 [rootserver eleme_web]# cd dist/ //dist中包含发行版本的所有文件 [rootserver dist]# ls css favicon.ico i…...

OrionX:革新GPU资源管理,助力AI开发团队高效运作
您的AI开发团队是否经常陷入这样的窘境: 人多卡少,GPU资源难以满足每个成员的需求? 当开发环境中需要变更GPU卡配置时,流程繁琐不堪,不得不关闭容器、重新配置再重启? 是否曾因GPU卡分配后未被充分利用而…...

RabbitMQ发送者重连、发送者确认
RabbitMQ发送者重连、发送者确认 一、发送者重连 spring:rabbitmq:connection-timeout: 1s #设置MQ的连接超时时间template:retry:enabled: true #开启超时重试机制initial-interval: 1000ms #失败后的初始等待时间multiplier: 1 #失败后下次的等待时长倍数,下次等…...

请转告HPC计算AI计算单位,选对存储事半功倍
U.2 NVMe全闪混合统一存储GS 5000U是Infortrend产品中一款高性能机型。得益于搭载强劲的第五代IntelXeon处理器,以及支持PCIe 5.0、NVMe-oF、100GbE等多种特点,GS 5000U单台块级性能可达50 GB/s的读、20 GB/s的写,以及1300K的IOPS;…...

[GYCTF2020]Blacklist1
打开题目 判断注入类型,输入1试试 输入2 输入1 判断为字符型注入 堆叠查询2;show databases;# 然后来输入2; show tables;#来查看数据库的表 然后我们通过FlagHere表来查看列输入2;show columns from FlagHere;# 来查看列 、 重新构造payload:0;HAND…...

Blackcat V2.2付费会员制WordPress资源站主题
Blackcat-付费会员制WordPress资源站主题,该主题是基于简约实用的主题选项框架 Codestar Framework 进行开发的功能强大的付费会员制主题,该主题尤其适合用于搭建付费下载资源网站,比如素材站、软件站、视频教程站等付费资源下载网站。 集成…...
动手学强化学习 第 18 章 离线强化学习 训练代码
基于 https://github.com/boyu-ai/Hands-on-RL/blob/main/%E7%AC%AC18%E7%AB%A0-%E7%A6%BB%E7%BA%BF%E5%BC%BA%E5%8C%96%E5%AD%A6%E4%B9%A0.ipynb 理论 离线强化学习 修改了警告和报错 运行环境 Debian GNU/Linux 12 Python 3.9.19 torch 2.0.1 gym 0.26.2 运行代码 CQL.…...
Python笔试面试题AI答之面向对象常考知识点
Python面向对象面试题面试题覆盖了Python面向对象编程(OOP)的多个重要概念和技巧,包括元类(Metaclass)、自省(Introspection)、面向切面编程(AOP)和装饰器、重载…...
面试经典算法150题系列-数组/字符串操作之买卖股票最佳时机
买卖股票最佳时机 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易…...

安装jdk和tomcat
安装nodejs 1.安装nodejs,这是一个jdk一样的软件运行环境 yum -y list installed|grep epel yum -y install nodejs node -v 2.下载对应的nodejs软件npm yum -y install npm npm -v npm set config .....淘宝镜像 3.安装vue/cli command line interface 命令行接…...
mongodb 备份还原
### 加入 MongoDB 官方 repositoryecho [mongodb-org-4.4] nameMongoDB Repository baseurlhttps://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/ gpgcheck1 enabled1 gpgkeyhttps://www.mongodb.org/static/pgp/server-4.4.asc| tee /etc/yum.repos.d/mo…...

day27——homework
1、使用两个线程完成两个文件的拷贝,分支线程1拷贝前一半,分支线程2拷贝后一半,主线程回收两个分支线程的资源 #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <fcntl.h> #include <uni…...

shell脚本自动化部署
1、自动化部署DNS [rootweb ~]# vim dns.sh [roottomcat ~]# yum -y install bind-utils [roottomcat ~]# echo "nameserver 192.168.8.132" > /etc/resolv.conf [roottomcat ~]# nslookup www.a.com 2、自动化部署rsync [rootweb ~]# vim rsync.sh [rootweb ~]# …...

C语言| 文件操作详解(二)
目录 四、有关文件的随机读写函数 4.1 fseek 4.2 ftell 4.3 rewind 五、判定文件读取结束的标准与读写文件中途发生错误的解决办法 5.1 判定文件读取结束的标准 5.2 函数ferror与feof 5.2.1 函数ferror 5.2.2 函数feof 在上一章中,我们主要介绍了文件类型…...

保证项目如期上线,测试人能做些什么?
要保证项目按照正常进度发布,需要整个研发团队齐心协力。 有很多原因都可能会造成项目延期。 1、产品经理频繁修改需求 2、开发团队存在技术难题 3、测试团队测不完 今天我想跟大家聊一下,测试团队如何保证项目按期上线,以及在这个过程中可能…...
【杂谈】在大学如何学得计算机知识,浅谈大一经验总结
大学新生的入门经验简谈 我想在学习编程这条路上,很多同学感到些许困惑,摸爬滚打一年,转眼就要进入大二学习了,下面浅谈个人经验与反思总结。倘若说你是迷茫的,希望这点经验对你有帮助;但倘若你有更好的建…...
Superset二次开发之柱状图实现同时显示百分比、原始值、汇总值的功能
背景 柱状图贡献模式选择行,堆积样式选择Stack,默认展示百分比,可以展示每个堆积的百分比,但是无法实现同时展示百分比、原始值、汇总值的效果。借助Tooltip可以实现,但是不直观。 柱状图来自Echarts插件,可以先考虑Echarts的柱状图如何实现此需求,再研究Superset项目的…...

堆的创建和说明
文章目录 目录 文章目录 前言 小堆: 大堆: 二、使用步骤 1.创建二叉树 2.修改为堆 3.向上调整 结果实现 总结 前言 我们已经知道了二叉树的样子,但是一般的二叉树是没有什么意义的,所以我们会使用一些特殊的二叉树来进行实现&a…...
【玩转python】入门篇day14-函数
1、函数的定义 函数通过def定义,包括函数名、参数、返回值 # 定义函数 def test(a,b): # a,b表示形式参数print(a b)#函数体(具体的功能)return a*b #返回值# 函数调用 test(12,43) # 12和43表示实际参数,在调用函数时,会替换形式参数a,b下面这个展示了稍微复…...
uni-app 将base64图片转换成临时地址
function getTempFilePath(base64Data) {return new Promise((resolve, reject) > {const fs uni.getFileSystemManager()base64Data base64Data.split(,)[1]const fileName temp_image_ Date.now() .png // 自定义文件名,可根据需要修改const filePath un…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...

SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
Monorepo架构: Nx Cloud 扩展能力与缓存加速
借助 Nx Cloud 实现项目协同与加速构建 1 ) 缓存工作原理分析 在了解了本地缓存和远程缓存之后,我们来探究缓存是如何工作的。以计算文件的哈希串为例,若后续运行任务时文件哈希串未变,系统会直接使用对应的输出和制品文件。 2 …...