Você está na página 1de 6

How to configure a new Progress AppServer Instance using Progress 9.

x or above
Modo de exibio imprimvel
INFORMAES
Article Number
000010412
Environment
Progress 9.x
OpenEdge 10.x
All Supported Operating Systems
Question/Problem
Description
How to configure a Progress AppServer Instance using Progress 9.x or above
How to setup a Progress AppServer Instance using Progress 9.x or above
How to add a new Progress AppServer broker using Progress 9.x or above

Clarifying Information

Error Message
Defect/Enhancement
Number

Cause

Resolution There is 2 ways to setup a Progress AppServer Broker:

1) Manually editing the ubroker.properties file (using any editor) located at <your Progress root installation
directory>/properties;

2) Through Progress Explorer tool.
With Progress Explorer, there is no need to manually implement changes within the ubroker.properties file. This file
becomes updated when changes are made within the Progress Explorer. Progress Explorer tool is a GUI Java interface
available only for GUI clients on Windows platforms. Progress Explorer offers the capability to remote configure an
AppServer in any other operating system. In order to perform remote AppServer configuration or administration
a Windows client license is needed. See
solutionP104148, "How to connect an AdminServer in a remote machine using Progress Explorer tool" for more information.

To create a new AppServer manually:

1) Edit <your Progress root installation directory>/properties/ubroker.properties file.

2) Find the following section:

[UBroker.AS.asbroker1]
appserviceNameList=asbroker1
brkrLogAppend=0
brokerLogFile=@{WorkPath}\asbroker1.broker.log
controllingNameServer=NS1
defaultService=1
description=A sample AppServer setup for State-reset
environment=asbroker1
password=
portNumber=3090
srvrLogAppend=0
srvrLogFile=@{WorkPath}\asbroker1.server.log
userName=
uuid=932.99.999.XXX:1ee77e:cf3bbe3d33:-8000

Note: the uuid should be different depending on the platform and the Progres version used. See
solution20105, "How to create a correct UUID in broker definition in the ubroker.properties" for more information on how to
generate UUID for the broker.

3) Copy entire the section just below where it was found. Alternatively if ther is already a customized section that serves as a
template, just copy it instead of using the section above.

4) Modify all reference to asbroker1 to a new name. e.g.: asbroker2

5) Change the portNumber parameter to another port. e.g.: portNumber=3099

6) Add or Modify the srvrStartupParam to connect the database. You can also supply a parameter file. e.g.: srvrStartupParam=-pf
connect.pf

7) Save your changes.


Using Progress Explorer tool, do the following:

1) Open Progress Explorer tool and connect it to the Admin Server.
2) Expand the treeview for the server
3) Right-click on the "AppServer" and select "New ..."
4) Type in a new AppServer name and click OK, e.g.: asbroker2
5) Right-click on the AppServer name that you just created on step 4 and select "Properties"
6) Change the Port Number
7) Click on the "Server" and type in the connect parameters to the database(s) in the "Server startup parameters". You can also supply
a parameter file. e.g.: -pf connect.pf
8) Click on OK to save the changes.

Place any remote procedures to be run by the AppServer on the machine where the AppServer will be started and compile them.
Make the necessary modification to the PROPATH parameter to contain the path of the procedures that was placed in the Server.
Remember: This is not the PROPATH for the client session but for the AppServer Agents.

Using Progress Explorer, it is possible to change it by right-clicking on the AppServer and selecting properties. PROPATH can be
found by selecting "Server".
Editing the ubroker.properties. Add or modify the PROPA.TH parameter.
e.g.: PROPATH=@{WinCharStartup\PROPATH};@{WorkPath};c:\apps\test
To start the new AppServer do the following:

a) Ensure the AdminServer is running.

e.g.: proadsv -query -port <portnumber>

b) Ensure that the NameServer is running.

e.g.: nsman -name NS1 -query

The new configuration came with a default NameServer NS1 already specified. If not using the default NameServer make sure that
the AppServer has the Controlling Name Server set to the correct name Server. NS1 is the name of the default NameServer.

c) Start the new AppServer.

e.g.: asbman -name asbroker2 -start

It possible to check the status of the NameServer and start the AppServer via Progress Explorer by clicking on the AppServer and
select "Start".

To test if the configuration started successfully use: asbman -name asbroker2 -query
For Progress Explorer, simply check the status by clicking on the AppServer and select "Status".

To test if the configuration is working properly use the following code.
The following code is a sample that can be used if a sports database connected is connected to the AppServer.
It adds a extra 100 to all customers credit limits.

/* raiselim.p */

FOR EACH customer:
ASSIGN customer.credit-limit = customer.credit-limit + 100.
END.

/* end of raiselim.p */

To connect to the Windows 4GL client, call the remote procedure from a 4GL session using the following code.

DEFINE VARIABLE servhdl AS HANDLE.
DEFINE VARIABLE ret AS LOGICAL.

CREATE SERVER servhdl.
ASSIGN ret = servhdl:CONNECT("-S 5162 -H misdev -App asbroker2").

/* NOTE: The -H = host where the NameServer resides and is running.
The -S = NameServer Port (by default the port is 5162).
You do not need the -N.
The -App = specific AppServer name. */

IF ret THEN RUN raiselim.p ON SERVER servhdl TRANSACTION DISTINCT.

ASSIGN ret = servhdl:DISCONNECT().
DELETE OBJECT servhdl.
.TH parameter. e.g.: PROPATH=@{WinChar Startup\PROPATH};@{WorkPath};c:\apps\test
To start the new AppServer do the following:

a) Ensure the AdminServer is running.

e.g.: proadsv -query -port <portnumber>

b) Ensure that the NameServer is running.

e.g.: nsman -name NS1 -query

The new configuration came with a default NameServer NS1 already specified. If not using the default NameServer make sure that
the AppServer has the Controlling Name Server set to the correct name Server. NS1 is the name of the default NameServer.

c) Start the new AppServer.

e.g.: asbman -name asbroker2 -start

It possible to check the status of the NameServer and start the AppServer via Progress Explorer by clicking on the AppServer and
select "Start".

To test if the configuration started successfully use: asbman -name asbroker2 -query
For Progress Explorer, simply check the status by clicking on the AppServer and select "Status".

To test if the configuration is working properly use the following code.
The following code is a sample that can be used if a sports database connected is connected to the AppServer.
It adds a extra 100 to all customers credit limits.

/* raiselim.p */

FOR EACH customer:
ASSIGN customer.credit-limit = customer.credit-limit + 100.
END.

/* end of raiselim.p */

To connect to the Windows 4GL client, call the remote procedure from a 4GL session using the following code.

DEFINE VARIABLE servhdl AS HANDLE.
DEFINE VARIABLE ret AS LOGICAL.

CREATE SERVER servhdl.
ASSIGN ret = servhdl:CONNECT("-S 5162 -H misdev -App asbroker2").

/* NOTE: The -H = host where the NameServer resides and is running.
The -S = NameServer Port (by default the port is 5162).
You do not need the -N.
The -App = specific AppServer name. */

IF ret THEN RUN raiselim.p ON SERVER servhdl TRANSACTION DISTINCT.

ASSIGN ret = servhdl:DISCONNECT().
DELETE OBJECT servhdl.
.
Workaround

Notes

Attachment

Disclaimer
The origins of the information on this site may be internal or external to Progress Software Corporation (Progress). Progress
Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your
information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on
an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation,
the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of
the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or
delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business
interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if
Progress has been advised of the possibility of such damages.

Você também pode gostar