Nginx實踐一:centos apache更換爲nginx

背景介紹: 阿里雲,512M內存(最屌絲配置),搭建lamp 環境,除去 mysql分配了100M左右(這個不能再少了),http居然佔用了200多M,太龐大,決定換爲較輕量級,高併發的nginx。php

背景數據

以下圖所示:系統也就500M ,出了mysql佔用的100M, httpd 佔了1/2 還多(常常達到十幾個進程),剩餘50M,有時更少不能忍,常常形成數據庫崩掉,寫了個自動重啓腳本,但覺的不是治本之策html

# 統計apache 進程個數
ps aux|grep httpd | wc –l

ngnix 服務器佔用

解決策略

  • 1:針對Apache進行優化。包括優化worker運行方式等等。能夠參考 apache優化 mysql

  • 2 :更換輕量級服務器。採用nginx 或者lighthttpd等更輕量的服務器。傳說中Nginx大法負載均衡和高併發略勝一籌,決定實踐一把。linux

apache替換爲nginx

  • 1: 停掉apache
    sudo service httpd stopnginx

    注意:以防萬一,最好很差提早卸掉。web

  • 2:安裝nginx
    yum install nginxsql

  • 3:啓動nginx
    sudo nginx數據庫

    安裝成功以後,啓動成功以下圖 CB5A50FB-8B68-4F21-A6F4-BDC7AF6C93B2apache

  • 4:簡單配置nginx
    主要是簡單修改下log【方便追查問題】 和 web_root 對應文件【快速啓用網站】服務器

  • 5:重啓nginx
    [root@iZ25xlozdf2Z nginx]# nginx -s quit
    [root@iZ25xlozdf2Z nginx]# nginx

    以下圖,配置web目錄成功! BAEF603F-CA9C-436E-B870-3E70C11542D0

  • 6:添加php 支持
    安裝php-fpm
    yum install php-fpm

    nginx.conf設置
    location ~ \.php$ {

    root /var/www/html;
       fastcgi_pass 127.0.0.1:9000;
       fastcgi_index index.php;
       fastcgi_param SCRIPT_FILENAME         /var/www/html$fastcgi_script_name;
       include fastcgi_params;

    }

  • 7:從新啓動服務,網站回覆。
    A8D2AD14-7AB9-4421-AF40-B1BE0A5355C3

  • 8:耗存簡單對比 以下圖:基本上節省了200M,雖然這個多是運行初期數據;可是,仍是確實輕了很多,每一個服務佔存基本上1/4,線程也少了很多。內存佔用方面表現,感受尚可,接下就看性能了 E773D2EE-2F51-4113-AAE1-939CD88DCAEE

後續

初次接觸nginx,總體感受還不錯。後續,進行基本的防攻擊,多端口設置,和性能配置。

我的小站原文連接

相關文章
相關標籤/搜索