Oracle XE 18.4 Free High-load
APEXRESTAfter the release of the Oracle XE 18.4 server line, I decided to test what it can.
So, we need a virtual server, preferably with the most productive processors. From my previous experience, I determined that the processor with the highest performance on the market at the lowest price (among Google Cloud, AWS, Microsoft Cloud, Oracle Cloud) provides Digital Ocean in a special section.

Oracle xe has

Next, install Oracle XE 18.4, APEX 18.2, JDK 8, ORDS 18.4, Tomcat 8, everything is standard, without any tuning and additional settings, since there are many instructions on the Internet, in my opinion the most sensible from Denis Savenko https://dsavenko.me/oracledb-apex-ords-tomcat-httpd-centos7-all-in-one-guide-introduction/

For test, we will use the standard REST GET request, which will be returned to us by JSON with EMP employees.

To run load tests, I recommend the wrk utility, which, unlike the well-known ab, can actually load the server into several threads. My working laptop and communication channel allows to max out 10 streams and 200 simultaneous users, with such parameters and conduct our test.
The previously selected server configuration copes perfectly and Oracle XE loads the hardware as much as possible with the limitations of the XE version. A bit of RAM, but it's not critical :)

As a result, we get 500 requests per second for the REST API. In this case, all requests without using caching, each request is actually executed in the database. If you add caching, in real life this figure can be increased by a factor of 10. With such parameters you can build a backend REST API server with very complex business logic (thanks to APEX), which, together with the site on a modern JS framework, will be able to serve millions of users per day and this is on the free version of Oracle 18.4. It's fantastic !
