Home  >  Article  >  Backend Development  >  nginx load balancing configuration

nginx load balancing configuration

WBOY
WBOYOriginal
2016-07-29 09:07:201217browse

1: Introduction

Tomcat has very low performance when processing dynamic requests in a high-concurrency environment, and is even more fragile when processing static pages. Although the latest version of Tomcat supports epoll, processing static pages through Nginx is much better in terms of performance than processing through Tomcat.

Two: Download and install (taking Windows environment as an example)

1. Download address
Download address: Click here

2. Directory structure

<code>  Nginx-
           |_  conf   配置目录
           |_  contrib
           |_  docs 文档目录
           |_  logs  日志目录
           |_  temp 临时文件目录
           |_  html 静态页面目录
           |_  nginx.exe 主程序
</code>

3: Start and stop nginx service

cmd enter the nginx decompression directory

Execute start nginx, you can start the service (or nginx or nginx.exe)
It is recommended to use the first one,
The other two will keep your cmd window in execution and cannot perform other command operations.

Execute nginx -s stop to stop the nginx service.

Execute nginx -t to check whether the nginx configuration file is correct.
nginx load balancing configuration

Four: nginx main configuration file nginx.conf

To download all configuration files, please click here

<code><span>#Nginx所用用户和组</span><span>#user  niumd niumd;</span><span>#工作的子进程数量(通常等于CPU数量或者2倍于CPU)</span>
worker_processes  <span>2</span>;

<span>#错误日志存放路径</span><span>#error_log  logs/error.log;</span><span>#error_log  logs/error.log  notice;</span>
error_log  logs/error.log  info;

<span>#指定pid存放文件</span>
pid        logs/nginx.pid;

events {
        <span>#使用网络IO模型linux建议epoll,FreeBSD建议采用kqueue</span><span>#use epoll;</span><span>#允许最大连接数</span>
    worker_connections  <span>2048</span>;
}

http {
    <span>include</span>       mime.types;
    default_type  application/octet-stream;

        <span>#定义日志格式</span><span>#log_format  main  '$remote_addr - $remote_user [$time_local] $request '</span><span>#                  '"$status" $body_bytes_sent "$http_referer" '</span><span>#                  '"$http_user_agent" "$http_x_forwarded_for"';</span><span>#access_log  off;</span>
    access_log  logs/access.log;

    client_header_timeout  <span>3</span>m;
    client_body_timeout    <span>3</span>m;
    send_timeout           <span>3</span>m;

    client_header_buffer_size    <span>1</span>k;
    large_client_header_buffers  <span>4</span><span>4</span>k;

    sendfile        <span>on</span>;
    tcp_nopush      <span>on</span>;
    tcp_nodelay     <span>on</span>;

    <span>#keepalive_timeout  75 20;</span><span>include</span>    gzip.conf;
    upstream localhost {

      server localhost:<span>8080</span> weight=<span>5</span>;
      server localhost:<span>9091</span> weight=<span>1</span>;
     }

    server {
            listen       <span>80</span>;
            server_name  localhost;   

            location / {
                    proxy_connect_timeout   <span>3</span>;
                    proxy_send_timeout      <span>30</span>;
                    proxy_read_timeout      <span>30</span>;
                proxy_pass http://localhost;
            }

   }
}

</code>

Five: Load balancing weight configuration

<code>    upstream localhost {
      <span>server</span> localhost:<span>8080</span> weight=<span>5</span>;
      <span>server</span> localhost:<span>9091</span> weight=<span>1</span>;
     }</code>
').addClass('pre-numbering').hide() ; $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

The above introduces the nginx load balancing configuration, including the relevant aspects. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn