Internal and External Adapters

An adapter that runs as part of the Server is called an internal adapter. An adapter that runs as a separate process is called an external adapter.

Internal adapters generally run faster because the Server can get data from (or to) the adapter with less overhead. Internal adapters are started by the Server when it starts the corresponding project (query module). The adapter is recognized by Sybase Event Stream Processor Studio, and from inside Studio, you can attach the adapter to a stream by selecting the adapter from a menu of adapters. A disadvantage of internal adapters is that if the adapter crashes, it may crash the Server as well.

External adapters have more flexibility than internal adapters and can run on a different machine than the Server. Like internal adapters, external adapter can be configured using Studio, and started and stopped by the Server as long as they are installed with an adapter configuration file.

External adapters can be either "managed" or "unmanaged". Managed external adapters provide an adapter configuration file (.cnxml) that can be configured using Studio, referenced in a CCL ATTACH ADAPTER statement, and can be started and stopped by the Server, behaving very similarly to an internal adapter. Unmanaged external adapters are not referenced in a CCL ATTACH ADAPTER statement, and are not managed by the Server. You start, stop, and configure these adapters independently.