微服务架构(java环境&tomcat)

微服务架构(java环境&tomcat)

在这里插入图片描述
在这里插入图片描述

[root@localhost ~]# tail -n4 /etc/profile
export JAVA_HOME=/usr/local/java 
export JRE_HOME=/usr/local/java/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

Jave Runtime Environment JAVA运行时环境
类文件路径
命令文件 或者可执行脚本

[root@localhost ~]# tar -zxf apache-tomcat-8.5.35.tar.gz 
[root@localhost ~]# mv apache-tomcat-8.5.35 /usr/local/tomcat

开启:
/usr/local/tomcat/bin/startup.sh
关闭:
/usr/local/tomcat/bin/shutdown.sh

/usr/local/tomcat/logs/catalina.out 日志文件

1.tomcat多实例
端口 8080
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
tomcat配置文件解析 server.xml
https://www.cnblogs.com/kismetv/p/7228274.html#title3

在这里插入图片描述
在这里插入图片描述

[root@localhost ~]# mkdir /usr/local/tomcat/webapps/hello
[root@localhost ~]# cd /usr/local/tomcat/webapps/hello
[root@localhost hello]# echo "hello world" > index.jsp

nginx apache –> html index.html

在这里插入图片描述
1.目录浏览
curl http://192.168.6.10:8080/hello/ —》目录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
JVM内存监控
在这里插入图片描述

<%
Runtime rtm = Runtime.getRuntime();
long mm = rtm.maxMemory()/1024/1024;
long fm = rtm.freeMemory()/1024/1024;
long tm = rtm.totalMemory()/1024/1024;

out.println("JVM memory detailed info:<br>");
out.println("Max memory: "+mm+"MB"+"<br>");
out.println("Free memory: "+fm+"MB"+"<br>");
out.println("Total memory: "+tm+"MB"+"<br>");
out.println("Available memory: "+(mm+fm-tm)+"MB"+"<br>");
%>


在这里插入图片描述
Max memory: 405MB最大内存
Free memory: 21MB剩余内存
Total memory: 101MB总内存
Available memory: 325MB可用内存

JMX远程调用 Tomcat远程调用
在这里插入图片描述

307 CATALINA_OPTS="-Djava.rmi.server.hostname=192.168.6.10
308 -Dcom.sun.management.jmxremote
309 -Dcom.sun.management.jmxremote.port=8080
310 -Dcom.sun.management.jmxremote.ssl=false
311 -Dcom.sun.management.jmxremote.authenticate=true"

vim jmxremote.password
最后两行改密码
在这里插入图片描述
首先另外一台机器有java环境 两面关闭防火墙、宽容模式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
应用管理器
App manager tomcat应用管理器 基于上面的操作
主机管理平台 host manager
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
应用管理
应用部署方式:
1)add manager
2)手动
效率提升—》交互–》非交互
①方法

cp bdqnweb.war /usr/local/tomcat/webapps/
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

②方法

mkdir /usr/local/tomcat/webapps/bdqnweb
unzip bdqnweb.war -d /usr/local/tomcat/webapps/bdqnweb

③方法
在这里插入图片描述
host manager 主机(host)管理
在这里插入图片描述
在这里插入图片描述
允许所有的主机

创建角色
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
tomcat优化
1)安全(tomcat加固)
端口防护 8080—》非8080
禁用目录浏览
禁用后台管理 app manager

在这里插入图片描述
服务器隐藏
apache tomcat/8.5.35
思路:对于可能出现的错误代码 进行错误页面优化
vim /usr/local/tomcat/conf/web.xml
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1)内核参数优化
2)JVM内存优化
3)模型优化
4)并发优化

[root@localhost hello]# echo 'net.ipv4.ip_local_port_range 
> net.ipv4.tcp_syn_retries=2
> net.ipv4.tcp_synack_retries=2
> net.ipv4.tcp_keepalive_time=1500
> net.ipv4.tcp_fin_timeout=15
> net.ipv4.tcp_max_syn_backlog=20000
> net.core.netdev_max_backlog=65535' >> /etc/sysctl.conf

在这里插入图片描述
nfs–》rpcbind–》32768-65535
2048 – 65535
6379 8080 11211 9092 2181
分布式 TCP三次握手和四次握手
syn队列的长度 1024
网卡接收 》 处理速度

