blob: c7d799a67958eedcce4aa736ba0c83bf15a306b3 [file] [log] [blame]
= How do the `direct`, `event`, `seda`, and `vm` endpoints compare?
* VM and xref:components::seda-component.adoc[SEDA] endpoints are basically the
same; they both offer asychronous in memory SEDA queues; they differ in
visibility -- endpoints are visible inside the same JVM or within the same
CamelContext respectively.
* xref:components::direct-component.adoc[Direct] uses no threading; it directly invokes the
consumer when sending.
* xref:components::spring-event-component.adoc[Spring Event] adds a listener to Spring's
application events; so the consumer is invoked the same thread as Spring
notifies events. Event differs in that the payload should be a Spring
`ApplicationEvent` object whereas xref:components::direct-component.adoc[Direct],
xref:components::seda-component.adoc[SEDA] can use any payload.
More information about when to use which component can be found in this https://tomd.xyz/camel-direct-vm-seda/[guide].