EZQ42: Simplify Background Jobs for Serverless Functions (beta)
Effortless Queue Management for Next.js and Vercel
EZQ42 is the ultimate solution for developers seeking a streamlined background job queue service tailored for serverless functions, particularly those running Next.js applications on Vercel. Our service enables you to manage long-running tasks efficiently, enhancing your application's performance and user experience.
Why Choose EZQ42?
- Simple Setup: Get started in minutes with minimal configuration
- Scalable: Handles your background jobs as your application grows
- Cost-Effective: Free tier available, with affordable paid plans for higher demands
- Open Source: Contribute to the project or run it locally
How It Works
EZQ42 simplifies the process of managing background jobs in your serverless environment:
- Create an API Endpoint: Set up an API endpoint or Route handler in your Next.js app
- Implement Job Logic: Write your long-running job logic within the endpoint
- Add Job to EZQ42: Specify the URL of your endpoint and the data to be processed
- Let EZQ42 Handle the Rest: Our service will call your endpoint with the provided data, managing the queue and execution
Getting Started
Free Tier
Ideal for small projects and testing, our free tier offers:
- 6 requests per minute rate limit
- No credit card required
To use the free tier, simply make a POST request:
curl -X POST "https://app.ezq42.com/api/v1/job" \
-H "Content-Type: application/json" \
-d '{
"email": "your@email.com",
"payload": {
"url": "https://your-app.com/api/your-job-endpoint"
}
}'
Note: The email
field is required for all requests.
Paid Tier
For production applications and higher volume needs, our paid tier offers:
- 120 requests per minute rate limit
- Priority support
- Advanced features (coming soon)
To get started with the paid tier:
- Purchase a license key from our Gumroad page
- Activate your key:
curl -X POST "https://app.ezq42.com/activate-key" \
-H "Content-Type: application/json" \
-d '{
"email": "your@email.com",
"apiKey": "your-license-key"
}'
- Use your activated key in job requests:
curl -X POST "https://app.ezq42.com/api/v1/job" \
-H "Content-Type: application/json" \
-d '{
"email": "your@email.com",
"apiKey": "your-license-key",
"payload": {
"url": "https://your-app.com/api/your-job-endpoint"
}
}'
Important: Please keep your license key private and do not share it with anyone or hard code it in your project code.
Request Payload
The request payload is a JSON object which should conform to the following zod schema:
const requestSchema = z.object({
email: z.string().email(),
apiKey: z.string().optional(),
delay: z.number().int().nonnegative().default(0),
concurrency: z.number().int().positive().default(1),
payload: z.object({
url: z.string().url(),
method: z
.enum(["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"])
.optional()
.default("GET"),
headers: z.record(z.string()).optional(),
body: z.any().optional().optional(),
}),
});
Example Project
See EZQ42 in action! Check out our example project on GitHub to get a hands-on understanding of how to integrate EZQ42 into your Next.js application.
Why Background Job Queues Matter
In the world of serverless computing, efficiently managing long-running tasks is crucial. EZQ42 addresses common challenges faced by developers:
- Timeout Limitations: Overcome serverless function execution time limits
- Resource Management: Optimize server resources by offloading intensive tasks
- Improved User Experience: Keep your application responsive while processing heavy workloads
- Scalability: Easily handle increased job volumes as your application grows
Use Cases
EZQ42 is perfect for a wide range of applications, including:
- Email Campaigns: Send bulk emails without blocking your main application
- Data Processing: Handle large dataset operations asynchronously
- Report Generation: Create complex reports without timing out
- Image and Video Processing: Manage resource-intensive media tasks efficiently
- Scheduled Tasks: Run periodic jobs without maintaining a dedicated server
Open Source
Want to contribute or run EZQ42 locally? Follow these steps:
- Clone the repository:
git clone https://github.com/nicnocquee/ezq42.com.git
- Install dependencies:
npm install
- Set up environment variables:
cp .env.example .env
and fill in the required values - Start the development environment:
docker-compose -f docker-compose.dev.yml up
- Run the development server:
npm run dev
The full source code is available on GitHub.
Support
If you have any questions or need assistance, please contact us at hi@nico.fyi using e-mail address you used to purchase your license key. Please also include your license key and any relevant details about your project.
Made in Zürich, Switzerland by Nico.