Communications performance considerations for interactive jobs
An interactive job uses a keyboard and a character-type display. If a job needs the user to type on the keyboard and the system displays character results, that job is probably interactive.
Interactive in this sense means that the job and the user depend on each other to get the work done.
- Attach workstations through communications. This requires more CPU overhead than 5250 local workstations.
- Use a twinaxial controller to provide better performance than an American National Standard Code for Information Interchange (ASCII) controller.
- Keep the line utilization below 30 percent for best performance when interactive users jobs are attached. This maintains predictable and consistent response times. Exceeding 50 to 60 percent line utilization will typically cause unacceptable response times.
If your system has interactive users jobs that are connected in many different ways, consider configuring your interactive subsystems to separate the users. Local workstation, remote workstations, 5250 display station pass-through, or Telnet are some examples of these types of connections that must be separated. When you configure interactive subsystems, identify how you want the interactive users jobs to be separated and create the appropriate subsystem descriptions.
During error recovery, when many users risk losing their sessions at one time, an interactive subsystem can be very busy performing device recovery. This device recovery can adversely affect the work of other users in the subsystem who would otherwise be unaffected by the failure. Therefore, you might need to change how the interactive subsystems are configured. However, multiple subsystems can provide multiple processes to do cleanup and recovery when error conditions occur. This can result in improved performance.
ADDWSE SBSD(libname/sbsname) WRKSTNDEV(devname*) AT(*SIGNON)
ADDWSE SBSD(libname/sbsname) WRKSTNDEV(devname*) AT(*ENTER)
If you specify AT(*ENTER) on the Add Work Station Entry (ADDWSE) command, you can use the Transfer Job (TFRJOB) command to allocate the interactive jobs that are associated with the work stations in this subsystem. If you do not need to allocate the interactive jobs that are associated with the work stations in this subsystem, you do not have to add the workstation entries with AT(*ENTER).
ADDWSE SBSD(libname/sbsname) WRKSTN(devname*) AT(*SIGNON)
ADDWSE SBSD(libname/sbsname) WRKSTN(devname*) AT(*ENTER)
See the following example for a way of configuring your interactive subsystem.
Example: Interactive subsystem configuration
- Create a subsystem description:
CRTSBSD SBSD(MYLIB/MYINTER) POOLS((1 *BASE) (2 *INTERACT))
- Create a class
CRTCLS CLS(MYLIB/MYCLASS) RUNPTY(20)
- add routing entries to your subsystem:
ADDRTGE SBSD(MYLIB/MYINTER) SEQNBR(10) CMPVAL(QCMDI) PGM(QSYS/QCMD) POOLID(2) ADDRTGE SBSD(MYLIB/MYINTER) SEQNBR(9999) CMPVAL(*ANY) PGM(QSYS/QCMD) POOLID(2)
- Create a job queue, and add the job queue entry to your new subsystem:
CRTJOBQ JOBQ(MYLIB/MYJOBQ) ADDJOBQE SBSD(MYLIB/MYINTER) JOBQ(MYLIB/MYJOBQ) MAXACT(200)
- Set up the workstation name entries. Remove all the *ALL workstation type
entries first, and then add the appropriate workstation name entries:
RMVWSE SBSD(QSYS/QINTER) WRKSTNTYPE(*ALL) ADDWSE SBSD(QSYS/QINTER) WRKSTN(QPADEV*) ADDWSE SBSD(MYLIB/MYINTER) WRKSTN(PC*)
- Finally, you can update your system startup program to start your new subsystems automatically.