nginx memcache 页面缓存
来源:互联网 发布:linux怎么打开防火墙 编辑:程序博客网 时间:2024/05/21 10:49
一,相关概念
1.Nginx是一款轻量级的web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、淘宝、腾讯等。在连接高并发的情况下,Nginx是Apache服务器不错的替代品,Nginx作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP代理服务器对外进行服务。Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多。
2.Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。
3.Tomcat 服务器是一个免费的开放源代码的java Web 服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
4.nginx的memcached_module模块可以直接从memcached服务器中读取内容后输出,后续的请求不再经过应用程序处理,如php-fpm、django,大大的提升动态页面的速度。nginx只负责从memcached服务器中读取数据,要往memcached写入数据还得需要后台的应用程序来完成,主动的将要缓存的页面缓存到memcached中。
二、服务安装及配置
1.安装java环境
因为需要用到tomcat所以需要配置java环境
tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local 并做软链接方便使用
vim /etc/profile
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/binsource /etc/profile
source /etc/profile
2.配置tomcat
tar zxf apache-tomcat-7.0.78tar.gz -C /usr/local
ln -s apache-tomcat-7.0.78/ tomcat
在网上下载下面几个包,放到lib下
asm-3.2.jar minlog-1.2.jar
kryo-1.04.jar msm-kryo-serializer-1.6.3.jar
kryo-serializers-0.10.jar reflectasm-1.01.jar
memcached-session-manager-1.6.3.jar spymemcached-2.7.3.jar
memcached-session-manager-tc7-1.6.3.jar
启动tomcat: bin/startup.sh
查看8080端口,tomcat默认占用8080端口: netstat -anplt | grep :8080
tomcat默认发布目录: /usr/local/apache-tomcat-7.0.78/webapps/ROOT
vim /usr/local/apache-tomcat-7.0.78/conf/context.xml
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcacheNodes="n1:172.25.254.1:11211,n2:172.25.254.2:11211"
failoverNodes="n1" ###server2 设置为n2
requsetUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
</Context>
3.配置nginx
添加 nginx-sticky-module 为 nginx 的第三方模块,使 nginx 支持 sticky 模式,所谓 sticky 模式就是指同一个用户的访问请求都被发送到同一个 tomcat 实例上处理。
vim /usr/local/lnmp/nginx/conf/nginx.conf
http {
upstream test{
sticky;
server 172.25.254.1:8080;
server 172.25.254.2:8080;
}
location ~ \.jsp$ {
proxy_pass http://test;
}
server {
listen 80;
server_name www.test.org;
location / {
proxy_pass http://test;
nginx -t 检查语法错误 nginx -s reload 重启nginx
4.安装memcached
yum install memcached -y
/etc/init.d/memcached start
memcached 默认开启11211 端口: netstat -anple | grep :11211
三、测试
/usr/local/apache-tomcat-7.0.78/webapps/ROOT/test.jsp
第一台虚拟机的tomcat server1 time is: <%=new java.util.Date() %>
第二台虚拟机的tomcat server2 time is: <%=new java.util.Date() %>
在物理机的浏览器上访问 www.test.org/test.jsp 会显示当前的时间
如果 某一个server 出现故障其备用的server 会代替其工作 避免一些不可控的意外发生
- nginx memcache 页面缓存
- nginx+memcache缓存服务
- nginx-页面缓存
- Nginx之页面缓存
- Nginx之页面缓存
- Nginx 页面缓存指令
- nginx与memcache缓存无法命中
- nginx:expires控制页面缓存
- nginx:expires控制页面缓存
- 页面级缓存 nginx+memcached
- nginx反向代理+页面缓存
- (三)Nginx-页面缓存
- memcache缓存
- Memcache 缓存
- Memcache缓存
- memcache nginx
- NGINX配置从memcache中取静态页面
- nginx+memcached构建页面缓存应用
- USACO-Section1.2 Milking Cows
- java分布式事务(JTA)实现 jotm和atomikos
- Oracle数据库中RMAN默认配置参数代表什么意思
- 【8086汇编】基础排序之基数排序
- Oracle包被锁定的原因分析及解决方案
- nginx memcache 页面缓存
- Can you use map and set???
- 51 Nod 1051 最大子矩阵和 (DP)
- 嵌入式linux+ARM16
- 嵌入式linux+ARM17
- bzoj 1038 [ZJOI2008]瞭望塔
- 关于java中抽象类与接口异同的个人理解(我的第一篇博客)
- Activity.this 与this的区别
- 说说尾递归