用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业设计下载计算机毕业设计网络工程

WEB可视化管理工具设计和实现

联系方式:点击这里给我发消息QQ212181988
官方主页:www.biye114.com
图片预览: ;论坛转帖
插件情况:
售后服务:请联系客服QQ:212181988
一键分享拿折扣:
  • 好的评价 如果您觉得此软件好,就请您
      0%(0)
  • 差的评价 如果您觉得此软件差,就请您
      0%(0)

软件简介

 随着科技的快速发展,互联网金融等新兴事物的出现使得激烈的行业竞争逐步从业务拓展领域延伸至银行科技领域中来,这种全方位、高强度的竞争形势对我行生产系统的稳定运行、应用系统的开发水平均提出了更高的要求。为了应对高可用、高并发的业务请求,提高环境的响应速度和容错能力,我行在环境架构设计时充分考虑了冗余和负载均衡。在具体实现技术上,引入APACHE和HAPROXY软件。广泛部署在P1、P2、P3、P5平台WEB服务器上的Apache、HAPROXY软件的版本选择、安装方法和参数配置往往因项目组的自身需求和上线时遇到的问题进行不同而异。一些按领域合并部署的环境,出于避免冲突和便于管理的原因,一个WEB服务上可能有多个APACHE和HAPROXY实例,分别为不同的项目提供分发和均衡。
为了保证测试环境和生产环境的一致,测试环境的系统管理员需要基于了解到的安装和配置方法,在SIT、PL1、PL2、PL3、VT、CPT等诸多环境完成复现操作。目前APACHE和HAPROXY软件的安装和配置主要是通过管理员登陆服务器, 手动或通过脚本修改配置文件,考虑到测试环境服务器的数量和不同项目组配置的差异,该项工作十分繁重且难以维护。
本论文基于B/S结构,实现了APACHE实例和HAPROXY实例的可视化管理,支持添加实例、删除实例、修改实例监听端口、转发地址和端口功能,以及用户角色划分和权限控制功能,有效的提高了系统管理工作和软件维护的效率,有利于规范和统一软件的安装和配置,提高环境管理的安全性。

目 录
1 绪论 4
1.1 研究背景及意义 4
1.2 研究内容 5
1.3 论文结构 6
2 功能目标 6
2.1 APACHE软件管理 6
2.2 HAPROXY软件管理 7
2.3授权管理 7
3 关键技术 8
3.1 APACHE软件 8
3.1.1 APACHE基本配置 8
3.1.2 APACHE访问控制规则配置 8
3.1.3 虚拟主机的配置 9
3.1.4 APACHE工作模式配置 10
3.1.5 APACHE持久性连接配置 10
3.2 HAPROXY软件 11
3.3 OO流框架 12
3.4 struts2框架 12
3.4.1 表单自动填充 13
3.4.2拦截器 13
3.4.3 MVC框架 13
3.5 oracle数据库 14
4 设计实现 15
4.1 概要设计 15
4.2 数据库设计 15
4.3 详细设计 16
4.3.1 用户登陆 16
4.3.2 权限校验 17
4.3.3 Apache实例管理 17
4.3.4 Apache端口管理 21
4.3.5 HAPROXY实例管理 24
4.3.6 HAPROXY端口管理 24
5 总结与展望 25
致谢 26

1 绪论
1.1 研究背景及意义
随着科技的快速发展,互联网金融等新兴事物的出现使得激烈的行业竞争逐步从业务拓展领域延伸至银行科技领域中来,这种全方位、高强度的竞争形势对我行生产系统的稳定运行、应用系统的开发水平均提出了更高的要求。为了应对高可用、高并发的业务请求,提高环境的响应速度和容错能力,我行在环境架构设计时充分考虑了冗余和负载均衡。在具体实现技术上,引入APACHE和HAPROXY软件,配合搭载WEBLOGIC中间件的应用服务器,形成了如图1的分层架构。在该结构中, APACHE负责分发请求,F5和HAPROXY构成硬件-软件两级负载均衡,通过各种渠道传入的请求被均衡的分布到互为冗余的多台应用服务器上。

