← Back To Showcase

JuicyLinks

Domain Availability Checker Expired Domains Domiain Checker

2022 - 2022

1 Million Domain Availability Checks In Under 1 Minute

Check The Project

The Challenge

The client wanted a service that could check for as many domains as possible for his new SAAS Service Idea, other competitors were doing 5000, 10000, and even up to 50000 in a minute.

The Solution

Development and Design of a Full Stack Application with A Companion API for A Domain Availability Checker SAAS, That Could Check For 1 Million Domains In Under 60 Seconds


It Always Start with a Challenge.

The Challenge was - How many domains can you check for availability in 60 Seconds?

Initial Estimates: around 50K Domains in under 60 seconds.


This was a job on upwork where the client initially commissioned another freelancer with the task but the final result was a bit disappointing, the code was super simple, some indexing in the database and some Raw SQL queries to get the data couldn't get the job done, or at least they did, but not fast enough.


It seemed like a super interesting challenge, I had a couple of ideas to make the search faster, like using elastic search which gave us relatively faster searches but not fast enough.

With a focus on speed, I thought of only one thing, memory, only the use of an im-memory database can make searches super fast, as databases have files on disk and we aren't sure how fast those disks are, maybe if they were NVME we could've used some file trickery for example : making a folder or a file with the name of the domain and checking if the file exists for every domain check, yeah it may seem cheeky but it's solution.

Then the second idea was to use something like Redis. but then we'll have to have a massive amount of RAM to store all those domains in there, I mean storing popular domains is one thing, but our goal is pure speed so we don't care if a domain is popular or not.


We had to choose what to compromise: Be Limited By Disk Speeds And Use An NVME and File Strategy, Be Limited By RAM and use Cache.

Luckily the client had a super powerful server rented and we decided to go with the second one where we use RAM and Redis to cache all the domains and check everytime.

The availability check is simple: If the domain is in the cache then it's not available, else it is.


And With that  we created the following solution.


Super Simple User Interface


We focused on giving the user a super easy time when using the software, he doesn't even need to log in if he has an API key that he can use directly.

The choice to use the API Keys this way is to allow 3rd Party Usage of our API as it's the main product being sold, so our interface is just a showcase of how to utilize the API and an interface to use for those wanting to check directly.

Also, APIs have a certain checking limit, usually 10 Million checks before needing to buy another key.

The User can also Upload a file to be used for the availability checks or write down the domains in the text area itself.

With the text area, we are limited by the HTML's text area text capacity


homepage.png


Clear Results


With the results page we wanted the user ot have the ability to buy any domain of interest instantly so the result only shows the available domains, where to buy them in this case the client chose to use Epik Auction for that, and the user can also save the results as a CSV/TXT file if he wanted to use it in another software.

The results will show how many domains are available and how long did it take for the domains to be check, this will show the user how fast the service is compared to other services.


results.png


Admin Settings 


For the user there aren't any user settings besides password resets / changes and email changes, but for the admin there are multiple interesting features that will allow him to manage the system better:

  • API Key Generator : for sending test keys to leads to convince them of buying
  • Domain Management : the update cycle is 24 Hours but the admin can update the domains before that or after that if needed.
  • Managing Users And Roles : he can add subscriptions to users (requirement from the client) and add new admins to manage


image_original.png


Results


  • Stats According To Sellix Dashboard : Over 400 Initial Users with 20 Subscribers and One Lifetime Buyer
  • Ability To Check For 1 Million Domains in Under 60 Seconds
  • Easy Integration with 3rd Party Apps

Convinced? Send Us Your Requirements

We are here to help you build your MVP. Let's get started!

Develop MVP .NET

An MVP is an Essential Part of The Lifecycle of a Startup. It Helps You Validate Your Idea, Get Feedback, and Build a Product That Your Customers Will Love. We Help You Develop Your MVP in Just 6 Weeks. Get Started Today!

An unhandled error has occurred. Reload 🗙