Oracle APEX Administration Case Studies
Click HERE for Oracle Database Administration Case Studies
Challenge: APEX Application Scalability
Our client was about to go live with an internet facing Oracle APEX application, when they discovered that it did not scale. When more than a couple of people connected, it would fall over with a shed load of 500 errors. SkillBuilders’ Oracle Certified Master DBA John Watson determined that the database was fine, so he began an examination and upgrade of the web tier: installed an Apache reverse proxy, reconfigured the ORDS connection pool and made some changes to the Tomcat configuration.
That resulted in a configuration that should be able support a reasonable workload (reasonable as defined by customer), without needing any change to CPU or RAM. It was better, but still not good enough!
John discovered that Apache was running out of threads and the connection pools were maxing out. So John brought in SkillBuilders’ developers to see if there was something odd in the code. And indeed there was. As is so often the case, you can write code that fills a business need and works fine in a test environment but is totally impractical to deploy for production purposes. Our developers gave the client’s developers a few pointers to make the APEX pages less resource hungry, they made the changes, and the app is now live with no problems. And in terms of resource usage, the VMs are hardly ticking over: plenty of spare capacity for the anticipated growth rate.
A very nice example of how you have to take a holistic view when deploying a modern web application: developers, DBAs, and SysAdmins all have to work together.
APEX Stack Implementation for a 24/7 Manufacturing Control System
Our client was deploying a manufacturing control system written in Oracle APEX, but did not have the in-house Oracle APEX administration skills to build and manage the technology stack needed. Using best practices for security, performance and scalability, SkillBuilders installed the complete stack (Apache/ORDS/Tomcat/database) and configured it to be largely self-administering: the objective being to produce an environment that can run largely unattended for months or years. All looking good so far, and delivered exactly according to the planned schedule and budget.