April 30th, 2024 - The Cycle Team

Introducing Functions: Batch Processing + Event-Driven Orchestration

Whether you're building the next massive AI platform, encoding thousands of images, or a hundreds of other use cases, the ability to quickly create ephemeral tasks can be a game changer for engineers solving complex tasks.

On-Demand Task Based Workloads

Have you ever wanted the power of tools like AWS Fargate or GCP Cloud Functions, but integrated alongside your existing applications, and on infrastructure you own?

As the leading LowOps platform, our team is thrilled to announce the launch of Cycle Functions - a new way to run task-based containers on top of the platform.

Insanely Fast Functions

Integrated With Your Existing Applications

Cycle Functions are just normal Docker containers, with a catch: they start on demand when a request is made, and shut down when the request is finished. They share the same networks as your "normal" applications and services, and can access the same caches and databases, or interact with your backends without ever needing to travel over the public internet.

We've also made it easy to link a function directly to a domain. Simply point a linked record at a function container, and Cycle's native load balancer will forward each request to the scheduler service automatically - essentially handling each request with a unique instance.

Insanely Fast Startup Times

Processing on-demand jobs should take as little time as possible. By taking advantage of pre-provisioned instances and a wholly independent, shardable scheduler, Cycle Functions are able to be started in fractions of a second, and scale to whatever size needed.

Provision dozens, hundreds, or thousands of instances ahead of time - they take no resources in their stopped state. Cycle will pre-allocate all the networks and ensure the container images are where they need to be. When a request comes in, it's as fast as starting a regular process on the host.

For an even bigger speed boost, Cycle's new scheduler service is deployed with every environment, and runs in high-availability. Each scheduler instance manages its own set of pre-provisioned instances, distributing tasks to instances without needing to talk back to Cycle's core.

Reduce Cost and Complexity

If you're coming from AWS Lambda, Fargate, or GCP Cloud Functions, you're paying for an additional service for task-based processing on top of hosting your long-running applications and APIs. Not only does this increase costs, it increases complexity - and increased complexity means more training for your team, and more room for mistakes that can bring down your applications.

In contrast, Cycle is an entire DevOps ecosystem in one platform. Train your team once, and get all the advantages of a mature DevOps setup as if you'd built it yourself. With the addition of Functions, mixing workloads has never been easier. Functions have access to everything Cycle offers, including instance and infrastructure auto-scaling, giving you the dials to control cost optimizations across the board.

Your Infrastructure, Your Rules

Infrastructure

Functions on Cycle run on infrastructure you control. Mix and match public clouds, utilize your on-prem servers, or all of the above. Cycle excels at managing the infrastructure so you don't have to. Compared to 'serverless' services, you get the best of both worlds: ease of use, and trusted, dedicated hardware to securely run your task-based workloads.

With limitless infrastructure comes limitless possibilities. Cycle doesn't enforce any limitations on max runtime or memory consumption. If you can run it in a container, you can run it as a function on Cycle.

Perfect For Building Platforms

Big or small, Cycle Functions are perfect for handling any kind of ephemeral tasks. Processing data, converting file formats, or handling asynchronous or unpredictable tasks become simple. Doing database migrations? Trigger the function container on every deploy to make sure your changes are applied.

Or, take it to the next level with highly scalable multiplayer gaming where each function instance becomes a new lobby, that shuts down when the game is complete. Train LLMs on a huge swathe of GPU hardware in your own data centers. Synchronize thousands of IoT devices in real time. There is no limit to the ways functions can be used.

💡 Interested in trying the Cycle platform? Create your account today! Want to drop in and have a chat with the Cycle team? We'd love to have you join our public Cycle Slack community!