Consultor Eletrônico



Kbase P138817: Why are there multiple server processes get started for a database?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   20/02/2009
Status: Verified

GOAL:

Why are there multiple server processes get started for a database?

GOAL:

Why are there many _mproserv processes running?

GOAL:

Why are there multiple instances of my database broker running?

FACT(s) (Environment):

All Supported Operating Systems
Progress/OpenEdge Product Family

FIX:

This is expected behavior. The database broker is an _mprosrv process and so are the server processes that get
spawned for remote connections. They are child processes to the broker _mprosrv process. Therefore, every database being started on a machine will start at least one _mprosrv process. Then if there are multiple remote server processes being spawned to handle remote 4GL clients, then each of these will also be an _mprosrv. The number of server processes that can be spawned is set with the database startup parameter -Mn (number of servers). For example, this command to start a broker will allow for 6 servers to be spawned:

proserve db-name -S 5000 -H host-name -Mn 6 -Ma 6

Initially only one _mprosrv will start for the primary broker. As 4GL clients connect, more _mprosrv processes will be started until the -Mn (in this case 6) is reached. At that point the clients will connect to the existing _mprosrv processes until the maximum clients per server value (-Ma) is reached (in this case it is also 6).