微服务架构(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
在这里插入图片描述

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Web Proxy Auto-Discovery Service[通俗易懂]

    Web Proxy Auto-Discovery Service[通俗易懂]WinHTTPWebProxyAuto-DiscoveryService服务处于正在运行状态。但是有一天早上来发现全部电脑都无法上网。PINGISA都不通。重新启动后正常。我检查系统日志里面有3条关于WEB代理的日志:1。TheWinHTTPWebProxyAuto-DiscoveryServicehasbeenidlefor15minutes,i

    2022年6月21日
    104
  • pymssql 中文乱码_pycharm输出中文乱码

    pymssql 中文乱码_pycharm输出中文乱码开门见山,先放解决问题的代码SELECTCONVERT(NVARCHAR,test_field)AStest_fieldFROMtest_tableWHEREtest_condition=’测试中文’–直接将中文字段test_field(VARCHAR)转化为NVARCHAR,其他类型同理,转换成N开头的类型接下来才是其他可能可行的解决方案:使用其他库,如pyodbc(详细信息请阅读相关文档),可参考:https://blog.csdn.net/zhaogeno1/art

    2025年6月30日
    4
  • Js生成二维码_怎样用excel生成二维码

    Js生成二维码_怎样用excel生成二维码JS生成二维码,以下介绍3种方法????QR码生成器(在线,反应慢)       ????api说明       ????使用说明<h2>QR码</h2><!–data=后面的链接换成需要的链接即可–><imgstyle=”width:120px;height:120px;

    2022年10月18日
    2
  • 获取计算机用户名 方法是什么_计算机获取视频信息的方法

    获取计算机用户名 方法是什么_计算机获取视频信息的方法StringosUser=System.getProperty(“user.name”);//获取计算机用户名称 StringfilePath=”C:/Users/”+osUser+”/Downloads/”;

    2022年10月15日
    0
  • BCG界面库

    BCG界面库之前用过BCG界面库中的表格控件,深感其强大,现在再来用一下其它的。一.关于BCGControlBar。BCGControlBar是一个基于MFC的扩展库,您可以通过完全的用户化操作构成一些类似于M

    2022年7月3日
    31
  • 职称计算机考试模块教程怎么用,【职称计算机考试模块怎么选择?】- 环球网校…

    职称计算机考试模块教程怎么用,【职称计算机考试模块怎么选择?】- 环球网校…【摘要】环球网校分享的“职称计算机考试模块怎么选择?”,以下介绍了职称计算机考试模块选择相关资料,希望对大家有帮助,更多资料敬请关注环球网校职称计算机考试频道,网校会及时更新考试资讯……问:职称计算机考试模块怎么选择?答:全国职称计算机考试模块一共设置有13类24个模块,可供各位考生选择一般评聘高级职务人员自选4个模块,评聘中级职务人员自选3个模块,评聘初级职务人员自选2个模块。在职称计算机考试模…

    2022年6月2日
    28

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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