The AIMMS SDK Server can be configured using a configuration file.
On windows the configuration file aimmssdksrv.cfg is installed into
C:\ProgramData\AIMMS\AIMMS SDK Server
This location is also stored into the registry at
HKEY_LOCAL_MACHINE\SOFTWARE\AIMMS\AIMMS SDK Server\Config
The aimmssdksrv.cfg location can be altered by changing this registry value accordingly.
On linux the configuration file is specified by the AIMMSSDK_SERVER_CONFIG variable in the upstart script (aimmssdk-server in the package root folder). The default script sets this variable to $AIMMSSDK_SERVER_LOCATION/etc/aimmssdksrv.cfg, where the AIMMSSDK_SERVER_LOCATION variable by default points to the folder where the package was extracted.
The default configuration file contains the following two lines:
rule-folder=${ConfigFolder}/rules listen-uri=tcp://:5621
Where the ${ConfigFolder} is a variable that takes the value of the folder where the configuration file was found.
Other settings that can be set here are:
Key |
Description |
Default |
rule-folder |
String indicating where all the rules (.rule files) can be found. |
. |
listen-uri |
A URI on which to listen for incoming connections. |
tcp://:5621 |
listen-options |
| |
verbose |
Boolean indicating wether extra information should be logged; typically enabled when troubleshooting. |
False |
logfile |
String indicating where the logfile should be written (in append mode). When the logconfig configuration option is set, this value will be ignored. |
Depends on OS, see Logging below |
logconfig |
String indicating a file that contains the configuration for specialized logging output; typically used for troubleshooting. For its format see ![]() |
Empty, meaning default behavior |
Enabling SSL connections
SSL connections between the C++/Java/C# client and the AIMMS SDK server can be established by specifying the following fields in the configuration file:
listen-uri=ssl://:5621 listen-options=PKCS12File=<path/to/pkcs12File>;PrivatePassword=<password>;NoCertify=true
The last 'NoCertify=true' option tells the server not to verify its peers certificates, i.e. it disables client certificate authentication, which is normal for most applications (i.e. only the clients authenticate the server certificate). Additionally we recommend enabling only the more secure encryption methods, by also specifying the following options:
CipherList=ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS
and
EnableWeakMethods=false
For the clients to connect using SSL their connect uri should be altered specifying ssl:// instead of tcp://.
For more listen-options see the C++ SSL section.
The AIMMS SDK Server will log all incoming connections and some startup information to a logfile.
On Windows the location of this logfile is determined by retrieving the value of the registry key:
HKEY_LOCAL_MACHINE\SOFTWARE\AIMMS\AIMMS SDK Server\Log
which by default is set to
C:\ProgramData\AIMMS\AIMMS SDK Server\aimmssdksrv.xml
by the installer. The format of this logfile is XML which can be displayed using any log4j compatible xml viewer, e.g. Log4View or
LogSaw.
On Linux the location of this logfile is specified by the AIMMSSDK_SERVER_LOG variable in the upstart script (aimmssdk-server in the package root folder). The format of this logfile is text.
Both Windows and Linux can override the log-file location by adjusting their proprietary settings or by specifying one of the above configuration options.
Name |
Description |
The AIMMS SDK Server comes with a set of default rules that are used to start a specific AIMMS version | |
The AIMMS SDK Server allows you to specify your own rules for matching a resource request with a specific AIMMS version to start. | |
This topic is only relevant for AIMMS version 4.3 and beyond. Providing the appropriate AIMMS images to the AIMMS SDK server is a relatively straightforward process, but it does involve several steps. First obtain either an AIMMS PRO package or an AIMMS executable. You probably want to use the PRO packages since they are smaller. You can use any zip program to extract either the AIMMS PRO package or the AIMMS executable. A freeware program like ![]() |