2014/5/8
设想:每台服务器上都部署相关模块,比如在192.168.1.9上部署所有模块,不同的模块部署到不同的tomcat上。假如有10个模块,则分别配置10个tomcat,他们的端口号各不相同。同样的,在其他服务器上也同时部署相同的模块。
使用nginx做负载均衡。
下面是我写的一个小demo和配置。
为了是Url好看一点,我在host上配置了如下
192.168.1.6 liuyiyou.com
在一台机器上配置两个tomcat。端口分别是8080,9080.
每个tomcat上都部署了一个模块test。事实上,两个模块应该完全相同。但是为了测试。我显示的内容不同。其中8080上显示的是1而8081上显示的是2
在nginx上做如下配置:
http {
upstream test {
#根据ip计算将请求分配各那个后端tomcat,许多人误认为可以解决session问题,其实并不能。
#同一机器在多网情况下,路由切换,ip可能不同
#ip_hash;
server liuyiyou.com:9080;
server liuyiyou.com:8080;
}
server {
listen 80;
server_name liuyiyou.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_connect_timeout 3;
proxy_send_timeout 30;
proxy_read_timeout 30;
proxy_pass http://test/;
}
}
}
主要是upstream中的配置。该种配置下,是按照时间分别访问不同的模块
启动两个tomcat。在浏览器中输入:http://liuyiyou.com/test/index.jsp
则分别打印1 和2
假如1死了。则直接打印2
实验成功后:
之前:
1:192.168.1.5 已启动 lcp_server_5 登录模块
2:192.168.1.9 已启动 lcp_server_3 搜索模块和用户中心模块
3:192.168.1.11 已启动 lcp_server_1
3:192.168.1.10 已启动 lcp_server_4 购物车模块
3:192.168.1.12 已启动 lcp_server_2
修改后:
每个服务器上都有全部的模块。
只是不同的模块对应不同端口的tomcat
这样,其中一台宕机,任然可以正常访问。
相关推荐
Nginx+Tomcat分布式部署案例
### 分布式部署方案:Redis + Tomcat + Nginx 在现代Web应用开发中,随着用户数量的增长和业务需求的变化,单体架构往往难以满足高性能、高可用性的要求,因此分布式部署成为一种常见的解决方案。本文将围绕“Redis...
【Linux平台CentOS7系统 - ELK+logback+kafka+nginx搭建分布式日志分析平台】 在复杂的IT环境中,日志管理和分析对于诊断问题、优化性能以及确保系统稳定性至关重要。ELK栈(Elasticsearch、Logstash、Kibana)正是...
在分布式部署中,Nginx通常作为前端服务器,负责接收客户端请求,然后将这些请求转发到后端的多个服务器,实现负载平衡。 3. **IIS**:IIS是微软提供的一个全面的Web服务解决方案,支持多种Web应用程序,包括ASP...
jdk、redis、zookeeper、kafka、mongodb、jenkins、svn、mariadb(mysql)、sonarQube 、nginx、svn数据迁移、mysql备份附带脚本等一些自己整理的文档
【FastDFS分布式文件系统部署方案】 FastDFS是一个开源的高性能分布式文件系统,它专注于解决海量数据存储的问题,尤其适用于中小文件(建议大小在4KB到500MB之间)的在线服务。FastDFS提供了文件存储、文件同步和...
在实际部署中,为了提高性能和可用性,通常会有多台Tracker和Storage服务器,以及多台运行Nginx的Web服务器,形成集群。同时,为了保证数据安全,FastDFS还提供了数据备份和同步机制。 综上所述,通过FastDFS和...
因此,我们需要采用分布式Session解决方案,如使用Redis作为Session存储。Nginx可以通过设置upstream配置,配合lua模块(如lua-nginx-module)来与Redis交互,实现请求中的Session数据读写。 项目“secKill-master...
本文将围绕“Nginx + keepalived + MongoDB + haproxy + Sphinx”这一技术栈,详细介绍如何实现一个稳定的分布式集群部署方案。 #### 二、关键技术解析 ##### 1. Nginx **定义**:Nginx是一款高性能的HTTP和反向...
FastDFS是一款轻量级的开源分布式文件系统,主要用C语言编写,其设计目标是对文件进行管理,包括文件存储、文件同步以及文件访问(上传和下载)。FastDFS特别适合那些以文件为载体的在线服务,例如图片分享网站、...
### zabbix分布式部署手册知识点详解 #### 一、概述 Zabbix是一款开源的企业级网络监控解决方案,能够对网络中的各种设备和服务进行实时监控,并提供报警机制。本文档旨在指导用户如何在分布式环境中部署Zabbix监控...
【FastDFS概述】 ...在Linux环境中部署FastDFS并结合Nginx,可以构建出一个强大且易于管理的文件存储解决方案。通过理解其核心概念、工作流程和安装步骤,开发者可以更好地利用FastDFS来满足各种业务需求。
"FastDFS+nginx单点部署" FastDFS是开源的分布式文件系统,用于解决大规模文件存储和管理问题。...本文档提供了FastDFS和nginx的单点部署解决方案,旨在帮助开发者快速搭建高可用的文件存储系统。
综上所述,Nginx反向代理MogileFS分布式存储系统的部署和配置,涵盖了从分布式存储概念的理解,到系统架构的搭建,再到实际应用层面的细节处理。整个过程需要对Nginx、MogileFS、MySQL和系统安装等各方面有较为全面...
总结来说,FastDFS-nginx-module 1.24 是一个强大且成熟的解决方案,它将 FastDFS 的分布式文件存储能力和 Nginx 的高性能服务相结合,为开发者提供了一种便捷、高效的文件服务器搭建方式,对于需要处理大量文件操作...
首先,Loki是Prometheus Labs开发的一款分布式日志聚合系统,它设计的目标是提供一种简单、可扩展且成本效益高的日志管理解决方案。Loki不需要复杂的正则表达式或JSON路径来查询日志,而是使用标签来对日志进行索引...
FastDFS设计简单,易于部署,支持多种编程语言,使得它成为许多开发者的首选。 在安装FastDFS时,我们需要准备以下组件:libfastcommon(FastDFS的公共库)、fastdfs(FastDFS的核心服务)、fastdfs-nginx-module...
分布式web server集群部署后需要实现session共享,针对 tomcat 服务器的实现方案多种多样,比如 tomcat cluster session 广播、nginx IP hash策略、nginx sticky module等方案,本文主要介绍了使用 redis 服务器进行...
分布式部署是大型系统或高并发环境下的常见解决方案,它可以将负载分散到多个服务器上,降低单点故障的风险,同时提高服务的响应速度。 分布式Tomcat的实现通常涉及以下几个关键知识点: 1. **负载均衡**:通过...