Introducing the MID Server

The Management, Instrumentation, and Discovery (MID) Server is a Java application that runs as a Windows service or UNIX daemon on a server in your local network. The MID Server facilitates communication and the movement of data between a ServiceNow instance and external applications, data sources, and services.

Applications that use MID Servers

ServiceNow applications Other applications
  • Discovery
  • Orchestration
  • Service Mapping
  • Service Analytics
  • Event Management
  • Cloud Management
  • Import Sets
  • Altiris
  • Microsoft SMS/SCCM
  • LANDesk Maintenance Suite
  • HP OpenView Operations
  • Microsoft System Center Operations Manager (SCOM)
  • Borland Starteam Integration
  • Microsoft MIIS
  • Service Assurance

Communicating with the MID Server

The MID Server initiates all communications with the ServiceNow® instance. The instance never initiates communications with the MID Server. This communication is recorded as records in the ECC queue, which is essentially the communication log between the instance and the MID Server. See The MID Server ECC queue for more information.

MID Server selection

An application can select a MID Server in these ways.
  • Auto-selection: The application can automatically find an appropriate MID Server that meets the necessary selection criteria. The criteria is different for each application.
  • Default selection: The application defaults to a single MID Server that you can specify for each application.
  • Manual selection: The application selects a single MID Server that you specify. Not every application allows for manual selection.
See MID Server selection for details.

Asynchronous Message Bus

The MID Server opens a persistent connection to the instance through the Asynchronous Message Bus (AMB) Client and listens on the /mid/server/<mid_sys_id> AMB channel. When an output record is inserted into the Queue [ecc_queue] table, an AMB message is sent to the MID Server's channel. The MID Server receives this message and immediately polls the ecc_queue table for work.

The MID Server polls the ECC queue on the regular interval defined in the mid.poll.time configuration parameter, regardless of AMB message activity. The default polling interval is set to 40 seconds, but can be reconfigured. This polling of the ECC queue at a regular interval is done in case the AMB connection is dropped.

Figure 1. MID Server ECC queue polling process
MID Server ECC queue polling process
Note: The AMB client on the MID Server does not work in all environments and might need to be disabled to avoid performance issues. To disable AMB in your environment, set the mid.disable_amb parameter to true. When you disable AMB, the MID Server reverts to a default polling interval of 5 seconds, unless the mid.poll.time parameter is set to a different value.

System clones and the MID server

See KB0547597 for information on what to do with MID Servers when you are cloning your instance.