Caching the Application Engine Server
缓存应用程序引擎服务器
Application Engine caches metadata just like the application server. This caching enhances performance because a program can refer to the local cache for any objects that it uses.
应用程序引擎会像应用程序服务器一样缓存元数据。这种缓存提高了性能,因为程序可以引用它所使用的任何对象的本地缓存。
Cache Directory Location
高速缓存目录位置
Application Engine programs that run on a Microsoft Windows NT or UNIX server lock their own cache directory for the duration of a run. You find these directories under the master cache directory. The master directory is created under the directory specified by the CacheBaseDir variable in the PeopleSoft Process Scheduler configuration file. If all existing cache directories are locked, a new one is created. Cache subdirectories are named sequentially, starting at 1.
在Microsoft Windows NT或UNIX服务器上运行的应用程序引擎程序在运行期间锁定自己的缓存目录。您可以在主缓存目录下找到这些目录。主目录是在PeopleSoft Process Scheduler配置文件中的CacheBaseDir变量指定的目录下创建的。如果所有现有的缓存目录都被锁定,则会创建一个新的缓存目录。缓存子目录按顺序命名,从1开始。
If you do not enter a fully qualified path for the CacheBaseDir variable, then Application Engine creates a cache directory within the directory in which the program is set to run.
如果没有为CacheBaseDir变量输入完全限定路径,则应用程序引擎将在设置为运行程序的目录中创建一个缓存目录。
Note: Do not share the CacheBaseDir variable with application servers and do not use environment variables when specifying CacheBaseDir because the system does not resolve them. For example, do not set CacheBaseDir to $PS_CFG_HOME.
附注:不要与应用服务器共享CacheBaseDir变量,也不要在指定CacheBaseDir时使用环境变量,因为系统没有解析它们。例如,不要将CacheBaseDir设置为$PS_CFG_HOME。
Cache Parameters
缓存参数
The PSPRCS.CFG (PS_SERVER_CFG) file has two additional cache parameters. They are:
PSPRCS.CFG(PS_SERVER_CFG)文件有两个额外的缓存参数。它们是:
Enable Server Caching- 启用服务器缓存
- Server Cache Mode
- 服务器缓存模式
Do not alter these settings from the delivered defaults. These settings are reserved for future use.
不要从传递的默认值更改这些设置。这些设置保留以备将来使用。
Freeing Locked Temporary Tables
释放锁定的临时表
If you use dedicated temporary tables for Application Engine programs, then you might need to free, or unlock, a temporary table if the program running against it terminates abnormally. Because most Application Engine programs run through PeopleSoft Process Scheduler, typically you use Process Monitor to unlock the temporary tables. Deleting or restarting a process using Process Monitor automatically frees the locked temporary tables.
如果对应用程序引擎程序使用专用的临时表,则在针对该临时表运行的程序异常终止时,可能需要释放或解锁该临时表。因为大多数应用程序引擎程序通过PeopleSoft进程计划程序运行,所以通常使用进程监视器来解除对临时表的锁定。使用Process Monitor删除或重新启动进程会自动释放锁定的临时表。
For the programs that you invoke outside of PeopleSoft Process Scheduler, use the Manage Abends page. Programs running outside of Process Scheduler include those invoked from CallAppEngine PeopleCode and the command line.
对于您在PeopleSoft Process Scheduler之外调用的程序,请使用Manage Abends页面。在Process Scheduler之外运行的程序包括从CallAppEngine PeopleCode和命令行调用的程序。
To free locked temporary tables using the Manage Abends page:
要使用Manage A bend页面释放锁定的临时表,请执行以下操作:
- Select PeopleTools > Application Engine > Manage AE Abends..
选择PeopleTools>应用程序引擎>管理AE异常
- Identify the program that has locked the temporary tables you want.
确定已锁定所需临时表的程序。
Use the process instance, run control ID, program name, user ID, and run date and time columns to uniquely identify programs.
使用流程实例、运行控件ID、程序名、用户ID以及运行日期和时间列来唯一标识程序。
- Click the Temp Tables link.
单击临时表链接。
- On the Temporary Tables page, click the Release button to unlock the temporary tables associated with the program.
在“临时表”页上,单击“释放”按钮以解锁与程序关联的临时表。
Analyzing Application Engine Programs
分析应用程序引擎程序
Application Engine programs can be analyzed by using the associated temporary table data. You can retain temporary table data by enabling temporary table data tracing in PeopleSoft Configuration Manager.
可以使用关联的临时表数据来分析应用程序引擎程序。您可以通过在PeopleSoft Configuration Manager中启用临时表数据跟踪来保留临时表数据。
See Enabling Application Engine Tracing
请参阅启用应用程序引擎跟踪
Use AET Analyzer tool to analyze and view the results.
使用AET分析器工具来分析和查看结果。
This example illustrates the fields and controls on the Filter Option in Log Analyzer.
此示例说明了日志分析器中的筛选器选项上的字段和控件。
In the AET Analyzer tool, filter out the Application Engine steps with temporary table using the Temp Table option, and analyze.
在aet analyzer工具中,使用temp table选项过滤出带有临时表的应用程序引擎步骤,并进行分析。
To filter:
要过滤:
- In AET Analyzer tool, open the AET file.
在AET分析器工具中,打开AET文件。
- Load the corresponding temporary table.
加载相应的临时表。
Note: After the temp table file is loaded, the Include All Tables check box is enabled.
注意:加载临时表文件后,启用“包括所有表”复选框。
- Ensure that Include All Tables check box is cleared.
确保清除“包括所有表”复选框。
- Select Apply Filter to display only AE steps with temporary table.
选择应用过滤器仅显示带有临时表的AE步骤。
- You can further filter the AE steps with temporary table based on a SQL action by selecting the desired action from the SQL View Options group box.
通过从SQL View Options组框中选择所需的操作,可以根据SQL操作使用临时表进一步过滤AE步骤。
- Highlight the AE step that you want to view and analyze, and click Diff Temp Table button.
突出显示要查看和分析的AE步骤,然后单击"差异温度表"按钮。
The result displays the modification done to temporary table data.
结果显示对临时表数据所做的修改。
Configuring Application Engine Action Plug-ins
配置应用程序引擎操作插件
PeopleTools allows you to configure an Application Engine action plug-in to alter the SQL or PeopleCode actions of any Application Engine.
PeopleTools允许您配置一个应用程序引擎操作插件来改变任何应用程序引擎的SQL或PeopleCode操作。
The configured plug-in action is executed at runtime. This effectively allows you to modify the code without actually customizing or re-designing the Application Engine program.
配置的插件动作在运行时执行。这实际上允许您修改代码,而无需实际自定义或重新设计应用程序引擎程序。
Configure the selected SQL or PeopleCode action of the Application Engine program by adding new SQL, PeopleCode, or both and/or by replacing the existing SQL or PeopleCode action through PIA in the AE Action Plugin page (PeopleTools, Application Engine).
配置应用程序引擎程序的选定SQL或PeopleCode操作,方法是在AE操作插件页面(PeopleTools,应用程序引擎)中添加新SQL、PeopleCode或两者,和/或通过PIA替换现有SQL或PeopleCode操作。
Note: You can add or replace only SQL and PeopleCode actions in the Application Engine program. Only sections with steps having SQL or PeopleCode actions of the Application Engine program, which you plan to configure, will be displayed in PIA. This feature is not designed to add new sections or steps to an existing Application Engine program.
注意:您只能在应用程序引擎程序中添加或替换SQL和PeopleCode操作。只有包含您计划配置的Application Engine程序的SQL或PeopleCode操作的步骤的部分才会显示在PIA中。此功能不是为向现有应用程序引擎程序添加新部分或步骤而设计的。
Actions belonging to the same step of the same section of the Application Engine program can have multiple plug-in actions defined. The plug-in action type does not have to match the action type that is selected for configuration. You can re-use the same SQL or PeopleCode plug-in action multiple times for different Application Engine programs.
属于Application Engine程序的同一部分的同一步骤的操作可以定义多个插件操作。插件操作类型不必与为配置选择的操作类型匹配。您可以重复使用为不同的应用程序引擎程序多次执行相同的SQL或PeopleCode插件操作。
The Application Engine action that is being configured cannot be used as a plug-in to configure another Application Engine program. Also, you cannot define a plug-in for the Application Engine action that is already been used as a plug-in.
正在配置的应用程序引擎操作不能用作插件来配置另一个应用程序引擎程序。此外,不能为已经用作插件的Application Engine操作定义插件。
For example, if Application Engine program A action Y is configured to use Application Engine program B action X as a plug-in, then Application Engine program A action Y cannot be used as a plug-in for any other Application Engine program. Also, you cannot configure a plug-in for Application Engine program B action X.
例如,如果应用程序引擎程序A操作Y配置为将应用程序引擎程序B操作X用作插件,则应用程序引擎程序一个动作Y不能用作任何其他应用程序引擎程序的插件。此外,不能为应用程序引擎程序B操作X配置插件。
Ensure that information such as state records, temporary tables, PeopleCode variables that are required by the plugged-in action is made available from the configured Application Engine program.
确保诸如状态记录、临时表、PeopleCode变量之类的信息可以从配置好的Application Engine程序中获得。
To add new Application Engine plug-in actions:
要添加新的Application Engine插件操作,请执行以下操作:
- In Application Designer, identify an existing or create a new Application Engine program with the SQL or PeopleCode actions that you want to use to configure the SQL or PeopleCode actions of any Application Engine program.
在“应用程序设计器”中,使用要用于配置任何应用程序引擎程序的SQL或PeopleCode操作的SQL或PeopleCode操作来标识现有的应用程序引擎程序或创建新的应用程序引擎程序。
To create an Application Engine program, see Creating, Opening, and Renaming Programs
若要创建应用程序引擎程序,请参见创建、打开和重命名程序
- In the PIA, open AE Action Plugin page by selecting PeopleTools > Application Engine > AE Action Plugins.
在PIA中,通过选择PeopleTools>应用引擎>AE Action Plugins来打开AE Action Plugin页面。
- Choose the Application Engine program that you want to configure by plugging-in the desired SQL or PeopleCode actions from the newly created Application Engine program.
通过从新创建的应用程序引擎程序中插入所需的SQL或PeopleCode操作,选择要配置的应用程序引擎程序。
See the subsequent Configuration Options section for details.
有关详细信息,请参阅后续的配置选项部分。
- Verify the configured Application Engine program in Application Designer to know the impact of the plug-ins.
在应用程序设计器中验证已配置的应用程序引擎程序,以了解插件的影响。
You can identify the configured SQL or PeopleCode action by a red flash on its icon.
您可以通过其图标上的红色闪光来识别配置的SQL或PeopleCode操作。
This image shows the configured SQL action with a red flash. On the code pane, the additional code is highlighted in blue, code being replaced is in strikeout, and the replacement code in red. The codes are displayed based on the order of execution defined in the PIA.
此图像显示了配置的SQL操作,并显示了红色闪光。在“代码”窗格上,附加代码以蓝色突出显示,被替换的代码以删除线显示,替换代码以红色突出显示。代码是根据PIA中定义的执行顺序显示的。
Note: You can use the %AECallerApplId system variable to identify the name of the Application Engine program that executed a plug-in action or a call section to the currently executing program. For more details, see “%AECallerApplId” (PeopleCode Language Reference)
On-Exit Application Engine Plug-in
出口应用引擎插件
PeopleTools allows you to configure an On-Exit Application Engine plug-in at the end of an Application Engine program. This enables the Application Engine program to run and exit based on the conditions defined for the On-Exit Application Engine plug-in.
PeopleTools允许您在应用程序引擎程序结束时配置On-Exit应用程序引擎插件。这使Application Engine程序能够根据为On-Exit Application Engine插件定义的条件运行和退出。
On the PIA, you can specify which section, step, SQL or PeopleCode action should run on-exit from an Application Engine program.
在PIA上,您可以指定从应用程序引擎程序退出时应该运行哪个部分、步骤、SQL或PeopleCode操作。
Note: On-Exit plug-ins can be configured for any existing Application Engine programs.
注意:可以为任何现有的应用程序引擎程序配置On-Exit插件。
You can verify the configured On-Exit Application Engine plug-in in the Application Designer.
您可以在应用程序设计器中验证已配置的On-Exit应用程序引擎插件。
This example shows an On-Exit Application Engine plug-in configured in the Application Designer.
此示例显示在应用程序设计器中配置的On-Exit应用程序引擎插件。
Configuration Options
配置选项
Use the AE Action Plugin page to configure Application Engine action plug-in and On-Exit Application Engine plug-in.
使用AE操作插件页面配置应用程序引擎操作插件和On-Exit应用程序引擎插件。
This example illustrates the fields and controls on the AE Action Plugin page. You can find definitions for the fields and controls later on this page.
本示例说明了AE操作插件页面上的字段和控件。您可以在本页稍后找到字段和控件的定义。
Use these configuration options to configure a delivered Application Engine program:
Field or Control | Description |
Enabled | Select this check box to enable the configuration. |
Field or Control | Description |
Section | Select a section of the delivered Application Engine program, which you plan to configure. Only sections with steps having SQL or PeopleCode are listed. |
Step | Select a step of the chosen section. Only steps that have SQL or PeopleCode actions are listed. |
Action | Select an action from the chosen step. |
Plugin Name | Select the new Application Engine program that contains the new SQL or PeopleCode action, which will be used to configure the delivered Application Engine program. |
Section | Select the required section from the new Application Engine program. |
Step | Select the required step from the selected section. |
Action | Select the SQL or PeopleCode action from the selected step to add before or after the existing action, or to replace the existing action. |
Mode | The three modes that decide the execution order of the configured Application Engine action:
|
Order within Mode | This field is required if the same action belonging to the same step of the same section of the configured Application Engine program has multiple plug-ins using the same mode. The value entered in this field decides the sequence in which the actions within the mode run during execution. |
Description | (Optional) Descriptive notes. |
Use these configuration options to configure On-Exit Application Engine plug-in:
Field or Control | Description |
Enabled | Select this check box to enable the On-Exit plug-in configuration. |
Plugin Name | Select the On-Exit Application Engine plug-in. |
Section | Select a section of the On-Exit Application Engine plug-in that you plan to run. |
Step | Select a step of the selected section. |
Action Type | Select an action of the selected step. |
<Exit Conditions> | These are the exit conditions:
The On-Exit Application Engine plug-in runs based on the exit condition defined in the Application Engine program. For example, for an Application Engine program, if you set the On-Exit plug-in to run for the On-Break exit condition, the On-Exit plug-in runs when the last action executed before the Application Engine program exited was a SQL or PeopleCode action that issued a Break condition. See documentation for SQL and PeopleCode actions. See Using PeopleCode in Application Engine Programs Note: At least one of the exit conditions must be selected. Otherwise, an error is displayed while saving. |
Note: In the PIA, the Actions Plugin grid gets disabled if the selected Application Engine program does not have SQL or PeopleCode actions, and a message is displayed stating that only On-Exit plug-ins can be configured.
Performance
性能
Sometimes plug-in changes may not be immediately recognized. It might take at most ten minutes for the changes to be recognized.
有时插件更改可能无法立即识别。可能最多需要10分钟才能识别更改。
The processes where it takes time for the plug-in changes to come in effect are:
插件更改生效需要时间的流程如下:
- When an active application server is running CallAppEngine() PeopleCode.
- 当活动应用服务器运行CallAppEngine()PeopleCode时。
- When viewing an Application Engine Program Flow view in an active Application Designer session.
- 在活动的应用程序设计器会话中查看应用程序引擎程序流视图时。
- When an Application Engine program begins processing before the plug-in change is initiated.
- 当应用程序引擎程序在插件更改启动前开始处理时。
Note that there cases where plug-in changes are immediately recognized, and those are:
请注意,在某些情况下,插件更改会立即被识别,这些情况是:
- While stopping and restarting any one process from the above set of processes.
- 同时停止和重新启动上述进程集中的任何一个进程。
- When an Application Engine program is run through the Process Scheduler.
当应用程序引擎程序通过进程调度器运行时。