背景:
CGI:技术每产生一个请求就会生成一个应用程序的线程,请求完毕后,线程关闭,效率比较低。
FastCGI:技术常驻进程,保持不中断等待,效率比较高。
相对于nginx而言,apache是把应用程序进程放在webserver进程中一起加载,APACHE采用的是server API技术。
分布式web服务(动静分离模式优点:提高访问效率。)
静态程序:html,图片,js等
动态程序:FastCGI(php,perl等)
A机器:192.168.8.99
pcre-8.30.tar.gz   (支持正则表达式 区分php等fastcgi程序还是html等静态程序)
  1. tar xzvf nginx-1.2.0.tar.gz

  2. tar xzvf pcre-8.30.tar.gz

  3. cd pcre-8.30

  4. ./configure --prefix=/usr/local/prce

  5. make

  6. make install

mysql线程优化---TCmalloc 线程缓存的Malloc
  1. tar zxvf google-perftools-0.97.tar.gz cd google-perftools-0.97/ ./configure make

  2. make install

  3. echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf

  4. /sbin/ldconfig

  5. vim /usr/local/mysql/bin/mysqld_safe

重启mysql服务并查看服务进程
64位操作系统先安装libunwind库,libunwind库为基于64位CPU和操作系统的程序提供了基本的堆栈辗转开解功能,其中包括用于输出堆栈跟踪的API、用于以编程方式辗转开解堆栈的API以及支持C++异常处理机制的API。
  1. wget http://download.savannah.gnu.org/releases/libunwind/libunwind-0.99-alpha.tar.gz

  2. tar zxvf libunwind-0.99-alpha.tar.gz

  3. cd libunwind-0.99-alpha/

  4. CFLAGS=-fPIC ./configure

  5. make CFLAGS=-fPIC

  6. make CFLAGS=-fPIC install

  7. groupadd www                          #可省略

  8. useradd –g www www –s /sbin/nologin   #可省略

默认用户nobody (建议使用)很多资料里都是新建一个www用户,其实可以不用增加新用户。
  1. tar xzvf nginx-1.2.0.tar.gz

  2. cd  nginx-1.2.0

  3. ./configure --prefix=/usr/local/nginx --user=www--group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-google_perftools_module --with-ld-opt='-ltcmalloc_minimal'

  4. make

  5. make intall

刷新浏览器同时查看nginx访问日志的变化
  1. tail –F access.log

B机器: 192.168.8.100
  1. tar xzvf php-5.2.6.tar.gz

  2. gzip -cd php-5.2.6-fpm-0.5.9.diff.gz | patch -d php-5.2.6 -p1 (作用:对php的一个补丁包方便管理Fastcgi程序也就是这里的php程序)

  3. cd php-5.2.6

  4. ./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm

  5. make

  6. make install

  7. cp php.ini-dist /usr/local/php/lib/php.ini

  8. php-cgi –c php.ini –c参数指定php.ini的位置

  9. cd /usr/local/php/etc

编辑文件php-fpm.conf,修改如下内容

  1. vim /usr/local/php/etc/php-fpm.conf

启动php-fpm服务
  1. /usr/local/php/sbin/php-fpm start
      Starting php_fpm  done

修改/usr/local/nginx/conf/nginx.conf
  1. vim /usr/local/nginx/conf/nginx.conf

修改/usr/local/php/etc/php-fpm.conf 去掉注释
  1. mkdir  /usr/local/php/www (目录自定义) 用php探针测试

  2. cat index.php

  3. <?php

  4. phpinfo();

  5. ?>

注意:如果找不到目录中的php文件,修改文件/usr/local/nginx/conf/nginx.conf 中的内容
将/scripts$fastcgi_script_name修改成/usr/local/php/www$fastcgi_script_name

