Oracle HTTP Server Modules

Oracle HTTP Server (OHS) 是基于Apache HTTP Server的Web服务器,属于Oracle Fusion Middleware中的一个Web层组件。

Oracle HTTP Server有以下几项组件:
HTTP listener:用于处理用户请求,并把这些请求导向合适的处理工具。
Modules(mods): Oracle HTTP Server包含了非常多的Modules(mod_oc4j、mod_pl/sql、mod_osso),正是这些Module实现了HTTP Server各种基础功能。通过这些Module支持不同语言开发的服务端程序。
  • Perl (through mod_perl and CGI)

  • C (through CGI and FastCGI)

  • C++ (through FastCGI)

  • PHP (through mod_php)

  • Oracle PL/SQL(mod_pl/sql and PL/SQL)

mod_oc4j
负载均衡的角色,用于连接Oracle HTTP Server与OC4J的实例,mod_oc4j会从众多OC4J的实例中根据负载情况选取一个来传递请求。
When running Oracle Application Server,   the module mod_oc4j is the connector from Oracle HTTP Server to one or more OC4J instances
Each OC4J process within an OC4J instance runs in its own Java Virtual Machine (JVM) and is responsible for parsing J2EE requests and generating a response. When a request comes into Oracle HTTP Server, mod_oc4j picks an OC4J process and routes the request to the selected OC4J process. Within each OC4J instance all of the OC4J JVM processes use the same configuration and start with the same Java options. Likewise, unless a process dies or there is some other problem, each OC4J process that is part of an OC4J instance has the same J2EE applications deployed to it. 


mod_plsql
Mod_PLSQL interface for executing PL/SQL stored procedures in an Oracle database。mod_plsql provides support for building PL/SQL-based applications on the Web. PL/SQL stored procedures retrieve data from a database and generate HTTP responses containing data and code to display in a Web browser. 
Oracle HTTP Server Modules_第1张图片
  1. The Oracle HTTP Server receives a PL/SQL Server Page request from a client browser.

  2. The Oracle HTTP Server routes the request to mod_plsql.

  3. The request is forwarded by mod_plsql to the Oracle Database. By using the configuration information stored in your DAD, mod_plsql connects to the database.

  4. mod_plsql prepares the call parameters, and invokes the PL/SQL procedure in the application.

  5. The PL/SQL procedure generates an HTML page using data and the PL/SQL Web Toolkit accessed from the database.

  6. The response is returned to mod_plsql.

  7. The Oracle HTTP Server sends the response to the client browser.

The procedure that mod_plsql invokes returns the HTTP response to the client. To simplify this task, mod_plsql includes the PL/SQL Web Toolkit, which contains a set of packages called the owa packages. Use these packages in your stored procedure to get information about the request, construct HTML tags, and return header information to the client. Install the toolkit in a common schema so that all users can access it.


mod_osso
Oracle EBS R12单点登录(SSO)解决方案的代理。见: http://blog.csdn.net/pan_tian/article/details/8691726


OC4J
Oracle Containers for J2EE,OC4J provides all the containers, APIs, and services mandated by the J2EE specification. 
OC4J可以作为独立J2EE Server存在,比如你开发的JSP和Servlet,打包成war/ear文件,然后部署到OC4J容器供用户调用。

Oracle EBS 11i的时候是使用JServ(Java servlet containers) 作为J2EE Server,到了R12,使用OC4J替代JServ来作为J2EE容器。
默认Oracle Application会创建3个OC4J Instance:
  • OACore: 运行OA Framework应用;
  • Forms: 运行Forms-base 应用;
  • OAFM (Oracle Apps Fusion Middleware): 运行web services, mapviewer, ascontrol

命令: adopmnctl.sh status
xxx@yyy:/home/zzzz$adopmnctl.sh status

You are running adopmnctl.sh version 120.6.12010000.5

Checking status of OPMN managed processes...

Processes in Instance: abcde.com.cn
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status
---------------------------------+--------------------+---------+---------
OC4JGroup:default_group          | OC4J:forms-c4ws    | 123210~ | Alive
OC4JGroup:default_group          | OC4J:oafm          | 534118~ | Alive
OC4JGroup:default_group          | OC4J:forms         | 264767~ | Alive
OC4JGroup:default_group          | OC4J:oacore        | 283117~ | Alive

HTTP_Server                      | HTTP_Server        | 262144~ | Alive


adopmnctl.sh: exiting with status 0

Loglevel Setup
$ORA_CONFIG_HOME/10.1.3/j2ee/<oacore, forms, oafm>/config

Log file Path:
$ORA_CONFIG_HOME/10.1.3/j2ee/<oacore, forms, oafm>/application-deployments/<oacore, forms, oafm>/orion-application.xml


参考:
Understanding Oracle HTTP Server Modules
http://otndnld.oracle.co.jp/document/products/as10g/101300/B25221_03/web.1013/b14432/intro.htm#CEGBBGAC
R12: OC4J Overview
http://docs.oracle.com/cd/B19306_01/server.102/b14337/concept.htm

你可能感兴趣的:(Oracle HTTP Server Modules)