集中开发测试环境作为“新一代”开发测试的基础,承载着我行新一代信息系统整体开发测试工作,为我行信息系统的稳定运行提供了有力保障。其整体设计与部署模式必须符合“新一代”的架构要求。测试环境以生产架构和工艺为实施标准,为各测试任务提供的环境和基础软件。对于大部分基础软件,例如操作系统、数据库、中间件等,已经形成了较为完善的工艺规范。但广泛部署在P1、P2、P3、P5平台WEB服务器上的Apache、HAPROXY软件的版本选择、安装方法和参数配置往往因项目组的自身需求和上线时遇到的问题进行不同而异。例如新一代项目所在的环境,WEB服务器和应用服务器各3台,形成交叉冗余状态,而老系统所在的环境,WEB服务器后的应用服务器可能有多台。此外,一些按领域合并部署的环境,出于避免冲突和便于管理的原因,一个WEB服务上可能有多个APACHE和HAPROXY实例,分别为不同的项目提供分发和均衡。
为了保证测试环境和生产环境的一致,测试环境的系统管理员需要基于了解到的安装和配置方法,在SIT、PL1、PL2、PL3、VT、CPT等诸多环境完成复现操作。目前APACHE和HAPROXY软件的安装和配置主要是通过管理员登陆服务器, 手动或通过脚本修改配置文件,考虑到测试环境服务器的数量和不同项目组配置的差异,该项工作十分繁重且难以维护。此外,在一些情况下,例如非功能测试环境,项目组在新的环境中自行安装实例,往往需要root权限,从集中管理的角度来看,告知ROOT密码无形中提高了环境的管理风险。
针对这种情况,本论文基于B/S结构,实现了APACHE实例和HAPROXY实例的可视化管理,支持添加实例、删除实例、修改实例监听端口、转发地址和端口功能,以及用户角色划分和权限控制功能,有效的提高了系统管理工作和软件维护的效率,有利于规范和统一软件的安装和配置,提高环境管理的安全性。

1.2 研究内容
本论文首先回顾了本人在进入建行北京开发中心一年来所承担的主要工作,总结了在行内和中心规章制度、建行技术架构、测试环境管理等多方面的学习结果。通过介绍本人在导师责任制实施一年以来负责的主要工作和导师制学习目标完成情况,介绍自己在北京开发中心测试环境团队的工作内容。
其次,文章描述了我行生产环境中使用APACHE和HAPROXY软件的场景架构,并对APACHE和HAPROXY软件特点、主要配置及含义进行说明。进一步的,文章简单描述了工具中涉及的主要框架、技术。基于以上描述,分析、总结WEB服务器软件管理工具的必要性和可行性。
再次,文章详细介绍了WEB层可视化管理工具的主要功能、设计架构、使用的框架和技术、模块划分、数据库设计等技术内容。
最后文章对WEB层可视化管理工具已实现的功能和优点进行了总结,并针对尚未实现和有待进一步完善的功能,制定了下一步的工作计划。
1.3 论文结构
论文章节安排如下:
第一章,背景介绍。主要阐述目前我行测试环境WEB服务器软件管理的现状和需求。
第二章,关键技术。本章详细阐述了WEB层可视化管理工具开发中涉及的主要技术、框架。
第三章,功能目标。本章详细阐述了WEB层可视化管理工具的预期功能。
第四章,设计实现。本章根据工具的预期功能,遵循面向对象和基于接口开发的设计原则,首先对工具进行概要设计和模块划分,然后对各个模块的设计和实现进行了详细说明。
第五章,总结与展望。对已实现、未实现和有待进一步完善的功能进行总结,并制定了下一步的工作计划。


2 功能目标
2.1 APACHE软件管理
考虑到实际场景,对于APACHE软件的管理,WEB可视化管理工具拟实现如下功能:
APACHE实例添加:根据用户指定的实例名、启停用户、端口等信息,在指定的启停用户的根目录下创建实例所需要的配置文件、启动程序、日志文件等,提供一个完整的APACHE实例。
APACHE实例删除:根据用户输入,删除指定名称的APACHE实例相关文件、进程。
APACHE实例控制:根据用户指定的APACHE实例名和要执行的操作,对APACHE实例进行启动、停止、重启操作。
APACHE实例监听端口增加:根据用户输入的信息,在相应的实例配置文件中添加监听端口、转发地址和端口信息。
APACHE实例监听端口删除:根据用户输入的信息,在相应的实例配置文件中删除指定的监听端口、转发地址和端口信息。

2.2 HAPROXY软件管理
考虑到实际场景,对于HAPROXY软件的管理,WEB可视化管理工具拟实现如下功能:
HAPROXY实例添加:根据用户指定的实例名、启停用户、端口等信息,在指定的启停用户的根目录下创建实例所需要的配置文件、启动程序、日志文件等,提供一个完整的HAPROXY实例。
HAPROXY实例删除:根据用户输入,删除指定名称的APACHE实例相关文件、进程。
HAPROXY实例控制:根据用户指定的APACHE实例名和要执行的操作,对APACHE实例进行启动、停止、重启操作。
HAPROXY实例监听端口增加:根据用户输入的信息,在相应的实例配置文件中添加监听端口、转发地址和端口信息。
HAPROXY实例监听端口删除:根据用户输入的信息,在相应的实例配置文件中删除指定的监听端口、转发地址和端口信息。