JVM内存优化
在这里插入图片描述
Xms最小内存
Xmx最大内存

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
62行的命令最后应该在/usr/local/apr/lib
在这里插入图片描述
1.BIO blocking I/O 阻塞I/O
效率低 并发性能很差
2NIO nonblocking I/O 非阻塞I/O
基于系统缓冲区 可以提供非阻塞I/O操作 拥有比BIO更高的并发
3.APR apache portable runtime apache 便携运行时
调用heeptd的动态链接库来进行文件的读取和传输
提高tomcat对静态文件的处理能力 是tomcat高并发的首选模式

[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml

88行:复制 双引号内org.apache.coyote.http11.Http11NioProtocol
修改Apr
在这里插入图片描述
在这里插入图片描述
并发优化
[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101987.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • netstat和netstat -ano

    netstat和netstat -ano(1)在命令行窗口中输入netstat后应该怎能读呢?本机地址为10.1.127.144,本机的52051端口正在和IP地址为183.192.164.67的8864端口进行通信,而且通信使用的是TCP协议(本机使用52021端口,对方使用8864端口)(2)在命令行中输入netstat-ano可以看出多了PID这一列(表示是PID为这个数的程序正在占用某个端口和外部某台机器的某个端口进行通信)所以netstat-ano比netstat能显示更多的信息,是升级版本,plus版本

    2022年10月21日
  • 一篇文章彻底搞懂异步,同步,setTimeout,Promise,async「建议收藏」

    一篇文章彻底搞懂异步,同步,setTimeout,Promise,async「建议收藏」之前翻看别的大佬的博客看到了关于setTimeout,promise还有async执行顺序的文章。观看了几篇之后还是没有怎么看懂,于是自己开始分析代码,并整理了此文章,我相信通过此文章朋友们能对异步同步还有,setTimeout,Promise,async这些内容了然于胸,接下来让我们走入正题:…

  • python win32api中文手册_python 模拟鼠标和键盘输入

    python win32api中文手册_python 模拟鼠标和键盘输入importwin32guiimportwin32conimportwin32api#从顶层窗口向下搜索主窗口,无法搜索子窗口#FindWindow(lpClassName=None,lpWindowName=None)窗口类名窗口标题名handle=win32gui.FindWindow(“Notepad”,None)#获取窗口位置left,top,right,bo…

    2022年10月11日
  • 常用的数据库的字段类型及大小比较_sql字段长度

    常用的数据库的字段类型及大小比较_sql字段长度Oracle/MSSQL/Mysql 常用数据库的字段类型及大小  ORACLE的数据类型 常用的数据库字段类型如下: 字段类型中文说明限制条件其它说明 CHAR固定长度字符串最大长度2000bytes` VARCHAR2可变长度的字符串最大长度4000bytes可做索引的最大长度749 NCHAR根据字符集而定的固定长度字符串最大长度200…

  • feiler包(prim算法)

    背景Weisfeiler-Lehman算法(威斯费勒-莱曼算法)是测试图同构的经典算法之一,我在这儿记录一下它的实现原理,参考文章为Weisfeiler-LehmanGraphKernels伪代码论文中的伪代码如下所示假设要测试同构的两张图为G和G`,那么在结点v的第i次迭代里,算法都分别做了四步处理:标签复合集定义、复合集排序、标签压缩和重标签。标签复合集定义如果是第一次迭代,v的标签复合集里只有一个元素,就是v的标签。如果不是第一次迭代,v的标签复合集元素就是v的..

  • 检查网站有没有被挂马_网站在线挂马检测工具

    检查网站有没有被挂马_网站在线挂马检测工具首先,我们来看看网站被挂马的危害性。网站被挂马后,一方面是系统资源,流量带宽资源的巨大损失,另一方面也成为了传播网页木马的“傀儡帮凶”,严重影响到网站的公众信誉度。很多网页木马都是利益驱动,偷盗各类帐号密码,如电子银行帐户和密码、游戏帐号和密码、邮箱帐户和密码、qq/MSN帐号和密码等;另外,使得客户端被安装恶意插件,强迫浏览黑客指定的网站,或者被利用攻击某个站点等。  我们知道了网站被挂马

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号