The Hadean Platform
A brief introduction
The Hadean platform enables developers to write high performance distributed applications, that are cloud native by default and able to dynamically scale with changing demand. The platform works by providing low level primitives to developers, for code execution and communication, that they will be familiar with from developing applications to run on a single machine, but that work seamlessly in a distributed environment, ensuring that applications have the resources they need through distributed resource allocation.
Hadean applications can have their memory and CPU scaled at runtime via operating system resource allocation requests, in much the same way as a standard Windows or Linux program. The crucial difference is that a Hadean system does not need these resources to reside on a single server — a limitation of existing approaches. Instead, it provides developers powerful out-of-the-box abstractions over an entire cloud data centre to build, deploy, scale and debug distributed applications.
For example, take a twenty line program executing a series of functions on a dataset. It could run on a single server when operating on a small dataset, but through the process of program execution, if the computation becomes too large, it may scale up at runtime to a 100 servers in order to compute the task.
The model has been carefully engineered to be robust when scaling and agnostic of actual distribution. Programs built, compiled and tested on local machines can be effortlessly deployed and scaled across cloud and edge data centres. Any application strongly preserves crucial properties in behaviour and execution, enabling programs to be easily scaled up and down, without compromising the runtime.
Unlike existing approaches the ability to scale in this manner is an intrinsic property of the program and the Hadean platform. It does not require specialised frameworks in an enterprise architecture or complex engineering to achieve this dynamic scale. This capability is known as scale invariance and it is the core property upon which all Hadean libraries rely.
The Hadean platform allows developers to easily write distributed software. It utilises native code with explicit resource management, in contrast to alternatives such as Erlang and Orleans which use virtual-machine runtimes (BEAM or .NET respectively). At the same time, Hadean distinguishes itself from infrastructure-as-code models such as Pulumi by providing abstraction over process spawning.
| Erlang/Orleans | Pulumi/Libcloud | Hadean |
Runtime environment | VM based, bytecode | N/A: infrastructure only | Metal, OS syscalls API, native code |
Domain | Processing only | Infrastructure only | Infrastructure + code |
The platform sits close to the metal and is cloud-agnostic. It contains a number of components which exist to implement the distributed process model, including a scheduler and embedded AI/ML support. As part of the implementation process, the platform is further broken down into an "enforcer" and a "manager".
Come talk to us on our Discord and join the community. Whether you want to talk about ideas of what could be built on the platform, ask questions about the platform, or just share your development stories!
The Hadean Platform is now publicly available as both a limited free Platform as a Service and as a premium Platform as a Service offering. Download today for free and experience how easy it is to deploy your distributed applications. The free version has the following limitations, but if you're interested in getting the unlimited offering, please contact us at [email protected] to obtain a license.
Free | Licensed | |
---|---|---|
Hosting environment | Azure, AWS, Local | Any |
Machine type | Azure: Standard_A8_v2
AWS: c6i.x2large | Any available |
Number of cores | 8 | Any available |
Max RAM allocation | 1024 MB per core | Any available |
Number of VMs | 4 | Unlimited |
Last modified 1yr ago