`

Open-erp8的启动过程

 
阅读更多

1、主程序 

openerp/cli/server.py

def main(args):

    check_root_user()  #检查 root 用户,如是 root 则不能运行

    openerp.tools.config.parse_config(args) #配置文件处理: openerp-server.conf

    check_postgres_user()  #检测 postgres 用户

    report_configuration() #报表配置

 

    config = openerp.tools.config

 

    if config["test_file"]:

        config["test_enable"] = True

 

    if config["translate_out"]:

        export_translation()

        sys.exit(0)

 

    if config["translate_in"]:

        import_translation()

        sys.exit(0)

 

    # This needs to be done now to ensure the use of the multiprocessing

    # signaling mecanism for registries loaded with -d

    if config['workers']:

        openerp.multi_process = True

 

    preload = []

    if config['db_name']:   #如果配置了 db_name 在配置文件 , 则加载对应的 erp-module

        preload = config['db_name'].split(',')

 

    stop = config["stop_after_init"]

 

    setup_pid_file()

    rc = openerp.service.server.start(preload=preload, stop=stop)  #启动 server 

    

    sys.exit(rc)

 

2、 web 模块

openerp.service.server.start(preload=preload, stop=stop)  #启动 server 

启动 web , ( httpd, MVC) 等 ,等待web服务

 

3、Server 模块

openerp/service/server.py

提供服务,包括: http request 处理 等

 

4、dao模块

sql_db.py

class Cursor(object): 用这个对象操作 数据库。 Cursor 在参数中一般写作  cr , 代表  transaction 。

 

5、log 模块

用 python 库, logging 。由 netsvr.py 模块初始化。

def init_logger():

 

用 log 跟踪 运行。

 

分享到:
评论
2 楼 白云天 2014-09-26  
openerp/service/server.py 中的 ThreadedServer 对象

def http_thread(self):
     def app(e, s):
        return self.app(e, s)
     self.httpd = ThreadedWSGIServerReloadable(self.interface, self.port, app)
     self.httpd.serve_forever()


启动了 http 服务。

1 楼 白云天 2014-09-26  
http.py 模块 中:
root = Root()
openerp.service.wsgi_server.register_wsgi_handler(root)

注册了 wsgi 的 处理类(保存在 module_handlers 列表 )

Root 类处理 所有模块的静态访问资源(web/static/res)

相关推荐

    openmeetings4.0.0的linux版本

    - **启动服务**:使用提供的`red5.sh`脚本来启动OpenMeetings服务,如`./red5.sh start`。 ### 3. 关键文件解析 在提供的压缩包文件中,包含了一些重要文件: - **install-service.bat**:Windows系统的服务安装...

    OpenMeetings安装配置

    3. **部署OpenMeetings**:将生成的war文件复制到Tomcat的webapps目录下,启动Tomcat服务器,OpenMeetings会自动解压并部署。 四、初始化设置 首次访问OpenMeetings时,系统会引导你进行初始化设置,包括设置管理员...

    openerp开发环境

    - `sudo apt-get install python-pip python-dev build-essential libxml2-dev libxslt1-dev antiword unrtf poppler-utils tesseract-ocr openjdk-8-jdk` - `sudo pip install -U pip` - `sudo pip install -r ...

    oracle ERP Report ERP開發報表詳細說明步驟

    Oracle ERP Report 开发是企业...通过以上步骤,初学者可以逐步了解并掌握Oracle ERP Report的开发过程。在实践中不断练习,结合实际业务需求,将能更熟练地创建满足业务需求的报表,从而提高工作效率和数据分析能力。

    openmeetings最新的安装程序

    在最新版的OpenMeetings安装程序中,这两个关键组件已经预装并配置好,用户只需解压提供的压缩包,按照指南启动服务,即可开始使用OpenMeetings的各项功能。这极大地提高了部署效率,尤其对于非技术背景的用户来说,...

    OpenAS2是EDIINT AS2标准的一个基于java的实现,它的目的是作为一个服务器使用,它是非常可配置的,并支.zip

    在实际应用中,OpenAS2服务器可以与其他企业系统如ERP、CRM等集成,通过AS2协议与合作伙伴进行安全的数据交换。配置OpenAS2涉及以下几个步骤: 1. **环境准备**:确保系统已安装Java运行环境(JRE)和Java开发工具...

    架构+TOGAF+IT

    ADM提供了一种迭代的、灵活的方法来开发和实施企业架构,而内容框架则定义了在ADM过程中应考虑的组件和模型。 1.1 ADM阶段 TOGAF的ADM包含多个阶段,从企业战略分析到架构实施和治理,每个阶段都有明确的目标和产出...

    AS2开源软件实现

    1. **加密**:AS2支持使用SSL/TLS来加密传输的数据,确保数据在传输过程中不被窃取或篡改。这为敏感业务信息提供了必要的安全保障。 2. **数字签名**:每个AS2消息都包含发送方的数字签名,允许接收方验证消息的...

    otrs.zip_OTRS_zip

    OTRS(Open-source Ticket Request System)是一款开源的票务系统,常用于客户服务、技术支持和问题管理。"otrs.zip_OTRS_zip"很可能是指一个包含了OTRS系统相关文件的压缩包。这个压缩包可能是为了便于传输或备份...

    Oracle 11g问答题

    - **OPEN**: 数据库完全启动,可以正常读写数据。 #### 18. 关闭数据库的方式及其区别 - **NORMAL**: 正常关闭,等待所有事务完成后再关闭。 - **IMMEDIATE**: 强制关闭,立即终止所有事务并关闭。 - **...

    02【精选讲义】TOGAF 2019年最新完整培训讲义(472张PPT).pdf

    根据提供的文件信息,我们可以归纳出以下关键知识点,主要聚焦于TOGAF(The Open Group Architecture Framework)及其在业务架构中的应用: ### 一、TOGAF概述 **1. 定义** - TOGAF是一种企业架构框架,旨在帮助...

    OFBiz-alipay 配置文档

    OFBiz(Open For Business Project)是一个开源的企业级应用框架,用于构建和管理电子商务网站、供应链管理、CRM、ERP等业务系统。它提供了全面的业务组件和服务,使得开发者可以快速搭建和定制企业级应用程序。在与...

    SAP中文编程教程,入门到提高

    在IT领域,SAP是一种广泛使用的业务应用软件,主要用于企业资源规划(ERP)。ABAP(Advanced Business Application Programming)是SAP系统中的一种编程语言,用于开发和定制SAP应用程序。本教程“SAP中文编程教程,...

    oracle学习笔记下载

    在 Oracle 数据库的学习过程中,了解如何查看和管理数据库的系统参数是非常重要的。这些参数直接影响着数据库的性能和稳定性。 ##### 查看 SGA 和 PGA 参数 - **`SHOW SGA`**:用于显示当前数据库实例的共享全局区 ...

    sql2000数据库管理软件

    - SQL2000数据库管理软件适用于各种需要存储和处理结构化数据的场景,如企业资源规划(ERP)、客户关系管理(CRM)系统、电子商务平台等。 - 其管理软件通常包含数据查询、备份恢复、性能监控、安全设置等多个功能...

    datax数据同步部署笔记

    "querySql": ["SELECT a.spid as erp_product_id,a.ckid as warehouse_id,sum(a.shl) as stock_num FROM phspkc AS a LEFT JOIN zl_spzl zs ON a.spid = zs.spid LEFT JOIN phzykc AS b ON a.spid= b.spid AND a....

    OPENTAPS综合资料文档

    OPENTAPS(Open Source Enterprise Transaction Processing System)是一个全面的开源企业解决方案,它集成了CRM(客户关系管理)、ERP(企业资源规划)以及其他关键业务功能,如供应链管理、财务管理和生产制造等。...

    Fanuc机床二次开发包

    标题中的“Fanuc机床二次开发包”指的是针对Fanuc数控系统的软件开发工具,这通常涉及到对Fanuc的Focas(Factory Automation open communication architecture system)框架的利用,以实现与Fanuc机床的交互和定制化...

    ebsERP_R12正式环境安装

    在IT领域,Oracle E-Business Suite (EBS) 是一套全面的企业资源规划(ERP)解决方案,它提供了财务、供应链管理、人力资源等核心业务流程的支持。本文将详细阐述如何进行ebsERP_R12的正式环境安装,以供对Oracle ...

Global site tag (gtag.js) - Google Analytics