`

使用Nginx Upstream 部署 OpenERP

 
阅读更多

Openerp 6.1 使用werkzeug 作为web服务的框架,性能比之前的cherrypy 有了很大的改善。但无论是 werkzeug 还是cherrypy ,都不是专门的web服务器。通常的做法是在openerp 之前加一个 Nginx、Apache或其他服务器。下面介绍使用Nginx Upstream 部署openerp 的方法。

一 前提

此处假设您已经安装好 openerp ,并运行在 127.0.0.1:8069

二 安装Nginx

debian/ubuntu:

1
# apt-get install nginx

redhat/centos:

1
# yum install nginx

三 配置Nginx

1. 修改/etc/nginx/nginx.conf ,开启gzip 压缩

# vi /etc/nginx/nginx.conf
--------------nginx.conf 需修改内容节选--------------------------
        gzip on;
        gzip_disable "msie6";
        gzip_vary on;
        gzip_proxied any;
        gzip_comp_level 6;
        gzip_buffers 16 8k;
        gzip_http_version 1.1;
        #添加一个类型 application/javascript
        gzip_types text/plain text/css application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

 

吐槽一下,是否开启gzip,差别真不小。oe 首页加载的http://127.0.0.1/web/webclient/js 开启前文件大小是 1.4M , 开启后大小是350.6 KB (通过firebug 查看)。

2. 建立 openerp 配置文件

# touch /etc/nginx/sites-enabled/openerp
# vi /etc/nginx/sites-enabled/openerp
--------------------openerp 文件内容---------------------------
proxy_temp_path /tmp/nginx_proxy_temp;
proxy_cache_path  /tmp/nginx_proxy_cache levels=1:2  keys_zone=oecache:100m inactive=3d max_size=1000m;
proxy_buffer_size     32k;              #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers         4 32k;            #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size  64k;           #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size  64k;       #设定缓存文件夹大小,大于这个值,将从upstream服务器传
proxy_connect_timeout      60;
proxy_send_timeout         60;
proxy_read_timeout         3000;
upstream oeserver{
        server 127.0.0.1:8069;
}
server {
        server_name  www.example.com;
        root /var/www/openerp-6.1-1/openerp/addons;
        location /{
                proxy_cache              oecache;
                #proxy_cache_key "$host$request_uri$request_body";
                proxy_cache_key $host$request_uri$request_body;
                proxy_cache_valid  200 304 1d;
                proxy_cache_valid  any   1d;
                proxy_next_upstream http_502 http_504 error timeout invalid_header;
                proxy_pass_header Set-Cookie;
                proxy_set_header   Host             $host;
                proxy_set_header   X-Real-IP        $remote_addr;
                proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
                proxy_redirect  off;
                proxy_pass http://oeserver;
                proxy_buffering on;
                proxy_cache_valid       1d;
                expires 1d;
        }
        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                proxy_buffering on;
                proxy_cache_valid       1d;
                expires 1d;
        }
}

完成 !

Nginx 此处仅仅是作为 openerp 的前端WEB服务器,Nginx 还有更大的作用是可以实现Openerp 的负载平衡。此处按下不表,呵呵

 

分享到:
评论

相关推荐

    zabbix 自动检测nginx upstream.zip

    本教程将详细讲解如何利用Zabbix实现对Nginx upstream服务器的自动检测与故障报警,无需额外安装Python插件,且兼容Python2和Python3。 首先,Nginx是一款高性能的反向代理服务器,常用于负载均衡,通过upstream...

    nginxdocker镜像(nginx-upstream-check健康检查)

    官方nginx 镜像不带主动健康,本镜像将 nginx_upstream_check健康检查 打包到了镜像中。

    nginx-upstream-jvm-route-1.15

    用户需要按照文档的指示进行配置和部署,以便在Nginx 1.15中成功使用upstream模块与JVM的路由功能。 总的来说,"nginx-upstream-jvm-route-1.15"是一个针对Nginx 1.15版本的解决方案,它允许用户通过upstream模块更...

    nginx-upstream-jvm-route 和 nginx 对应版本,亲测可用

    此资源有两个文件,含 nginx-upstream-jvm-route 和 nginx 对应版本,都是tar.gz文件。 安装方法网上很多就不写了,亲测可用。 不用担心版本不匹配造成安装失败,再浪费积分去到处下载尝试的烦恼。 此资源有两个文件...

    nginx配置upstream负载均衡的资源文件文件通用版

    **Nginx配置Upstream负载均衡详解** 在现代Web服务架构中,负载均衡是一项至关重要的技术,它能够有效地分散网络流量,确保服务器集群的稳定性和高可用性。Nginx作为一款高性能的反向代理服务器和HTTP缓存服务器,...

    nginx-upstream-fair-master.zip

    "nginx-upstream-fair-master.zip"是一个包含Nginx公平负载均衡(fair)第三方模块的压缩包,该模块使得Nginx可以根据服务器的实际响应时间来分配请求,从而实现更公平的负载均衡策略。 公平负载均衡(fair)模块...

    nginx_upstream_check_module

    在Nginx配置文件中,`nginx_upstream_check_module`的使用涉及到一些特定的指令,如`check`、`check_interval`、`check_timeout`等。以下是一个简单的示例: ```nginx http { upstream backend { server backend1...

    nginx_upstream_hash-0.3.1.tar.gz

    在实际部署中,`nginx_upstream_hash-0.3.1`的配置通常如下: ```nginx http { upstream backend { hash $request_uri consistent; server server1.example.com weight=3; server server2.example.com; server...

    nginx-upstream-manager.zip

    - 在多机房、跨地域部署时,通过 upstream 实现智能路由和流量控制。 7. **安全注意事项**: - 修改 Nginx 配置时,务必谨慎操作,防止因配置错误导致服务中断。 - 保持 Nginx 和相关脚本的版本更新,以获得最新...

    nginx upstream fair算法

    在Nginx的配置文件(通常为`nginx.conf`或其包含的其他配置文件)中,你需要定义一个upstream块,并指定使用fair算法。例如: ```nginx upstream backend { fair; server backend1.example.com weight=5; server...

    openerp+nginx配置方法

    openerp+nginx配置方法, 非常详细的资料,可以参考使用。

    Nginx安装+nginx_upstream_check_module后端健康检查

    patch -p0 < ../nginx_upstream_check_module-master/check_1.9.2+.patch ./configure --prefix=/usr/local/nginx \ --with-http_ssl_module --with-http_stub_status_module --with-pcre \ --with-...

    nginx_upstream_hash-0.3.2.tar.gz

    要使用 `nginx_upstream_hash` 模块,首先需要下载源码包 `nginx_upstream_hash-0.3.2.tar.gz`,然后编译并配置 Nginx,将模块加入到编译过程。以下是一般的编译步骤: 1. 解压源码包:`tar -zxvf nginx_upstream_...

    Nginx深入详解之upstream分配方式.docx

    Nginx 的上游服务器(upstream)配置是其作为反向代理服务器的重要功能之一,它允许将客户端请求分发到一组后端服务器上,以实现负载均衡和容错能力。在 Nginx 中,upstream 支持五种不同的分配策略,每种策略都有其...

    Redis+nginx集群部署

    通过配置Nginx的upstream模块,可以动态地将流量分发到不同的Tomcat实例,提高系统处理能力。 2. **Tomcat集群**:Tomcat是Apache软件基金会的一个开源Java应用服务器,用于运行Servlet和JSP。在集群模式下,多个...

    nginx-upstream-check-module-master.zip

    借助淘宝技术团队开发的nginx模快nginx_upstream_check_module来检测后方realserver的健康状态,如果后端服务器不可用,则会将其踢出upstream,所有的请求不转发到这台服务器。当期恢复正常时,将其加入upstream。 ...

    服务器使用Nginx部署Springboot项目的详细教程(jar包)

    在本文中,我们将深入探讨如何使用Nginx部署Spring Boot应用程序,特别关注jar包的部署。首先,让我们从创建和上传jar包开始。 1. **创建jar包**: 使用Maven作为构建工具,你可以通过运行`mvn clean install`命令...

    centos6中搭建nginx和部署wordpress项目

    CentOS 6 中搭建 Nginx 和部署 WordPress 项目 本资源摘要信息将为读者提供 CentOS 6 中搭建 Nginx 和部署 WordPress 项目的详细步骤和知识点。 一、Nginx 安装配置 1. 安装依赖包:在安装 Nginx 之前,需要安装 ...

    Nginx_upstream_hash-0.3.1.tar.gz

    这个模块的工作原理是:当一个请求到达Nginx时,它会计算请求URL的哈希值,并使用这个哈希值作为依据来选择后端服务器。这种策略常用于实现内容定位或者保持会话粘滞性,例如,如果一个用户的多次请求具有相同的URL...

Global site tag (gtag.js) - Google Analytics