代理和 Session 机制(1)|学习笔记

简介: 快速学习代理和 Session 机制

开发者学堂课程【Tomcat 服务器入门详解代理和 Session 机制】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/654/detail/10847


代理和 Session 机制

 

内容简介:

一、Tomcat 常见部署方式

二、Nginx 和 Tomcat 实践

三、应用管理

四、httpd 和 Tomcat 实践

五、负载均衡

六、session 机制

 

一、Tomcat 常见部署方式 

图片1.png

1、standalone 模式

Tomcat 单独运行,能支持 Jsp可以直接接受用户的请求但不推荐。

2、反向代理

单机运行,提供了一个 Nginx 最为反向代理,可以做到静态由 Nginx 提供响应,动态 jsp 代理给 Tomcat

LNMT:Linux+Nginx+MySQL+Tomcat

LNMT:Linux+Apache(Httpd)+MySQL+Tomcat

对于 Tomcat 的部署,应该在前面应该加 ending 或者 HTTPD在前面把静态部署完成。

Tomcat 动态做一个代理即可,可以用最简单的代理方式,不过对于 HTTPD,由于它结合了原来 Java web server,所以到目前为止还是支持 AIP 协议。

3、反向代理多机

前置一台 Nginx,给多台 Tomcat 实例做反向代理和负载均衡调度,Tomcat 上部署的纯动态页面更适合。

LNMT:Linux+Nginx+MySQL+Tomcat

如果一台 Tomcat 不够用,那么是可以部署多个 Tomcat 。在部署多个 Tomcat 的时候,多个 Tomcat 内容是一样的,如果内容不一样,前面也可以调度

假设现在内容一样,就考虑调度的问题调度有很多种方案比如做某个东西然后到某款机器上,或者按照某种负载的量进行调度,这些都是可以做的,这样就可以做到多机,分摊压力好处在于其中一台失效了,另外两台还能够保证服务运行

所以一旦成为多机,不但能做负载均衡,天生就是高可用的如果这样,可以演化更加复杂,变成一个多极的结构。

4、多级代理

LNNMT:Linux+Nginx+Nginx+MySQL+Tomcat

最前面有一个  Nginx  应用层代理,或者  hia practice  都可以就做代理,然后向后可能还有再做二级代理也有可能或者还要做缓存的,还有  Nginx、Tomcat,这就变成多级的结构。在这个结构当中并没有画出数据库,因为大多数情况下都访问数据库。

5、总结

这几种部署方式中 standalone 比较简单,像

LNMT:Linux+Apache(Httpd)+MySQL+Tomcat,虽然这只是一种方式,但是在使用过程中,步骤可能这个还要再复杂一些,业务越来越多,结构会越来越复杂,所以我们要留下文档部署。

如果不留下文档,就会大大增加工作量,导致分配了多少 IP 都不知道写的程序也没用,把 IP 扫过来也没用无法解决问题。尤其是面向服务的,不知道哪个服务配的是哪个 IP;即使知道了,也不知道逻辑上是如何连在一起的所以还是要留下一些文档,不然部署的结构,包括真正服务之间相互调动会越来越复杂。所以我们要做好管理的服务,不然到最后还是自己去承受工作上的压力。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
JavaScript 前端开发
Vue 3中如何处理懒加载?
Vue 3中如何处理懒加载?
|
SQL 监控 关系型数据库
深入理解MySQL日志:通用查询、慢查询和错误日志详解
深入理解MySQL日志:通用查询、慢查询和错误日志详解
1906 0
端口排查步骤-7680端口分析-Dosvc服务
对通过服务启动的进程查找主进程
7247 0
|
Python
pyqt6 制作一个颜色调节器 01
本文介绍了一个使用 PyQt 制作的颜色调节器,通过滑动滚动条或旋钮来调整 RGB 三色,实现颜色的微调。具体步骤包括:1. 设计 UI 页面;2. 分析颜色调整逻辑;3. 将数据反馈到 UI 页面。最终实现了颜色随滑块变化而实时更新的效果。
298 1
|
机器学习/深度学习 存储 算法
【2024泰迪杯】B 题:基于多模态特征融合的图像文本检索Python代码实现
本文提供了2024泰迪杯B题“基于多模态特征融合的图像文本检索”的Python代码实现,包括问题分析、多模态特征提取、特征融合模型和算法的构建,以及如何使用召回率作为评价标准进行模型性能评估的详细说明。
274 2
【2024泰迪杯】B 题:基于多模态特征融合的图像文本检索Python代码实现
|
Windows
QT源码拾贝6-11(qwindowswindow)
这篇文章深入探讨了Qt源码中与窗口激活相关的函数,QDebug运算符重载,vscode的变量提示,Windows常用类型名,获取所有窗体的方法,以及QSharedPointer智能指针的使用。
392 0
QT源码拾贝6-11(qwindowswindow)
|
监控 前端开发 数据库连接
Zabbix 5.0 LTS的web界面安装及修改zabbix web管理员的默认密码
这篇文章是关于如何安装Zabbix 5.0 LTS的web界面以及如何修改Zabbix web管理员默认密码的教程。
938 1
|
Linux 项目管理 开发者
管理工具 Pip
【4月更文挑战第8天】本文详尽介绍了Python包管理工具Pip的使用,包括安装、升级Pip,安装与卸载包,管理依赖关系,查看包信息,使用虚拟环境,自定义配置,源码安装,包的升级与降级,以及Pip的高级功能和生态系统扩展。此外,还提到了Pip的安全性、日志、调试、自动化集成和最佳实践,旨在帮助开发者更有效地管理Python项目。学习本文,读者将全面掌握Pip命令,提升项目管理效率。
|
机器学习/深度学习 算法 决策智能
Python高级算法——遗传算法(Genetic Algorithm)
Python高级算法——遗传算法(Genetic Algorithm)
1339 0
|
传感器 监控 安全
物联网在教育中的应用
物联网对教育机构产生了重大影响。教育机构正在选择物联网生态系统,并利用从增强现实到云计算的各种技术