Is it intriguing to think about how we build Urlefy Which small components build up this megastructure. Well let's figure it out. I will write about
Is it intriguing to think about how we build Urlefy? Which small components build up this megastructure. Well, let's figure it out. I will write about our previous architecture in another post. The entire Urlefy's structure could be divide into four major components.
1 - The Frontend 2 - The Redirection Server 3 - The Backend User Server 4 - Headless Content Management System
The frontend has created using Nextjs. Hosting has done using Vercel. I'm a crazy fan of SEO and thus choose Nextjs for the frontend. It took a lot of time to de-structure the entire website into small usable components. There were lots of customized graphs, maps, tables, and an enormous amount of data. The main focus was Server Side Rendering. We added Google authentication and used cookies for authorization.
The redirection server is running in an AWS EC2 instance. This server is the heart of the architecture. It redirects users from https://urlf.in/link to their respective links. This is where the magic happens.
The B.U.S ( Backend User Server ) contains business logic. It runs on a separate AWS EC2 instance. This server acts as a REST API for our frontend. It connects to two databases - MongoDB and AWS Simple Storage Service. The API does the following
We needed a server to access to the blogs in the frontend with API calls. A server that allows us to modify the blogs with GUI. Finally, we decided to use Strapi. Strapi server is hosted on Heroku and is using PostgreSQL. The images for Blogs is maintained using CLOUDINARY.
We have done a lot of research to make the website efficient. Hundreds of hours of debugging and thousands of lines of code are what makes Urlefy. I haven't covered a lot of details and this is just an overview of our structure. If this blog intrigued you, stay tuned for more upcoming blogs.
Don't forget to signup to use free analytical services. 🚀
Written by- Aashish Peepra