Hardened Messaging
Built for High Availability, Security, and Resilience
We design systems for high-availability, security, and resilience using Erlang, state-of-the-art encryption, and expert programming craft.
ejabberd, like all our back-end software, inherits those unique capabilities: high-availability, security, and resilience.
Our Secret Weapon: Erlang
At ProcessOne, our approach to building hardened messaging systems starts with Erlang—a not-so-secret weapon in our technology arsenal. Erlang is an open-source virtual machine designed specifically for creating resilient, highly scalable messaging platforms, like our very own ejabberd.
Why Erlang Powers Our Scalability
From a user’s perspective, scalability is key for a seamless experience, especially in large-scale messaging applications. Erlang, originally designed for real-time communication, provides a unique advantage: its architecture enables it to handle millions of concurrent connections on a single server.
Our ejabberd platform is the best showcase of Erlang’s capabilities, consistently proving to be the most reliable and scalable messaging server available today.
Built for Scale: Optimizing CPU Utilization
Erlang uses a lightweight process architecture, supported by a one-of-a-kind scheduler that optimizes CPU resources. This design enables efficient multicore usage, essential for powering large-scale messaging services. Under heavy load, Erlang can maximize CPU usage across all cores, ensuring that every server in your cluster performs at its best. This becomes even more critical as cluster size increases and inter-node synchronization grows more complex.
Designed for Low-Latency
Originally designed for telecom infrastructure, Erlang operates as a soft real-time platform, ensuring response times under 20ms. In the messaging world, where even minor delays can lead to significant backlogs, this low-latency capability is invaluable. A short lag can create cascading effects, causing message queues to grow exponentially and recovery times to extend for hours—or even days.
Resilient by Design: Handling Failure with Grace
Erlang was built with failure in mind. It offers robust mechanisms for graceful recovery, including hot code reloading. This capability allows us to update live systems without downtime, ensuring seamless service for users.
But why is hot code reloading important for messaging systems? The greatest stress on a messaging system happens during restarts. At this critical moment, all connections attempt to re-establish simultaneously, leading to an overwhelming surge of new requests. This is often the time when lesser systems collapse under pressure.
Our servers are designed for cold starts, making them more resilient to sudden traffic spikes and denial of service attacks. By preparing for this “worst-case scenario,” we avoid a situation where restarting the service could lead to self-imposed Distributed Denial of Service (DDoS) conditions.
State-of-the-Art Security and Encryption
ProcessOne’s platform supports the latest in messaging security, including modern TLS protocols and the ability to block weak and obsolete encryption methods. Our system complies with strict security standards, such as those required by AMEX, and can enable end-to-end encryption for even greater privacy. Our corporate offering even supports FIPS security requirements.
Secure by Nature: Built on Erlang’s Virtual Machine
Erlang’s virtual machine offers inherent security benefits by limiting attack vectors. For example, buffer overflows are impossible in Erlang, making it more secure by design. Furthermore, our team of experienced engineers builds systems with a focus on massive scale and security from the ground up.
The Result: Hardened Messaging
All these features—scalability, low-latency performance, failure tolerance, and robust security—come together in what we call “Hardened Messaging.” Our approach to building messaging systems meets the demanding 99.999% uptime requirements (or more), providing a level of reliability that’s nearly mythical in the industry.