Nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第二部分...
Nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解
(Nginx Apache MySQL Redis)
楓城浪子原创,转载请标明出处!
更多技术博文请见个人博客:https://fengchenglangzi.000webhostapp.com
微信bh19890922
QQ445718526、490425557
2.3 Redis 主从搭建
2.3.1 redis安装配置
1 |
[root@localhost redis-2.8.13]# yum install gcc gcc-c++ -y [root@localhost ~]# cd /usr/local/src/ [root@localhost src]# wget -c http://download.redis.io/releases/redis-2.8.13.tar.gz |
注:安装gcc gcc-c++,下载redis源码包
1 |
[root@localhost src]# tar -zxf redis-2.8.13.tar.gz [root@localhost src]# cd redis-2.8.13 [root@localhost redis-2.8.13]# make [root@localhost redis-2.8.13]# cd src [root@localhost src]# make install PREFIX=/usr/local/redis |
注:解压redis,并编译安装到指定目录
1 |
[root@localhost redis-2.8.13]# cp redis.conf /usr/local/redis/ |
注:将redis配置文件复制到安装目录下,由于redis安装不会自动生成配置文件,故此操作在源码解压目录中操作
1 |
[root@localhost redis-2.8.13]# echo 'export PATH=/usr/local/redis/bin:$PATH' >> /etc/profile [root@localhost redis-2.8.13]# source /etc/profile |
注:把redis下的bin目录加入环境变量profile末尾,然后执行命令使其生效。
1 |
[root@localhost redis]# sed -i 's/daemonize no/daemonize yes/g' redis.conf |
注:由于默认redis启动不是后端启动,所以可以修改redis配置文件,把此处的no改为yes即可
1 |
[root@localhost redis]# ./bin/redis-server ./redis.conf [root@localhost redis]# ps aux | grep redis root 4490 0.1 0.4 137372 2324 pts/0 Sl 05:26 0:00 /usr/local/redis/bin/redis-server *:6379 root 4500 0.0 0.1 103320 884 pts/0 S+ 05:32 0:00 grep redis [root@localhost redis]# netstat -anlp | grep redis tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 4490/redis-server * tcp 0 0 :::6379 :::* LISTEN 4490/redis-server * [root@localhost redis]# |
注:执行./bin/redis-server ./redis.conf 启动redis,虽然无任何提示,但可以使用ps命令查看redis进程以及使用netstat命令查看redis端口号
停止redis
redis-cli shutdown
关闭所有
redis-cli -p 6397 shutdown
关闭6397端口的redis
注:关闭以后缓存数据会自动转储到硬盘上,硬盘地址可以查看redis.conf配置文件中的dbfilename dump.rdb
2.3.2 Redis主从配置
Redis主从配置非常简单,而且redis支持多重slave,所以可以无限延伸下去
1 |
[root@localhost ~]# sed -i '/port 6379/a\slaveof 192.168.8.135 6379' /usr/local/redis/redis.conf |
注:只需要在slave上面的redis主配置文件中port 6379 行下面加上slaveof 192.168.8.135 6379即可
1 |
[root@localhost ~]# pkill redis [root@localhost ~]# /usr/local/redis/bin/redis-server ./redis.conf [root@localhost ~]# redis-cli 127.0.0.1:6379> info |
注:重启redis,并执行info命令,如果显示如下图所示,表示slave配置完成
2.3.3 安装PHP-redis连接驱动
注:驱动需要和php安装在一起
所以一下配置在LAP上面进行
驱动作用:要确保PHP能够连接Redis缓存服务器,需添加PHP Redis扩展程序,即添加PHP扩展模块
1 |
[root@localhost src]# wget -c <a href="https://github.com/phpredis/phpredis/archive/3.1.2.tar.gz">https://github.com/phpredis/phpredis/archive/3.1.2.tar.gz</a> [root@localhost src]# tar zxf 3.1.2.tar.gz [root@localhost src]# cd phpredis-3.1.2/ [root@localhost phpredis-3.1.2]# /usr/local/php5/bin/phpize [root@localhost phpredis-3.1.2]# ./configure --with-php-config=/usr/local/php5/bin/php-config --enable-redis [root@localhost phpredis-3.1.2]# make -j8 && make install |
注:下载驱动并编译安装,由于驱动本身解压后是没有configure执行文件的,所以使用phpize命令创建
如果出现以下报错请执行yum install m4 autoconf -y
记录下图中部分/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/
1 |
[root@localhost phpredis-3.1.2]# cat >> /usr/local/php5/lib/php.ini << EOF extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/" extension=redis.so EOF |
注:在php.ini最后追加以上内容
1 |
[root@localhost phpredis-3.1.2]# /usr/local/apache2/bin/apachectl restart |
注:重启apache,然后刷新网页出现如下redis信息,即集成完成!
2.4 发布Discuz论坛
1 |
[root@localhost src]# wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_UTF8.zip root@localhost src]# unzip Discuz_X3.2_SC_UTF8.zip [root@localhost src]# cp -a readme/ upload/ utility/ /usr/local/apache2/htdocs/ [root@localhost htdocs]# cp -a ./upload/* . [root@localhost htdocs]# ../bin/apachectl restart |
注:下载discuz软件,并解压复制到apache发布目录,并拷贝upload里的文件到发布根目录
访问http://192.168.8.135/install/进行安装
提示不可写,直接在发布目录执行如下命令
1 |
[root@localhost htdocs]# chmod -R o+w .* |
此处省略discuz的安装过程,出现以下界面表示discuz安装完成
1 |
[root@localhost config]# vim config_global.php |
注:修改config_global.php ,此文件在发布目录config下,修改为如下图所示
第二台LAP无需安装discuz,直接从第一台LAP上把发布目录拷贝过来即可,或者更方便的做法是部署一台NFS服务器,两台LAP共享发布目录即可
1 |
[root@localhost htdocs]# scp -r .* root@192.168.8.136:/usr/local/apache2/htdocs/ |
2.5 测试redis缓存discuz以及redis主从
1 |
[root@localhost config]# redis-cli (empty list or set) 127.0.0.1:6379> KEYS * 1) "NgoypY_diytemplatenamehome" 2) "NgoypY_usergroups" 3) "NgoypY_onlinerecord" 4) "NgoypY_announcements" 5) "NgoypY_heats" 6) "NgoypY_pluginlanguage_system" 7) "NgoypY_userstats" 8) "NgoypY_usergroup_7" 9) "NgoypY_forum_index_page_7" 10) "NgoypY_pluginlanguage_script" 11) "NgoypY_style_default" 12) "NgoypY_userapp" 13) "NgoypY_historyposts" 14) "NgoypY_setting" 15) "NgoypY_plugin" 16) "NgoypY_cronnextrun" 17) "NgoypY_diytemplatenameforum" 18) "NgoypY_ipbanned" 19) "NgoypY_diytemplatename" 20) "NgoypY_magic" 21) "NgoypY_forumlinks" 22) "NgoypY_onlinelist" 127.0.0.1:6379> |
注:在discuz论坛上面随便点击内容,然后在redis master上面执行以上命令,可以看到缓存的数据
1 |
[root@localhost ~]# redis-cli 127.0.0.1:6379> KEYS * 1) "NgoypY_magic" 2) "NgoypY_heats" 3) "NgoypY_diytemplatenamehome" 4) "NgoypY_historyposts" 5) "NgoypY_userapp" 6) "NgoypY_pluginlanguage_system" 7) "NgoypY_style_default" 8) "NgoypY_usergroup_7" 9) "NgoypY_forumlinks" 10) "NgoypY_plugin" 11) "NgoypY_usergroups" 12) "NgoypY_setting" 13) "NgoypY_onlinerecord" 14) "NgoypY_diytemplatenameforum" 15) "NgoypY_diytemplatename" 16) "NgoypY_userstats" 17) "NgoypY_cronnextrun" 18) "NgoypY_announcements" 19) "NgoypY_pluginlanguage_script" 20) "NgoypY_onlinelist" 21) "NgoypY_ipbanned" 127.0.0.1:6379> |
注:以上是redis slave上面查看的内容,与master一致,表示redis缓存与redis主从配置无问题
至此基本环境搭建完毕!
转载于:https://blog.51cto.com/fengchenglangzi/1963223
Nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第二部分...相关推荐
- nginx反向代理,实现负载均衡
nginx反向代理,实现负载均衡 一,先启动nginx和php-cgi #启动 php-cgi /usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 8000 -C 5 ...
- Nginx反向代理 实现Web负载均衡
实现负载均衡的方式有很多种,DNS.反向代理.LVS负载均衡器(软件实现).F5(负载均衡器,硬件,非常昂贵)这里我们只提到基于DNS,以及反向代理的方式来实现负载均衡Web服务 DNS服 ...
- Nginx反向代理及简单负载均衡配置
nginx配置文件主要分为六个区域:main section.events section.http section.sever section.location section.upstream s ...
- Nginx 部署、反向代理配置、负载均衡
Nginx 部署.反向代理配置.负载均衡 最近我们的angular项目部署,我们采用的的是Nginx,下面对Nginx做一个简单的介绍. 为什么选择Nginx 轻:相比于Apache,同样的web服务 ...
- 运维工程师必备之负载 均衡集群及LVS详解
原文地址:运维工程师必备之负载 均衡集群及LVS详解作者:蚁巡运维平台 来源: chrinux 的BLOG 时间: 2013-07-01 14:00 此博文主要介绍集群和负载均衡的基本理论和类别,内容 ...
- 使用LVS实现负载均衡原理及安装配置详解
使用LVS实现负载均衡原理及安装配置详解 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均 ...
- 负载均衡原理与实践详解 第五篇 负载均衡时数据包流程详解
负载均衡原理与实践详解 第五篇 负载均衡时数据包流程详解 系列文章: 负载均衡详解第一篇:负载均衡的需求 负载均衡详解第二篇:服务器负载均衡的基本概念-网络基础 负载均衡详解第三篇:服务器负载均衡的基 ...
- Nginx负载均衡自带健康检测详解
Nginx自带针对后端节点健康检查功能比较简单,由ngx_http_upstream_module和ngx_http_proxy_module模块的相关指令来完成,通过一定重试机制保证容错和负载均衡. ...
- 运维工程师必备之负载均衡集群及LVS详解
此博文主要介绍集群和负载均衡的基本理论和类别,内容看着比较枯燥.无味的,但是要想成为一个好的linux运维工程师,这些基本理论是必须理解透彻,才会在后来的系统调优和集群架构中得心应手,所以想成为lin ...
最新文章
- 纯净版搜狗输入法_小米定制搜狗输入法更新!MIUI开发版更新解析!
- [Xcode 实际操作]七、文件与数据-(2)创建文件夹
- 定位导致物化视图无法快速刷新的原因
- php连hiveservice2,hiveserver2启动成功但无法通过beeline连接
- Go的50度灰:Golang新开发者要注意的陷阱和常见错误
- Java面试常见算法
- python export_django-import-export插件使用教程
- Docker : Docker 查看容器 IP 地址以及相关信息
- gulp教程之gulp-autoprefixer
- 学习短视频制作能做什么工作啊
- windows phone 8.0 的网络图片异步加载方案
- php课后答案 唐四薪_PHP课后小结 12.20
- 使用UCDOS的HZK16点阵字库的演示程序
- 谈谈订单号和流水号的关系
- 【UCSC Genome Browser】- ClinGen剂量敏感性分析
- Cortex-M0芯片GPIO详解
- 姿态估计与行为识别(行为检测、行为分类)的区别
- 读取数据快慢的设备_目前在以下各种设备中,读取数据快慢的顺序是内存、硬盘、光盘和软盘。...
- 后台如何清理软Raid
- Qt 工程下使用 cmake MinGW OpenCV 4.1.1(涵盖 MinGW32 与 MinGW64)