System Requirements
Overview
For detailed information on system requirements, see IBM webMethods Adapters System Requirements.
The IBM webMethods Adapter for SAP 10.1 is supported on all platforms where both IBM webMethods Integration Server 10.1 and the SAP Java Connector(SAP JCo) 3.1 are supported. For information on supported platforms for SAP Java Connector, see OSS note 1077727.
CPU
For just "Internet-enabling" an SAP system, an average PC will be sufficient. For heavy-load scenarios, you should adjust your hardware accordingly.
Disk Space
Questions on Sizing
Appropriate sizing for Adapter for SAP installation strongly depends on the business scenario you want to establish. For specifying your individual requirements, you should answer the following questions first:
- Is there a need for your own development, and if so, how big do you expect your scenario to be? Small Package: <1MB, average Package: <5MB, big Package: 10MB
- What kind of data flow do
you expect? That is, what kind of transactional messages and their size, how many per
day, for how long do you want to keep them in Adapter for SAP
transaction store after they are completed (
Confirmed). - Do you need to keep statistical information of the kind written to audit.log and session.log? (See IBM webMethods Integration Server Administrator’s Guide for your release. )
Local Transaction Store in a File System
About this task
You must determine the storage space for the temporarily stored transactions. Use the following formula:
(Average size of a transactional message) x (Number of transactions
per day) x (Number of days you want to maintain Confirmed transactions for reference).
To determine the average size of one transactional message
Procedure
- Determine the current size of the packages_directory\WmSAP\txStore directory, including its subdirectories. For information about the packages_directory, refer to the section The Integration Server Home Directory .
- Send 100 typical transactional messages (transactions you will use in production) through Adapter for SAP.
- Check the size of directory again.
- Divide the difference by 100 to determine the average size of your transactional message. For example, a typical ORDERS IDoc is between 13KB and 35KB.
Results
Log Files
About this task
The log files need additional disk space. If Adapter for SAP runs on a high debug level during the implementation and test phase, it can write 1GB per day. Typical data volumes with a standard debug level (4 or lower) may generate between 10KB and 40MB per day (depending on traffic). The biggest parts are consumed by audit log and session log, which are used for statistical evaluations. You can turn off these logs to save disk space. Then Adapter for SAP needs only a few KB each day for the error log and server log. However, it is not recommended that you turn off these logs. This will only save a few KB and eliminates all possibilities for determining the cause of errors.
To turn off the logs
- Audit Log: Use Integration Server Administrator
to turn off audit logging as follows:
- Go to the Settings > Logging page and disable the logger you want to turn off. For more information, see IBM webMethods Audit Logging Guide logging guide for your release.
- If you are using an
earlier version of Integration Server, use the Edit Extended Settings feature to view the
watt.server.auditLogkey and edit the key as follows:watt.server.auditLog=off.
Tip: You can also adjust this parameter by shutting down Integration Server and adding the parameter to or editing it in the Integration Server_directory\instances\instance_name\config\server.cnf file. - Session Log: Use the Event
Manager tool in Designer to set the following events to the Enabled status “false”:
- Session End Event
- Session Expire Event
- Session Start Event
- Stats Log:Use the Event Manager to set Stat Event event to the Enabled “false”.
Example of Minimum Disk Space
The following is an example of the minimum disk space for an average Adapter for SAP:
| Component | Component Required disk space (MB) |
|---|---|
| Basic Installation | 80 |
| Customer Packages (each) | ~5 |
| Local Transaction Store (1000 ORDERS per day, kept for two weeks) in a file system | 280 |
| Log files (kept for two weeks) | 280 |
| Total | 645 |
Memory
Questions on Sizing
- How many tasks will Integration Server have to handle simultaneously? For example, how many RFCs, HTTP requests, FTP connections, started listeners and RFC listeners will Integration Server have to handle simultaneously at the peak time of the day? This determines the number of sessions n. For more information, see Initial Consumption.
- For how many SAP systems will Adapter for SAP register an RFC listener? How many threads do these listeners have?
- How many messages (XML documents, IDocs, RFC calls) go through Integration Server simultaneously at the peak time of the day? Is there any expensive mapping to be done?
Initial Consumption
Consumption Per Session
Each task Integration Server will handle (incoming HTTP request, incoming/outgoing RFC call) requires one session on Integration Server. If n is the number of sessions (see question 1 in the section Questions on Sizing), add the following amount of RAM:
½ n MB
If n proves
to be much larger than 75, use the Edit
Extended Settings feature of Integration Server Administrator
to view the watt.server.threadPool key
and edit the key to enable Integration Server to
handle more than 75 tasks in parallel. Integration Server
then provides a pool of unused sessions, and the next request can be processed
immediately without waiting for a new session to be created.
watt.server.threadPool. You can also increase the value of the watt.server.threadPoolMin=10 parameter to
enhance performance.
For more information about these parameters, see IBM webMethods Integration Server Administrator’s Guide for your release.
Consumption for RFC Listeners
In the next step, you will need extra memory for every RFC listener thread (see question 2 in section Questions on Sizing). For each listener thread, add 10MB. As this consumes a lot of memory, the number of threads for a listener must be chosen with care.
Payload
You will have to calculate the amount of memory required to process documents simultaneously (see question 3 in section Questions on Sizing). Use the following equation to calculate your needs:
Payload consumption = (document size x memFactor + RFCSize) x number of parallel documents, where:
memFactor =
3 + the number of INVOKE statements in the adapter or
notification service (if there are mappings between document formats and different XML
dialects) + the SSL value. The SSL value = 0 or 1,
according to whether documents are encrypted with SSL or not.
RFCSize = 28KB x number of IDocs in package, if the IDocs are either sent or received via RFC.
If you are in doubt about your assumptions for these values, you should run a few tests and watch by how much the memory actually increases during processing of one document.
set JAVA_MAX_MEM=128M
in Integration Server_directory\instances\instance_name\bin\server.bat (or server.sh on UNIX) before starting the Integration Server.
Example of Memory Usage
The following is an example of a server handling 1000 ORDERS per day:
- Integration Server has one standard RFC-listener with 3 threads.
- You expect a peak load of three documents in parallel, resulting in three parallel sessions. Allow another session for an administrator or developer to log on occasionally. Together with the session created by the RFC-listeners, this provides a total of eight parallel sessions and 4MB.
- Integration Server will handle a peak of three documents in parallel, and the XML Package does some mapping when converting the IDoc to XML. For a relatively small document of 20KB in a 50 segment IDoc, this results in a memory consumption of (20KB x 6 + 28KB) x 3= 444KB.
| Task Required | RAM (MB) |
|---|---|
| Integration Server core functionality | 80 |
| Sessions | 4 |
| RFC Listeners | 30 |
| Document processing | 1 |
| Total | 115 |
In this example, you should be fine with approximately 128MB of memory for Integration Server alone. After adding memory for the operating system and other tasks, a 256MB machine will be more than sufficient.
Miscellaneous
Encryption
When using SSL to encrypt XML documents, the time needed to process a document will increase by a factor of 3.
You also have to change the formula for calculating the RAM needed for processing documents: increase memFactor by one.
IDoc Packets
The performance can be vastly improved by using IDoc Packets of a well chosen size. If the packet size is to small, you will not take full advantage of the performance improvement. If it is too big, Integration Server may run out of memory or start swapping. You should do some testing to find the optimum size; it depends on the IDoc type as well as on the size of your machine.
Logging
If the production scenario involves invoking thousands of services in a short period of time, you can achieve a huge performance improvement by turning off Audit Logging. For information about turning off logging, see Log Files.