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 压缩

01    # vi /etc/nginx/nginx.conf
02
03 --------------nginx.conf 需修改内容节选--------------------------
04 gzip on;
05 gzip_disable "msie6";
06
07 gzip_vary on;
08 gzip_proxied any;
09 gzip_comp_level 6;
10 gzip_buffers 16 8k;
11 gzip_http_version 1.1;
12 #添加一个类型 application/javascript
13 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 配置文件 01 # touch /etc/nginx/sites-enabled/openerp
02 # vi /etc/nginx/sites-enabled/openerp
03
04 --------------------openerp 文件内容---------------------------
05
06 proxy_temp_path /tmp/nginx_proxy_temp;
07 proxy_cache_path /tmp/nginx_proxy_cache levels=1:2 keys_zone=oecache:100m inactive=3d max_size=1000m;
08
09 proxy_buffer_size 32k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
10 proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
11 proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
12 proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传
13
14 proxy_connect_timeout 60;
15 proxy_send_timeout 60;
16 proxy_read_timeout 3000;
17
18 upstream oeserver{
19 server 127.0.0.1:8069;
20 }
21
22 server {
23
24 server_name www.example.com;
25
26 root /var/www/openerp-6.1-1/openerp/addons;
27
28 location /{
29
30 proxy_cache oecache;
31 #proxy_cache_key "$host$request_uri$request_body";
32 proxy_cache_key $host$request_uri$request_body;
33 proxy_cache_valid 200 304 1d;
34 proxy_cache_valid any 1d;
35
36 proxy_next_upstream http_502 http_504 error timeout invalid_header;
37 proxy_pass_header Set-Cookie;
38 proxy_set_header Host $host;
39 proxy_set_header X-Real-IP $remote_addr;
40 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
41 proxy_redirect off;
42
43 proxy_pass http://oeserver;
44
45 proxy_buffering on;
46 proxy_cache_valid 1d;
47 expires 1d;
48 }
49
50 location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
51 proxy_buffering on;
52 proxy_cache_valid 1d;
53 expires 1d;
54 }
55
56 } 完成 ! Nginx 此处仅仅是作为 openerp 的前端WEB服务器,Nginx 还有更大的作用是可以实现Openerp 的负载平衡。

使用Nginx Upstream 部署 OpenERP的更多相关文章

  1. Diango + uwsgi + nginx 项目部署(可外网访问)

    自己通过nginx uwsgi 部署django项目,查询了很多资料,遇到了很多问题,最终完成了部署,趁着心情愉悦,写个随笔,为曾像我一样苦寻解决方案的小伙伴们提供些思路. 安装Nginx: #安装n ...

  2. [Redmine] Centos5上安装Redmine3.0+nginx+thin部署

    项目管理的需要所以安装Redmine,其实wiki放在上面也不错的. 首先是安装,ruby应用第一次装,把坑记住. nginx, mysql是已经安装好的,只需要配置, 结合nginx的部署方式很多, ...

  3. Nginx+upstream针对后端服务器容错的运维笔记

    熟练掌握Nginx负载均衡的使用对运维人员来说是极其重要的!下面针对Nignx负载均衡upstream容错机制的使用做一梳理性说明: 一.nginx的upstream容错 1)nginx 判断节点失效 ...

  4. Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统

    Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统 这个是写好的Django程序在本地机运行的情况,一个查询接口. 准备工作 1.首先购买一台阿里云的EC ...

  5. 解决nginx+uWSGI部署Django时遇到的static文件404的问题

    昨天是利用Django自带的runserver部署的服务器,但是由于runserver比较不稳定,因此决定采用uWSGI+nginx进行部署. 昨天已经安装好了uwsgi和nginx,使用该指令打开8 ...

  6. nginx Win下实现简单的负载均衡(1)nginx搭建部署

    快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...

  7. Tomcat+nginx+Keepalived部署实现集群

    Tomcat+nginx+Keepalived部署实现集群 环境说明: 系统:Centos-7 主机:Centos-7 x3 IP地址: 服务器1(192.168.10.102/24) 服务器2(19 ...

  8. nginx upstream 容错机制

    熟练掌握Nginx负载均衡的使用对运维人员来说是极其重要的!下面针对Nignx负载均衡upstream容错机制的使用做一梳理性说明: 一.nginx的upstream容错 1)nginx 判断节点失效 ...

  9. Nginx + uWSGI部署中的一些小坑

    1.invalid host in upstream报错 重新启动nginx : sudo /etc/init.d/nginx restart 原因是在配置负载均衡nginx.conf配置文件时,发现 ...

随机推荐

  1. How far away ?(DFS)

    How far away ? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  2. Android 脚本设计之 SL4A

    SL4A的全称为Scripting Layer for Android, 顾名思义就是Android的脚本架构层,它的目的就是可以用熟知的脚本开发语言来开发Android应用程序.其工作原理基于RPC ...

  3. JavaScript 新手的踩坑日记

    引语 在1995年5月,Eich 大神在10天内就写出了第一个脚本语言的版本,JavaScript 的第一个代号是 Mocha,Marc Andreesen 起的这个名字.由于商标问题以及很多产品已经 ...

  4. jQuery碎语(3) 动画特效

    5.动画特效 ● 自制折叠内容块 内容块如下 <div class="module"> <div class="caption"> &l ...

  5. MVC无限级分类02,增删改查

    继上一篇"MVC无限级分类01,分层架构,引入缓存,完成领域模型与视图模型的映射",本篇开始MVC无限级分类的增删改查部分,源码在github. 显示和查询 使用datagrid显 ...

  6. leetcode第一刷_Gray Code

    说到格雷码,应该没人不知道,详细它有什么用,我还真不是非常清楚,我室友应该是专家.生成的规律不是非常明显,之前看到帖子讲的,这会儿找找不到了.. 思想是这种,假设有n位,在第2^(n-1)个编码以下画 ...

  7. 3种方式实现KVO并进行对比

    KVO KVO属于设计模式中的观察者模式,在观察者模式中,一个对象任何状态的变更都会通知另外的对改变感兴趣的对象.这些对象之间不需要知道彼此的存在,这其实是一种松耦合的设计.当某个属性变化的时候,我们 ...

  8. tomcat配置manager

    tomcat-users.xml配置 <role rolename="manager-gui"/><user username="tomcat" ...

  9. Java操作Mongodb 保存/读取java对象到/从mongodb

    从http://central.maven.org/maven2/org/mongodb/mongo-java-driver/选择一个版本进行下载,这里选择的是3.0.0版本,具体下载以下jar包: ...

  10. 使用FastDateFormat来代替JDK自带的DateFormat

    之前一直使用SimpleDateFormat来做Date到String的类型转换,现建议使用apache commons-lang3中的FastDateFormat. 因为JDK里自带的SimpleD ...