OroCommerce is a web application which runs on a server. Users interact with the application via a web browser on any computer or mobile device that have access to the internet or the network where the server is hosted.
Resources configuration depends on the data size and number of active users and integrations. Typical setup could be done on a single server with the minimum of 2 CPU cores, 2GB RAM and a fast hard drive (SSD is recommended). The application could scale to multiple servers and a separate database server based on the expected load.
Linux distributions (RedHat, Ubuntu, Debian, CentOS) are recommended for the production setup. Windows 7 and above and Mac OS X can be used for the development environment.
Oro applications are compatible with most web servers with PHP support, but we recommend the following configuration:
Web server configuration recommendations are well described in Symfony documentation
Few updates to default PHP configuration settings should be done in php.ini for the web server and CLI:
If the xdebug is installed (which is not recommended in the production setup):
By default, max_execution_time value equals 30 seconds. In case of using the Schema update option, it is recommended to increase this value.
Latest version of mariaDB may be used at one’s own risk. Oro applications are not tested with mariaDB and thus the correct operation cannot be guaranteed.
It is recommended to disable phar PHP extension to reduce the risk of PHP unserialization vulnerability.
Enterprise Edition Software¶
Enterprise edition is built to support better scale and performance. It is compatible with additional software configuration that allows to achieve these goals.
PostgreSQL uuid-ossp extension should be loaded for proper doctrine’s guid type handling. In order to enable it, one can connect to the database server and run the following sql query:
CREATE EXTENSION "uuid-ossp";
- Node.js could be used for more efficient JS assets minification
- Tidy PHP extension should be installed to make sure that HTML is correctly converted into a text representation
- Redis – could be used for more efficient application caching. Supported versions of Redis from 2.0 to 3.2
- The performance of MySQL can be optimized by adjusting the configuration
On the client side, Oro applications could be used with most of the graphical browsers on any operating system. Recommended and supported browsers are: