Boomi AtomSphere was built from the ground up to focus on the new paradigms of integration that occur as a result of SaaS, PaaS, and Cloud computing environments. While on the surface one may assume "its still just application, but the applications are now accessed over the internet", in practice there are several fundamental differences to solving integration in this model. Rather than retrofitting older technologies, Boomi chose to develop from the ground up a single instance, multi-tenant integration platform to specifically to address these integration needs.
The Platform
The AtomSphere Platform is where you Build, Deploy, and Manage your integration processes, regardless of the deployment style required. The Platform is accessed via your secure web browser, allowing you to manage your integrations from anywhere you have secure Internet access. Each customer account is one "tenant" in the platform, and each account can be setup with one or more users for collaboration and separation of work.
The AtomSphere product is based on a metadata-based approach to integration versus a “code-generation” approach found in other solutions. As you visually build and modify your integration processes, they are persisted in the Platform's multi-tenant repository as XML. The complete end-to-end integration process is contained in this repository, and is ultimately deployed to a Boomi Atom for runtime execution. Secure information such as logon credentials are encrypted using public/private key technology. For more information on Boomi's security, see our documentation.
The Boomi Atom™
The Boomi Atom (patent pending) is the runtime engine that executes a complete end-to-end integration process. The Boomi Atom is completely decoupled from the Platform from a runtime perspective, and has no dependencies on any of the Platform components. The Atom maintains ongoing communication with the Platform, but never sends the actual data being integrated to the Platform. Instead the Atom communicates execution activity such as what integration processes are being executed, the result, how many records were processed, etc. The Atom also checks for updates, both to the integration processes, as well as to the Atom itself. The Atom is fully equipped to update itself as needed, allowing it run in a fully "lights out" environment.
Meta-data Browsing
A key requirement to developing integration processes is providing access to the metadata of an application, so that it can be imported into the integration environment and alleviate the user from having to manually define the layout and format of application data. AtomSphere provides the ability to handle this for both SaaS and on-premise applications without requiring any changes to firewalls. In cases where browsing needs to be performed against on-premise applications, you can deploy an Atom onto the network where the on-premise application resides, and the Atom will facilitate the browsing requests back and forth with the platform.
Clustering for High Availability and Load Balancing
To accommodate the needs of larger enterprises, Boomi provides users with the ability to create a cluster of Atoms across large numbers of physical or virtual machines on a network. Based on the same technology run by Boomi in our own cloud deployment, the cluster pools and isolates concurrent integration processes into distinct java virtual machines. This approach addresses highly scalable and fault tolerant integration requirements. Nodes can be added/removed from this cluster without impacting production processes. The architecture is completely multi-tenant, including the security and performance requirements to ensure that processes are properly isolated from each other.
Atom-to-Platform Communication
Similar to many other asynchronous architectures, the Atom-to-Platform communication is an outbound only communication. The Atom initiates all connectivity to the platform (Note, this communication-style is similar to products like GoToMeeting, Webex, even instant messenger technologies; the experience is real-time even there is not a direct network connection from one client to the other.)


