LANMT架构搭建jspxcms
LANMT架构搭建jspxcms
大纲:
前言
LANMT是什么?
实验拓扑图
实验环境
实验步骤
Tomcat配置
MySQL配置
jspxcms安装
Apache Httpd配置并测试
Nginx配置并测试
总结
前言
上篇文章我们介绍了
tomcat
的基础使用, 这篇文章我们介绍LANMT
架构并用其实现jspxcms 6.0
LANMT是什么?
我们之前了解了
LAMP
,LNMP
, 为什么会出现LANMT的架构呢?以前我们解决单台
LAMP
架构不能承受高并发的问题时, 首先想到的不应该将其做成负载均衡集群, 而是先要将其各组件进行分离, 例如:MySQL
单独出来,php-fpm
运行在单台主机等解决方式. 在生产环境中tomcat
一般来说不会直接面向用户, 前端一般会使用Nginx
或Apache Httpd
进行反向代理, 用户只需要和Nginx
或者Apache Httpd
保持连接, 可以减缓Tomcat
连接器的负担可能又有朋友会有疑问了, 我们使用一个
web
服务器进行反代就行了, 为什么要使用Nginx
和Apache Httpd
一起呢?
因为Nginx
对静态请求的响应速度是无语伦比的, 我们可以在前端对其进行动静分离, 将图片和CSS等请求通过Nginx
响应, 而Apache Httpd
因为同属于ASF
,Apache Httpd
有很多种反代tomcat
的方法, 例如: 我们可以通过proxy_http_module
,proxy_ajp_module
,proxy_ajp_module
等模块反向代理tomcat
, 因为ajp
协议通过二进制格式传输, 而http
协议通过文本格式从传输, 所以效率会更高, 我们可以将Apache Httpd
和Tomcat
安装在一台主机上实现整套架构
实验拓扑图
实验环境
主机 | IP | 功用 |
---|---|---|
node1.anyisalin.com | 172.16.1.2 | Nginx |
node2.anyisalin.com | 172.16.1.3 | Apache, Tomcat, MySQL |
实验步骤
Tomcat配置
我们首先配置
Tomcat
,安装过程这里不做叙述,不明白的可以看我上篇博客: tomcat基础进阶
安装Tomcat
[root @node1 ~] # [root@node1 ~]# wget http://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.0.33/bin/apache-tomcat-8.0.33.tar.gz[root @node1 ~] # tar xf apache-tomcat-8.0.33.tar.gz -C /usr/local/[root @node1 ~] # cd /usr/local ; ln -sv apache-tomcat-8.0.33 tomcat ; cd ~[root @node1 ~] # wget http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.rpm #如果下载出错,使用浏览器下载[root @node1 ~] # rpm -ivh jdk-8u77-linux-x64.rpm #安装JDK[root @node1 ~] # vim /etc/profile.d/java.sh #定义JAVA_HOMEexport JAVA_HOME = /usr /java /latest export PATH=$JAVA_HOME/bin : $PATH[root @node1 ~] # vim /etc/profile.d/tomcat.sh #配置tomcat的环境变量export CATALINA_BASE = /usr/local /tomcat export PATH= $CATALINA_BASE/bin : $PATH[root @node1 ~] # source /etc/profile.d/tomcat.sh[root @node1 ~] # source /etc/profile.d/java.sh
配置虚拟主机
[root@node2 ~]# vim /usr/local/tomcat/conf/server.xml #设置默认虚拟主机为web1.anyisalin.com <Engine name="Catalina" defaultHost="web1.anyisalin.com" jvmRoute="TomcatA"> #添加虚拟主机 <Host name="web1.anyisalin.com" appBase="/data/webapps/" unpackWARS="true" autoDeploy="true"><Context path="" docBase="/data/webapps/ROOT" reloadable="true" /><Valve className="org.apache.catalina.valves.AccessLogValve" directory="/data/logs"prefix="web1_access_log." suffix=".txt"pattern="%h %l %u %t "%r" %s %b" /> </Host>[root@node2 ~]# mkdir -PV /data/webapps/ #创建目录 [root@node2 ~]# cd /data/webapps/ [root@node2 webapps]# wget http://www.jspxcms.com/uploads/jspxcms-6.0.1-release.zip #下载jspxcms [root@node2 webapps]# unzip jspxcms-6.0.1-release.zip #解压到当前目录 [root@node2 webapps]# catalina.sh start #启动tomcat
MySQL配置
安装MySQL
[root @node2 webapps] # yum install mysql-server -y[root @node2 webapps] # service mysqld start
创建数据库和用户
[root@node2 webapps]# mysqlmysql> GRANT ALL ON jspxcms.* TO jsp@'%' IDENTIFIED BY 'passwd'; Query OK, 0 rows affected (0.01 sec)mysql> CREATE DATABASE jspxcms; Query OK, 1 row affected (0.00 sec)mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
jspxcms安装
安装步骤
访问172.16.1.2:8080安装
jspxcms
重启tomcat
并测试
[root @node2 webapps] # catalina.sh stop[root @node2 webapps] # catalina.sh start
再次访问172.16.1.3:8080 , 第一次访问可能有点慢
Apache Httpd配置并测试
安装httpd
[root @node2 ~] # yum install httpd -y
配置httpd
[root@node2 ~]# cd /etc/httpd/conf.d/ [root@node2 ~]# vim virt.conf <VirtualHost *:80>ServerName www.anyisalin.comProxyRequests Off ProxyPass / ajp://172.16.1.3:8009/ ProxyPa***everse / ajp://172.16.1.3:8009/ </VirtualHost>[root@node2 ~] service httpd start
测试反向代理
我们直接通过
80
端口访问httpd
,能够显示jspxcms
页面
Nginx配置并测试
安装nginx
在node1上安装配置 [root@node1 ~]# yum install nginx -y #确保有epel源
配置nginx
[root@node1 ~]# vim /etc/nginx/conf.d/default.conf #修改以下字段location / {proxy_pass http://172.16.1.3;}[root@node1 ~]# service nginx start #启动nginx
测试nginx
我们通过访问
nginx
就能够访问隐藏在后端的Tomcat
中的jspxcms
了
总结
我们这样就实现了一个
LANMT
架构的jspxcms
站点,是不是很Easy
呢?我们实现了一个LANMT
架构,按照我们以前的套路,下篇我们应该实现后端多个Tomcat
实例负载均衡了~,~作者水平很低,如果有错误及时指出,如果你觉得本文写的好请点一波赞~(≧▽≦)/~
作者: AnyISaIln QQ: 1449472454
感谢: MageEdu
转载于:https://blog.51cto.com/anyisalin/1766669
LANMT架构搭建jspxcms相关推荐
- Android组件化打造知乎日报系列(一)—— 项目架构搭建
Android组件化打造第三方知乎日报系列(一)-- 项目架构搭建 本节完整代码可以前往github查看,项目地址:github.com/N0tExpectEr- Android组件化打造知乎日报系列 ...
- asp.net mvc4三层架构搭建
asp.net mvc4三层架构搭建,有需要的朋友可以参考下. 1.建立解决方案: 2.建立一个asp.net mvc4的基本项目WebApp作为三层架构中的UI层(表现层): 2.1.表现层中控制器 ...
- 03-iOS蓝牙架构搭建
蓝牙架构的搭建 前言:笔者认为,如果只是单纯的传授大家代码怎么敲,那么大家很有可能在实际开发中难以运用.刚好本人曾经参与过多款智能硬件开发的架构搭建,本小节本人就现场带领大家开发出一个通用的蓝牙工具类 ...
- 美团点评基于MGR的CMDB高可用架构搭建之路【转】
王志朋 美团点评DBA 曾在京东金融担任DBA,目前就职于美团点评,主要负责金融业务线数据库及基础组件数据库的运维. MySQL Group Replication(以下简称MGR),于5.7.17版 ...
- B端产品如何做好从1到10的架构搭建?
上一篇文章,我写了<Saas产品如何做好从0到1的架构搭建?>. 今天这篇文章,不聊从0到1. 我想拓宽思路聊一聊B端产品如何做好从1到10的架构搭建. 一款从1-10的B端产品,产品经理 ...
- 基于CentOS7,MySQL5.7的高可用MHA架构搭建实战
基于CentOS7,MySQL5.7的高可用MHA架构搭建实战 MHA 架构搭建 一 .MHA架构 MHA(Master High Availability)是一套比较成熟的 MySQL 高可用方案, ...
- 基于CentOS7,MySQL5.7的主从复制架构搭建实战
基于CentOS7,MySQL5.7的主从复制架构搭建实战1 一.环境说明 1. 软件版本 环境&软件 版本 虚拟机&VMware Workstation 15 Pro 服务器& ...
- Android 应用开发(1)---Android项目架构搭建
Android项目架构搭建 1. 前言 安卓属于小团队开发,架构的重要性在很多公司其实不是那么的明显,加上现在的开源框架层出不穷,更好的帮助我们上手android项目的开发.我前两年也在公司主导过项目 ...
- linux中lamp架构搭建,Linux LAMP架构平台搭建
LAMP架构 LAMP 架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态 Web 站点服务及其应用开发环境.LAMP 是一个缩写词,具体包括 Linux 操作系 ...
最新文章
- OpenCV常遇问题解决方法汇总
- @Value竟然能玩出这么多花样
- java 最少使用(lru)置换算法_「面试」LRU了解么?看看LinkedHashMap如何实现LRU算法...
- html轮廓位置,html – 具有边框/轮廓的六边形
- Redis配置文件常用配置详解
- 秒杀多线程第三篇 原子操作 Interlocked系列函数
- 体验了一下用word 2007发表博客
- activiti7流程设计器_基于容器和微服务应用的架构:容器设计原则
- Responsive自适应网页设计与ResponsiveColumn自适应列实例
- Android输入事件InputReader和InputDispatcher分析
- java win7 管理员权限_Win7下超级管理员创建普通权限任务
- 企业如何高效用云?| 资深运维架构师细说云架构下的运维体系构建
- Java类汽车,JAVA 建立一个汽车AutoMobile类......
- mapreduce详细工作流程
- 蜂窝物联网与嵌入式SIM(eSIM)
- Impala 在网易有数 BI 应用场景的优化经验
- 二维码插件qrcode生成二维码信息
- c语言,简易密码输入
- Oracle9i中使用SYS_CONNECT_BY_PATH进行行列转换-
- ios 开发证书导出p12文件_如何生成苹果开发者证书及描述文件