FineReport关于tomcat集群部署的方案
多台服务器集群后,配置权限、数据连接、模板、定时调度等,只能每台服务器一个个配置,不会自动同步到所有服务器。
针对上述情况,在FineReport中提供新集群部署插件,将xml配置文件、finedb/logdb数据(定时任务、报表目录管理、批量导入、统计信息)的修改都对主机生效。其他辅机的信息读取也都从主机读取,保证了数据同步。
实现了灾备,即主机当即后,次主机会上位接替主机的工作,保证系统正常运作。
同时还增加了集群灾备之文件同步,会将主机的finedb、xml、模板、jar包、插件等等备份到其他节点的应用上。支持可以手动同步和自动同步。
插件介绍
设计器插件、服务器插件安装好之后,新集群部署,有主机、次主机、辅机之分,配置文件都从主机读取,辅机只能用作计算引擎分担压力,有点事当改配置文件的时候,不需要每个节点都去修改,直接改主机即可。
分布式集群
分布式集群文件系统:每台计算机各自提供自己的存储空间,并各自协调管理所有计算机节点中的文件。
这里测试修改主机的报表管理目录树平台标题,然后可以看到辅机会同步修改的配置。其中报表管理目录树存在finedb中,平台样式的平台标题存在fsconfig.xml中。
- 环境准备
设置tomcat1、tomcat2、tomcat3集群,tomcat1为主机,tomcat2为辅机,tomcat3为次主机,tomcat集群。
WebReport工程分别放在tomcat下的webapps文件夹里
- 配置文件
集群配置完成之后,修改将配置包resource文件夹下的cluster.xml打开,如果没有这个文件的话,就新建一个,基本内容如下:
PublicURL是集群默认跳转地址,比如集群时对外地址是自定义端口的, ip:8888/WebReport/ReportServer?op=fs我们并不能获取到这个8888端口,因此这里需要填写实际的ip:端口号,如果这段省略不写,默认跳转80端口。
ServiceName是为tomcat的名字。
IP是该台服务器内网中的IP,就是其它服务器能与之通信的IP。
Port是报表应用的端口号,假如是部署在tomcat下,那么就是tomcat的端口号,默认是8080。例如我们的内置服务器是8079.
WebAppName是报表应用的名称,我们默认的是WebReport。
详细代码如下:
<?xml version="1.0" encoding="UTF-8" ?>
<ClusterConfig useCluster="true">
<PublicURL>
ip:端口
</PublicURL>
<ClusterService isMain="true">
<ServiceName>tomcat1</ServiceName>
<ip>192.168.101.82</ip>
<port>6080</port>
<WebAppName>WebReport</WebAppName>
</ClusterService>
<ClusterService>
<ServiceName>tomcat3</ServiceName>
<ip>192.168.101.82</ip>
<port>8080</port>
<WebAppName>WebReport</WebAppName>
</ClusterService>
<ClusterService isVice="true">
<ServiceName>tomcat2</ServiceName>
<ip>192.168.101.82</ip>
<port>7080</port>
<WebAppName>WebReport</WebAppName>
</ClusterService>
</ClusterConfig>
- 测试
启动工程,等3分钟后,关闭主机,刷新fs和访问模板,此时是失败的,再等待3分钟,主次机上位,再次刷新fs和访问模板,此时是成功的。
集群同步设置
点击管理系统-集群同步,点击设置,选择需要同步的内容:配置文件(resources目录)、模板(reportlets目录)、插件和jar(plugins和lib文件夹),点击确定,然后可以选择手动同步,或者设置定时同步,点击保存即可,如下图:
共享式集群
共享式文件集群系统:多台计算机识别到同样的存储空间,并相互协调共同管理其上的文件,又被称为共享文件系统;
- 环境准备
设置tomcat1和tomcat2集群,tomcat1为主机,tomcat2为辅机,tomcat集群。
Web项目部署在不同的服务器上,一般服务器都在同一局域网,那么共享式文件集群该如何访问呢?
这里通过共享局域网里某台电脑上的工程文件夹,多个tomcat都从这个共享的工程文件夹里读,如下图:
tomcat1和tomcat2下,修改conf里server.xml文件,添加一个Context,指向项目的目录
- 配置文件
集群配置完成之后,修改将配置包resource文件夹下的cluster.xml打开,如果没有cluster.xml,则新建一个,基本内容如下:
FineReport关于tomcat集群部署的方案的更多相关文章
- 使用Tomcat-redis-session-manager来实现Tomcat集群部署中的Session共享
一.工作中因为要使用到Tomcat集群部署,此时就涉及到了Session共享问题,主要有三种解决方案: 1.使用数据库来存储Session 2.使用Cookie来存储Session 3.使用Redis ...
- Tomcat部署问题,Tomcat集群部署问题。
1.服务器崩溃,指的是Tomcat程序崩溃,还是服务器系统崩溃? 答:都有可能. 所以一台服务器上部署多个Tomcat可以防止程序崩溃问题.但不能避免服务器崩溃,要避免服务器崩溃,就要采用服务器集群. ...
- Nginx+Tomcat集群部署
为了获取更好的性能,我们常常需要将tomcat进行集群部署.下文通过nginx转发实现tomcat集群,并通过nginx-upstream-jvm-route插件保证session的粘滞. 应用场景环 ...
- tomcat集群部署
1.apache只有处理静态事物的能力, 而tomcat的强项就是处理动态的请求 2.由apache作为入口,如果是请求静态页面或者是静态文件,由apache直接提供,如果是请求动态页面,则让apac ...
- apache+tomcat集群部署笔记
前提条件 安装gcc,gcc-c++两个编译器 yum install gcc yum install gcc-c++ 接下来开始安装集群相关环境: 1.下载apr,apr-util,pcre,apa ...
- Tomcat集群环境下session共享方案 通过memcached 方法实现
对于web应用集群的技术实现而言,最大的难点就是:如何能在集群中的多个节点之间保持数据的一致性,会话(Session)信息是这些数据中最重要的一块.要实现这一点, 大体上有两种方式:一种是把所有Ses ...
- 使用Tomcat+Redis来实现集群部署中的Session共享问题
一.工作中因为要使用到Tomcat集群部署,此时就涉及到了Session共享问题,主要有三种解决方案: 1.使用数据库来存储Session 2.使用Cookie来存储Session 3.使用Redis ...
- Nginx+Tomcat+Memcached 实现集群部署时Session共享
Nginx+Tomcat+Memcached 实现集群部署时Session共享 一.简介 我们系统经常要保存用户登录信息,有Cookie和Session机制,Cookie客户端保存用户信息,Sessi ...
- Tomcat集群+Nginx+Redis服务搭建
由于公司新业务突然上来了,单个Tomcat实例已经不能满足业务发展的需要了,只能通过搭建集群来解决问题了.所以就出现了下面的内容: 1.Redis保存Session信息 为了保存Session信息在集 ...
随机推荐
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- 防线修建 bzoj 2300
防线修建(1s 512MB)defense [问题描述] 近来A国和B国的矛盾激化,为了预防不测,A国准备修建一条长长的防线,当然修建防线的话,肯定要把需要保护的城市修在防线内部了.可是A国上层现在还 ...
- Android 解析XML文件和生成XML文件
解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...
- [OC] NSURLSession
有的程序员老了,还没听过NSURLSession 有的程序员还嫩,没用过NSURLConnection 有的程序员很单纯,他只知道AFN. NSURLConnection在iOS9被宣布弃用,NSUR ...
- React Native 之 Text的使用
前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...
- mysql数据库主从同步
环境: Mater: CentOS7.1 5.5.52-MariaDB 192.168.108.133 Slave: CentOS7.1 5.5.52-MariaDB 192.168. ...
- Linux基础介绍【第三篇】
更改SSH服务端远程登录的配置 windows服务端的默认远程管理端口是3389,管理员用户是administrator,普通用户是guest.Linux的管理用户是root,普通用户默认有很多个,远 ...
- 《月之猎人 (Moon Hunters)》主角设计
原文链接 游戏开发人员,你们好! 我是 Kitfox Games 工作室的总监 Tanya,我们的工作室位于加拿大的蒙特利尔,拥有六名员工. 我们 3 月份发布了<月之猎人>游戏的桌面版, ...
- TCP三次握手图解
- linux常用命令(3)mkdir命令
mkdir命令1 命令格式:mkdir [选项]目录名2 命令功能:通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录.要创建文件夹或目录的用户必须对所创 ...