Estimating PASOE resources requirements

Posted by rob.h.hernandez@gmail.com on 12-Jul-2019 20:03

Do any guidelines or formulas exist that would assist in estimating PAS 11.7.5 memory and CPU requirements?

 

PAS resource requirements are dependent on the application, user count, PAS configuration and various other factors. However, do any basic guidelines exist that would indicate what might be at least a reasonable starting point for allocation of memory and CPU resources for a production instance of PAS? Development and QA activity will provide little if any indication of the resource requirements needed for production.

 

The PAS application will process REST web service requests against an OE RDBMS.

 

PAS 11.7.5

Linux OS

Posted by dbeavon on 12-Jul-2019 21:33

I'd recommend doing some load testing.  Everyone's situation is different.   As you say, there are lots of factors that come into play.

For starters, are you using "shared memory" or "client-server" for database connections?  Sometimes the network becomes a factor, since the "client-server" database connectivity is very chatty and can have high latency even when there is lots of available bandwidth.

You didn't mention your licensing model which is probably another good starting point for this discussion.

Where RAM is concerned I would start with 16 GB of RAM per server and make adjustments from there.  For the sake of networking, I would recommend setting up additional/redundant PASOE VMs behind a load-balancer.  This distributes network traffic which can easily reach 100,000 tiny-packets-per-second-per-pasoe-server over "client-server" database connections.  In addition to distributing network traffic, the load-balancing is also helpful for other goals like high-availability, fault-tolerance .

For CPU's I would go with at least 4 cores (3 GHz or better) on each PASOE VM.  If you are using "shared memory" connections then you may need more CPU's or you will see some CPU-related bottlenecks, having a CPU bottleneck in PASOE is a "good problem" and I've rarely seen it happen ...  If your PASOE servers use "client-server" database connectivity like ours then your apps will *rarely* become CPU-bound because they block all day long on network requests.

Are you migrating from classic?  If so then you can probably assume similar hardware requirements minus 20-40% RAM.

My experience is based on running PASOE on Windows , which uses similar hardware.  Since you are Linux you might want to investigate the use of docker containers and I'm not sure how that affects hardware requirements if at all.

Posted by Roy Ellis on 15-Jul-2019 12:38

Hi Rob,

I agree with all of David's comments, just wanted to share some documentation that may help.

1) Machine sizing information, from my testing with the ATM utility on Amazon, you mileage will vary

         docs.progress.com/.../Machine-Sizing-Test-Information.html

2) Tuning Guide: docs.progress.com/.../Tune-PAS-for-OpenEdge-instances.html

Again as David eluded too, you should be able to use less memory and CPU than classic. Or handle many more concurrent requests on the same size machine.

Hope this helps, Roy

All Replies

Posted by dbeavon on 12-Jul-2019 21:33

I'd recommend doing some load testing.  Everyone's situation is different.   As you say, there are lots of factors that come into play.

For starters, are you using "shared memory" or "client-server" for database connections?  Sometimes the network becomes a factor, since the "client-server" database connectivity is very chatty and can have high latency even when there is lots of available bandwidth.

You didn't mention your licensing model which is probably another good starting point for this discussion.

Where RAM is concerned I would start with 16 GB of RAM per server and make adjustments from there.  For the sake of networking, I would recommend setting up additional/redundant PASOE VMs behind a load-balancer.  This distributes network traffic which can easily reach 100,000 tiny-packets-per-second-per-pasoe-server over "client-server" database connections.  In addition to distributing network traffic, the load-balancing is also helpful for other goals like high-availability, fault-tolerance .

For CPU's I would go with at least 4 cores (3 GHz or better) on each PASOE VM.  If you are using "shared memory" connections then you may need more CPU's or you will see some CPU-related bottlenecks, having a CPU bottleneck in PASOE is a "good problem" and I've rarely seen it happen ...  If your PASOE servers use "client-server" database connectivity like ours then your apps will *rarely* become CPU-bound because they block all day long on network requests.

Are you migrating from classic?  If so then you can probably assume similar hardware requirements minus 20-40% RAM.

My experience is based on running PASOE on Windows , which uses similar hardware.  Since you are Linux you might want to investigate the use of docker containers and I'm not sure how that affects hardware requirements if at all.

Posted by Roy Ellis on 15-Jul-2019 12:38

Hi Rob,

I agree with all of David's comments, just wanted to share some documentation that may help.

1) Machine sizing information, from my testing with the ATM utility on Amazon, you mileage will vary

         docs.progress.com/.../Machine-Sizing-Test-Information.html

2) Tuning Guide: docs.progress.com/.../Tune-PAS-for-OpenEdge-instances.html

Again as David eluded too, you should be able to use less memory and CPU than classic. Or handle many more concurrent requests on the same size machine.

Hope this helps, Roy

Posted by rob.h.hernandez@gmail.com on 15-Jul-2019 13:00

Thank you both.

This thread is closed