nginx+fastcgi实现动静分离架构相关推荐

  1. nginx+Tomcat实现动静分离架构

    最近新部署了一个项目jlj-cms-erp-web,要求使用nginx+Tomcat将静态页面和动态的请求分开处理,减轻Tomcat服务器的压力 在部署项目的这台机器上(192.168.1.110)并 ...

  2. [Nginx]nginx 配置实例-动静分离

    nginx 配置实例-动静分离 1.什么是动静分离 Nginx 动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离.严格意义上说应该是动态请求跟静态请求分开,可 ...

  3. Nginx自学手册(六)Nginx+Tomcat实现动静分离

    (一)简述 Nginx是一种轻量级,高性能,多进程的Web服务器,非常适合作为静态资源的服务器使用,而动态的访问操作可以使用稳定的Apache.Tomcat及IIS等来实现,这里就以Nginx作为代理 ...

  4. k8s 发布项目实现 nginx 和 tomcat 动静分离(2)

    kubead 部署 kubernetes 请查看 3 部署 dashboard https://github.com/kubernetes/dashboard 3.1 部署 dashboard v2. ...

  5. Docker构建Nginx+Tomcat动静分离架构

    随着主流Nginx WEB服务器的发展,现在基于Nginx的WEB服务器已广泛应用于各大互联网企业.今天我们来使用docker构建我们的Linux+Nginx+Tomcat动静分离服务器. 1)    ...

  6. AWS CloudFront实现动静分离架构

    CloudFront+ALB+EC2+S3构建动静分离站点 一.背景与优势 1. 背景 由于用户站点的动态跟静态资源都是保存在Web服务器中,从而导致用户访问站点时,图片.视频.文档等静态资源访问缓慢 ...

  7. Nginx+Varnish 实现动静分离,为服务器分流,降低服务器负载

    相必大家在看加快网站响应速度方面的文章时,都提过这么一条:动静分离.那怎样实现动静分离呢,这里笔者就亲自搭建相关服务实现动静分离. 动静分离是一种架构,就是把静态文件,比如JS.CSS.图片甚至有些静 ...

  8. Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化......

    干货!文章有点长,建议先收藏 引言 一.性能怪兽-Nginx概念深入浅出 二.Nginx环境搭建 三.Nginx反向代理-负载均衡 四.Nginx动静分离 五.Nginx资源压缩 六.Nginx缓冲区 ...

  9. Nginx一网打尽:动静分离、压缩、缓存等,想要的这都有

    引言 早期的业务都是基于单体节点部署,由于前期访问流量不大,因此单体结构也可满足需求,但随着业务增长,流量也越来越大,那么最终单台服务器受到的访问压力也会逐步增高.时间一长,单台服务器性能无法跟上业务 ...

最新文章

  1. 程序员MM的自白:磨人小妖精之安卓碎片化
  2. SpringBoot 深度调优,让你的项目飞起来!
  3. 改变jupyter notebook的主题背景颜色
  4. matlab cuda的.cu文件应该放在那里_App Store限免推荐|日历和文件管理、无尽狂奔、Scalak等,共5款...
  5. Linux 操作系统原理 — loop 伪设备
  6. CSS魔法堂:重拾Border之——更广阔的遐想
  7. SAP以创新提升极限帆船赛
  8. 在 ubuntu下面利用libpcap编程
  9. Qt界面美化 QSS
  10. Java中Spring中的方法加上try catch后事务管理器失效无法回滚的情况
  11. socket编程 TCP 粘包和半包 的问题及解决办法
  12. [STL源码剖析]RB-tree的插入操作
  13. 安卓手机管理_时间管理大师手机版下载-时间管理大师app下载v1.0.0 安卓最新版...
  14. 计算机软件可以控制单片机,一个电脑控制单片机通讯程序分享
  15. 恶意文件 大数据案例库_Combo Cleaner for Mac(系统恶意软件清理工具)
  16. linux系统鼠标左键失灵,鼠标左键不灵敏如何修复 鼠标左键不灵敏解决方法【图文】...
  17. php怎么转mp4,php使用memcoder将视频转成mp4格式的方法
  18. 乌鸦救赎《社交光环》
  19. 罗技 HTPC K700
  20. ts240 服务器信息,【ThinkServer TS240配置】ThinkServer TS240塔式服务器配置-ZOL中关村在线...

热门文章

  1. C++ 学习路线推荐
  2. 通过自己定义MVC的Controller的Json转换器解决日期序列化格式问题
  3. Linux学习总结(9)——Linux 新手必知必会的 10 条 Linux 基本命令
  4. Struts1和Struts2的区别和对比
  5. SharePoint 2013 入门教程之创建页面布局及页面
  6. gcc 无法编译问题解决
  7. wp7使用Cocos2d-X for XNA制作一个塔防类游戏 (二)在游戏中加入地图和怪物。(上)
  8. 深入探讨struts的ActionMessages消息机制(转)
  9. 传入json对象_【Python基础】可迭代对象amp;迭代器对象及其实现
  10. Apache Commons fileUpload实现文件上传