2.3 授权管理
考虑到实际场景中的使用用户,本工具将用户角色分为管理员(Admin)和普通用户(Normal),权限分为创建(Add)、删除(Delete)、控制(Control),其中控制权限包括启动、停止、重启,权限对象包括APACHE实例,APACHE端口,HAPROXY实例,HAPROXY端口。
管理员拥有所有权限,可以根据具体系统、测试阶段等因素,将不同权限授予给普通用户或从普通用户收回。例如可以将一个实例的端口添加权限授予给某一个用户,使该用户可以在该实例上添加监听端口和转发地址、端口。


3 关键技术
3.1 APACHE软件
Apache是最流行的Web服务器端软件之一,可以将收到的请求按照配置规则分发到不同的虚拟主机节点、地址或端口上。在测试环境中,该软件主要需要配置监听端口、启停控制用户和用户组、转发端口和地址、虚拟服务器节点、线程属性、日志路径等参数。APACHE的配置主要是在Conf文件中进行的,在APACHE的启动时,可以通过httpd命令后接参数的方式指定要使用的配置文件。
3.1.1 APACHE基本配置
APACHE的基本配置包括监听端口、PID 文件位置、启停用户、日志等。
参数名 参数说明
PidFile logs/httpd.pid 第一个httpd进程(所有其他进程的父进程)的进程号文件位置
Listen 80 服务器监听的端口号
ServerName www.clusting.com:80 主站点名称(网站的主机名)
User 启停用户名
Group 启停用户组
ErrorLog 错误日志路径
CustomLog 访问日志路径

3.1.2 APACHE访问控制规则配置
典型的访问控制规则是为主机上的某一或某些目录指定访问过滤规则,例如如下的示例设定了对目录/mnt/web/clusting的访问控制规则。
<Directory "/mnt/web/clusting">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
其中,Options配置在目标目录使用哪些特性,例如取值Indexes时表示如果用户访问该目找不到DirectoryIndex指定的主页文件(例如index.html),则返回该目录下的文件列表给用户。
Order用于配置在访问时Allow和Deny两个访问规则哪个优先。
Allow表示允许访问的主机列表(可用域名或子网,例如:Allow from 192.168.0.0/16)。
Deny表示拒绝访问的主机列表。
3.1.3 虚拟主机的配置
APACHE实例提供了同时监听多个端口,并分发到多个地址的功能,如果要使用此功能,可以通过如下几种方法在conf文件中设置。
基于IP地址的虚拟主机配置 Listen 80
<VirtualHost 172.20.30.40>
DocumentRoot /www/example1
ServerName www.example1.com
</VirtualHost>
<VirtualHost 172.20.30.50>
DocumentRoot /www/example2
ServerName www.example2.org
</VirtualHost>
基于IP和多端口的虚拟主机配置 Listen 172.20.30.40:8080
Listen 172.20.30.50:80
Listen 172.20.30.50:8080
<VirtualHost 172.20.30.40:8080>
DocumentRoot /www/example1-8080
ServerName www.example1.com
</VirtualHost>
<VirtualHost 172.20.30.50:80>
DocumentRoot /www/example2-80
ServerName www.example1.org
</VirtualHost>
<VirtualHost 172.20.30.50:8080>
DocumentRoot /www/example2-8080
ServerName www.example2.org
</VirtualHost>
单个IP地址的服务器上基于域名的虚拟主机配置 Listen 80
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /www/example1
ServerName www.example1.com
ServerAlias example1.com. *.example1.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/example2
ServerName www.example2.org
</VirtualHost>

