`
Inmethetiger
  • 浏览: 108731 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nginx简单的分布式部署方案

阅读更多
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
这样,其中一台宕机,任然可以正常访问。
1
0
分享到:
评论
4 楼 lz958942 2014-06-19  
Inmethetiger 写道
Long_yuan 写道
session 共享呢?

1:不使用session,换用cookie
2:session存在memcache或者redis中

这样数据安全和和程序开发,如何做到较优?
3 楼 asialee 2014-06-19  
不错,这两天正好用到,其实这个里面还缺健康检查和负载均衡的配置。
2 楼 Inmethetiger 2014-06-19  
Long_yuan 写道
session 共享呢?

1:不使用session,换用cookie
2:session存在memcache或者redis中
1 楼 Long_yuan 2014-06-19  
session 共享呢?

相关推荐

    Nginx+Tomcat分布式部署案例.docx

    Nginx+Tomcat分布式部署案例

    分布式组件部署文档和脚本

    jdk、redis、zookeeper、kafka、mongodb、jenkins、svn、mariadb(mysql)、sonarQube 、nginx、svn数据迁移、mysql备份附带脚本等一些自己整理的文档

    使用nginx实现分布式限流的方法

    我这里部署的是一个spring boot 项目 里面暴露了如下接口, 很简单 暴露了一个 get 请求返回 hello world 的restful 接口. 将此程序部署到 linux 服务器上. 部署步奏不再赘述, 自行百度 spring boot 部署 即可. 在此...

    FastDFS文件系统+Nginx部署方案.docx

    fastDFS 是以C语言开发的一项开源轻量级分布式文件系统,他对文件进行管理,主要功能有:文件存储,文件同步,文件访问(文件上传/下载),特别适合以文件为载体的在线服务,如图片网站,视频网站等

    Nginx+Tomcat负载平衡,Redis管理session存储

    分布式web server集群部署后需要实现session共享,针对 tomcat 服务器的实现方案多种多样,比如 tomcat cluster session 广播、nginx IP hash策略、nginx sticky module等方案,本文主要介绍了使用 redis 服务器进行...

    Java架构师技术栈.txt

    互联网安全架构-Web常用攻击手段之防盗链&防止CSRF模拟请求............12分布式解决方案-分布式配置中心-SpringBoot客户端整合Apollo分布式配置中心.......14-分布式解决方案-分布式锁解决解决方案-基于Redis方式...

    基于CentOS 7的Kubernetes安装全过程(含附件)

    基于CentOS 7的Kubernetes...Kubernetes(简称K8s)具有完备的集群管理能力,它是当前被业界广泛认可和看好的Docker分布式系统解决方案,能够实现自动化资源管理、无缝动态扩容以及跨多个数据中心的资源利用率最大化。

    Java思维导图xmind文件+导出图片

    ActiveMQ高可用集群企业及部署方案 ActiveMQ P2P及PUB/SUB模式详解 ActiveMQ消息确认及重发策略 ActiveMQ基于Spring完成分布式消息队列实战 Kafka Kafka基于Zookeeper搭建高可用集群实战 kafka消息处理过程...

    分布式系统设计与实现1

    单节点系统部署在一台机器上来了直接写代码不需要考虑复杂应用场景分布式系统方案1前后端分离,前端使用CDN来进行负载应用层使用nginx进行负载数据库层换上了oc

    Puppet实战

    实战篇(第11~13章)通过几个经典案例,包括大规模Nginx集群的部署方案、分布式监控系统部署方案、OpenStack快速部署方案等,使读者能快速将Puppet运用到实践中;进阶篇(第14~20章)综合讲解了Puppet的扩展模式、...

    分布式软件测试管理系统的设计与实现

    web服务部署多个,nginx反向代理,其中要实现session共享,采用spring-session的redis集群存储方案 mysql主从复制,读写分离 3技术要点 后端: spring-boot、spring-session、spring-security等全家桶 dubbo + ...

    毕业设计-基于Java的分布式软件测试管理系统的设计与实现.zip

    web服务部署多个,nginx反向代理,其中要实现session共享,采用spring-session的redis集群存储方案 mysql主从复制,读写分离 3技术要点 后端: spring-boot、spring-session、spring-security等全家桶 dubbo + ...

    【spring-boot-seckill分布式秒杀系统 v1.0】从0到1构建的java秒杀系统源码+安装说明

    6、最后,为了支撑更高的并发,追求更好的性能,可以对服务器的部署模型进行优化,部分请求走正常的秒杀流程,部分请求直接返回秒杀失败,缺点是开发部署时需要维护两套逻辑。 分层优化 1、前端优化:活动开始前生成...

    智慧物业系统支持微信公众号、小程序、PC、H5、智能硬件多端.zip

    后端采用Koa + Typescript轻量级构建,支持分布式部署; 前端使用vue + view-design 轻量级开发方案,借助node.js的高io、异步、cluster等特性 完善的权限管理,精细到每一个菜单 对接公众号和小程序,数据打通 ...

    基于SpringBoot+SpringCloud+Mybatis主流框架搭建的分布式敏捷开发系统架构

     基于 Spring Boot + Spring Cloud + Mybatis 为主流框架搭建的分布式敏捷开发系统架构,为中、小型项目打造企业级基础开发多种解决方案。 项目模块简介 mi-common 框架公共模块,提供相关共用工具类,以及代码...

    全新JAVAEE大神完美就业实战课程 超150G巨制课程轻松实战JAVAEE课程 就业部分.txt

    09-SSH企业案例_CRM-客户管理系统(6天) ... day02_登录_客户管理模块 day03_客户管理&联系人管理...9品优购部署方案 10Docker简介 11Docker安装与启动 12Docker镜像操作 13Docker容器操作 14部署应用 15备份与迁移

    Qt+go-Fastdfs 仿百度云盘开发笔记代码一,试用Qt实现登录和注册功能

    Qt+go-Fastdfs 仿百度云盘开发笔记,​基于Nginx作为反向代理和轻量级web服务器,客户端使用Qt搭建,后台...分布式解决方案用Go-Fastdfs,简介和安装部署可参考Go-Fastdfs安装部署,数据存储使用mysql和redis进行缓存。

    over-server:架构相关:[进度20% ]记录分布式与微服务概念与实践,附Nginx、Mysql、Redis、Docker、K8S等常用服务端技术

    分布式方案:将该任务拆分成 10 个子任务,每个子任务只需要 0.1 小时完成,10 台机器分别部署不同的子任务,1 个任务完成总计需要 0.1 小时,10 个任务完成耗费 1 小时。集群与分布式:集群:代表业务的物理的形态...

    2022年F5多云应用服务科技峰会PPT合集(39份).zip

    NGINX技术中台方案 从机器人攻击看应用安全需求的变化 拥抱云原生,构筑安全新防线 云原生全栈防护-打造容器云的多维安全 低延时高并发安全防护架构 快速部署管理分布式应用 从F5新一代平台看应用交付的未来与趋势 ...

    四家二线大厂面经.pdf

    5、Redis 和 Zookeeper 分别是如何实现分布式锁的?优缺点各是什么? 6、目前线上业务的 Redis 使用了什么部署架构?了解哨兵是如何保证 Redis 高可用的吗?知道哨兵架构下 Master 节点的选举流程吗? 7、是否了解...

Global site tag (gtag.js) - Google Analytics