Notification Actions Engine
Contents
Physical Hardware Characteristics
| Model: | Cisco UCS B200 M4 und M2 / Cisco UCS B230 M2 |
| Processor: | 2 socket CPUs with 12, 20 or 24 cores |
| RAM: | 256 GB |
| Hard Drive Space: | SAN Storage mirrored HP 3par System 7400c with 100 TB each |
| Network Connection: | between VMs: 10 Gbit, SAN Storage connection: 8 Gbit FibreChannel at minimum, outward: 10 Gbit Ethernet |
| Hypervisor used: | VMware ESX 6 with vSphere Center 6 in the Cluster |
| Physical Load Balancing: | none |
Virtual Machine Hardware Specifications and Operating System
| Guest Operating System: | Microsoft Windows 8 (64bit) |
| Processor: | 4 |
| RAM: | 3 GB GB |
| Hard Drive Space VM: | 44 GB |
| Network Connection: | 10 Gbit/s |
| Minimum required Network Connection: | no info available |
Service Environment and Set-up on VM
| Software | Download |
|---|---|
| MySQL Server 5.6 (Community Edition) | dev.mysql.com/downloads/mysql/ |
| PIWIK – Open Analytics Platform | piwik.org |
| Java 6.X | java.com |
Software Licenses
Please indicate if a commercial provider would need to buy commercial licenses of a certain software used for operating the service and – if so – what cost this may produce approximately
- EsperTech Java library (www.espertech.com): Cost for a commercial license range between USD $300 and USD $1800 per perpetual Java Virtual Machine (JVM).
- MySQL Community Edition (www.mysql.com/products/community): free of charge.
- Windows 8 64-bit: < € 100
OS Environment Variables
JAVA_HOME: path to Java installation e.g. C:\Program Files (x86)\Java\jdk1.8.0_51
Path: should contain path to Java bin folder e.g. C:\Program Files (x86)\Java\jdk1.8.0_51\bin
Installation
Java: Latest Java JDK (not JRE) has to be installed. File and instructions can be found on http://www.oracle.com/technetwork/java/javase/downloads/index.html JAVA_HOME and Path environment variables must be set.
MySQL Community Edition: File and instructions can be found on http://dev.mysql.com/downloads/
Java Jetty Server and Application: Copy war and jar file in any folder and start the application by clicking on the jar-File.
Preparation
Before starting the application, a valid property file has to be provided. An example of such a properties file is attached to this wiki. File:ecompass.txt This property file has to be stored on the virtual machine. To provide the path to this property file to the Java application, you can start the application with the following command: java -jar -DARGS_CONFIG_CEP="C:\ecompass.properties" assuming that the properties file is saved under C with the file name ecompass.properties.
To create the database schema the following file can be used: File:createtables.txt
Service Configuration
…
Configuration script
The configuration script can be put in any directory on the virtual machine. To provide the correct path to the Java application use the following command:
README / User Manual
The features are described by the embedded help feature within the graphical user interface.
Configuration steps
All main configuration parameters can be found in the previously described properties file. This file contains the base URL under which REST services are exposed (parameter cep.rest.baseUrl) as well as parameters to define endpoints of remote services, which are used by the application.
Operation
Service startup procedure
…
Restarting the service
…
Service Logs
…
Recurring Manual Actions / Maintenance Tasks
…
Other
…
Limitations of the service
- With which parameters does the service scale?
How many concurrent E-Shops, how many concurrent products and how many users/E-Shop customers are possible without causing loss in quality/speed for the hardware described above?
- Parameters relevant for the scaling of this module are the overall number of users of all E-Shops and the number of rules. Each rule generates one request every ten minutes, i.e. the rules are checked every ten minutes. Each request takes 100 - 200 ms of time. So in ten minutes a maximum of 3000 request should be possible without further parallelization. There is one special kind of rule, which is the voucher rule (i.e. if a user shows a certain behaviour on the E-Shop a voucher is shown to him). This rule generates traffic depending on user behaviour, which means that this is not predictable. Therefore the above estimate can only give an orientation, not a guaranteed limit and one should always keep reserves for situations in which many users (over all E-Shops) show a behaviour that triggers a voucher rule.
- If higher scaling was wanted, which of the hardware parameters would need to be increased?
- The number of CPUs/CPU cores is the most critical. Eventually RAM and Storage may need to be increased also.
- What else would be adjusted for higher scalability?
- In order to make use of more CPU cores the software code would need to be parallelized, which is currently not the case.
- Which further configuration would be necessary?
- …
Contact Information Notification & Actions Engine
Florian Maier, florian.maier@iao.fraunhofer.de, +49 711 970-5121
Christopher Ruff, christopher.ruff@iao.fraunhofer.de, +49 711 970-2402