When a WSO2 product server starts, it starts all features and related artifacts bundled in the product. Multi-profile support allows you to run the product on a selected profile so that only features specific to that profile along with common features start up with the server. This enables better resource utilization.
Execute one of the following commands to start a product on a preferred profile.
<PRODUCT_HOME>/bin/wso2server.bat -Dprofile=<preferred-profile> --run
Given below are the profiles available in WSO2 API Manager. They are based on the main components of API Manager.
|Profile||Command Option with Profile Name||Description|
|Used when the API Gateway acts as a manager node in a cluster. This profile starts front-end/UI features such as login as well as back-end services that allow the product instance to communicate with other nodes in the cluster.|
|Used when API Gateway acts as a worker node in a cluster. This profile only starts the back-end features for data processing and communicating with the manager node.|
|Starts only the features relevant to the Key Manager component of API Manager.|
|Starts only the front-end/back-end features relevant to the API Publisher Web interface.|
|Starts only the front-end/back-end features relevant to the API Store Web interface.|
Note that the WSO2 products platform currently doesn't block/allow Web applications depending on profiles. Starting a product on a preferred profile only blocks/allows the relevant OSGI bundles. As a result, even if you start the server on a profile such as the
api-store for example, you will still be able to access the API Publisher Web application.
How multi-profiling works
Starting a product on a preferred profile starts only a subset of features bundled in the product. In order to identify what feature bundles apply to which profile, each product maintains a set of
bundles.info files contain references to the actual bundles. Note that
in the directory path refers to the name of the profile. For example, when there's a product profile named webapp, references to all the feature bundles required for webapp profile to function are in a
bundles.info file saved in
Note that when you start the server without using a preferred profile, the server refers to
<PRODUCT_HOME>/repository/components/default/configuration/org.eclipse.equinox.simpleconfigurator/ file by default. This file contains references to all bundles in
<PRODUCT_HOME>/repository/components/plugins directory, which is where all components/bundles of a product are saved.