3.1.4 APACHE工作模式配置
apache有两种工作模式:prefork和worker。prefork工作模式下,服务器启动后起动5个httpd进程(加父进程共6个,通过ps -ax|grep httpd命令可以看到)。当有用户连接时,apache会使用一个空闲进程为该连接服务,同时父进程会fork一个子进程。直到内存中的空闲进程达到MaxSpareServers。该模式是为了兼容一些旧版本的程序。worker模式是由线程来监听客户的连接,当有新客户连接时,由其中的一个空闲线程接受连接,服务器在启动时启动两个进程,每个进程产生的线程数是固定的(ThreadsPerChild决定),因此启动时有50个线程。当50个线程不够用时,服务器自动fork一个进程,再产生25个线程。可以通过httpd -l命令列出apache的所有模块,查看工作模式。如果httpd -l列出worker.c,表示是worker模式,如果列出prefork.c,表示是prefork模式。
如果使用prefork,则需要对下面的段进行配置:
<IfModule prefork.c>
StartServers 5 #启动apache时启动的httpd进程个数。
MinSpareServers 5 #服务器保持的最小空闲进程数。
MaxSpareServers 10 #服务器保持的最大空闲进程数。
MaxClients 150 #最大并发连接数。
MaxRequestsPerChild 1000 #每个子进程被请求服务多少次后被kill掉。0表示不限制。
</IfModule>
如果使用worker,则需要对下面的段进行配置:
<IfModule worker.c>
StartServers 2 #启动apache时启动的httpd进程个数。
MaxClients 150 #最大并发连接数。
MinSpareThreads 25 #服务器保持的最小空闲线程数。
MaxSpareThreads 75 #服务器保持的最大空闲线程数。
ThreadsPerChild 25 #每个子进程的产生的线程数。
MaxRequestsPerChild 0 #每个子进程被请求服务多少次后被kill掉。0表示不限制。
</IfModule>
3.1.5 APACHE持久性连接配置
APACHE可以对请求的频率、保持时间进行配置,在实际使用时,需要根据交易的具体特点进行合理配置。例如厦开一项目组交易测试时发现,由于APACHE中连接保持时间设置过短,可能会出现交易后台查询未完成而被中断的现象。而如果该值设置过长,则可能会出现Hang进程占用服务器资源导致性能下降的现象。持久性连接的配置主要包括:
KeepAlive On 开启持久性连接功能。即当客户端连接到服务器,下载完数据后仍然保持连接状态
MaxKeepAliveRequests 100 一个连接服务的最多请求次数
KeepAliveTimeout 30 持续连接多长时间,该连接没有再请求数据,则断开该连接。缺省为15秒

3.2 HAPROXY软件
HAPROXY软件提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,可以将请求按照设置的负载均衡策略和ACL访问控制规则自动均衡到后面的AP服务器上,实现软件层次的负载均衡。HAPROXY提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAPROXY特别适用于那些负载特大的web站点,这些站点通常又需要会保持或七层处理。HAPROXY运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中,同时可以保护服务器不被暴露到网络上。
HAPROXY配置中分成五部分内容,当然这些组件不是必选的,可以根据需要选择作为配置。
global 参数是进程级的,通常和操作系统(OS)相关。这些参数一般只设置一次,如果配置无误,就不需要再次配置进行修改;
default 配置默认参数的,这些参数可以被利用配置到frontend,backend,listen组件;
frontend 接收请求的前端虚拟节点,Frontend可以根据规则直接指定具体使用后端的backend(可动态选择);
backend 后端服务集群的配置,是真实的服务器,一个Backend对应一个或者多个实体服务器;
listen Frontend和Backend的组合体。
测试环境中,对于HaProxy,主要需要配置其监听端口、ACL规则、转发的AP的地址和端口、连接健康校验属性、Cookie属性等参数。

3.3 OO流框架
OO流,全程为Operations Orchestration Flow。HP Operations Orchestration是一个功能强大的自动运维工具,它能够提供部署、配置管理等功能。本工具借助HP Operations Orchestration实现了JAVA调用Shell脚本到目标服务器执行的效果。HP Operations Orchestration架构如下。

OO Flow由 Step,Transition组成, 一个Flow可以调用另外一个Flow(这个Flow成为Sub Flow),一个Operatiion就是一个实例化的Step。每一个Flow都可以设置它的启动Scheduler。 Flow中每一个Step也可以设置Scheduler, 一个Flow可以设置的Scheduler多个, 因此OO可以设置每个Flow多个Scheduler, 解决法定时间的Exception情况。OO是一个二次开发的编程工具,因此对于常用的编程的逻辑都可以支持,比如顺序、分支和循环。OO支持常用的标准接口,如CLI,HTTP, WEB SERVICE, SMTP, SNMP等,同时OO可以和IBM,BMC, CA和HP等企业级的产品的接口。

下载地址

点击此处→注册会员上传设计赚钱
以上是大纲和介绍,如需要完整的资料请在线购买.

软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 本站所有资料均已审核通过,内容原创保密,标准格式,质量保证
* 无需注册,点击在线购买后即可获取该套毕业设计(论文)完整
* 支付后请联系在线客服QQ:212181988发送资料
  • 官方微信