Creating a High-Performance Image Resizer Proxy as a Dockerized Go Microservice

Creating a High-Performance Image Resizer Proxy as a Dockerized Go Microservice

While working on applications that process a large number of images, we often come across the requirement to resize images for different resolutions. An image generated by a typical 12MP mobile phone camera can be 5MB-12MB depending on the quality of the image. Once uploaded, the image must be optimized for different devices. As you know, image resizing is a complex mathematical process. The performance and quality of the optimized image really depend on the efficiency of the algorithms used. 

Let me walk you through a high-performance solution for image resizing. We will implement the solution using libvips, a fast open-source image processing library, along with Golang and expose the resize functionality via a proxy server. With even 20% resource usage improvement per image, it can make a world of difference when scaling up to millions.

Building a Real-Time Trading Application with Akka

Building a Real-Time Trading Application with Akka

Writing real-time applications is hard; harder still, if it needs to be distributed and fault tolerant. Minimizing latency and optimizing throughput are major goals for such applications. They demand quick response times and positive user experience even in the event of a failure of an external system or a spike in traffic.

The legacy approach is to rely on external services, such as databases, queues, etc., to handle concurrent or asynchronous operations. However, this is not viable in many scenarios. Many real-time systems—such as trading or banking applications—cannot afford the long waiting times it takes to handle concurrent requests.


WebAssembly: The Future of Web Is Here!

WebAssembly—The Future of Web Is Here!

Non-stop advancements in web technologies have reshaped web applications in amazing ways. From simple frames with images, links, and decorated text, web apps have evolved into complex computer programs with client and server code. Modern web apps are powered by rich client-side processing and for this, there is one ubiquitous tool (JavaScript), which also gets pushed into places where it is not the right tool for the job. That developers are in a love-hate relationship with JavaScript is indeed true!

To give credit where credit is due, JavaScript has matured a lot over the years. Advanced optimization and compilation techniques have led to fast web experiences. Yet, browsers that run on JavaScript fall short of delivering the near-native performance and rich experience demanded by video games, computer-aided designs, and scientific visualization.  

Which is why WebAssembly, the new open standard, is such great news. 


3 Must-Haves for BFCM and Other Holiday Sales

The holiday season is around the corner and with it comes “Shopping Days”. Over the years, retailers have engineered such days that promise knockout deals to get shoppers into stores in hordes.

In the US, Thanksgiving has given rise to Black Friday and Cyber Monday (BFCM), which are fast spreading across the Atlantic. Barentain Dei (Valentine’s Day) in Japan is followed up with White Day thanks to the ploy of Japanese confectionery companies. In India, Friendship Day and Diwali herald the shopping frenzy while China has its own shopping day in November called Singles Day. Click Frenzy, the Australian version of Cyber Monday, is the brainwave of yet another online retailer. 

With holiday shopping days established, retailers need to be prepared to make the most of it. More than 70% of consumers in the US, UK, Canada, and Germany will shop on 2018 Black Friday, predicts a research report by McKinsey. Your branded website could be the top sales channel during these shopping holidays. Here is what we think every eCommerce site should invest in to make the most of the shopping holidays.


Why Migrate to HTTPS and How?

Did you know that the media giants WIRED and the Guardian switched to HTTPS last year? As challenging and time-consuming the process might have been, these media houses kept at it and finally moved to the more secure version of the web protocol.

While priorities driving this change tend to vary from business to business, there are some common compelling reasons to migrate to HTTPS.  (more…)

Progressive Web App

Create Your First Ever Offline-First Progressive Web App

Why do businesses prefer to have native apps even though they have fully responsive websites? Native apps load faster, give full-screen experience, have offline capabilities, support push notifications, and significantly add to user convenience. What if your mobile website had all of these benefits? That’s what a Progressive Web App is all about—the rich experience of an app and the full functionality of a website.

Angular 2 for Fast Loading Apps

Make Your Apps Load Faster with Angular 2

Is the loading speed of your web application extremely important?

Is your web application’s loading time affecting sales?

Is your web application built on Angular 1?

If the answer to all the three questions is “yes,” then this blog post is for you. (more…)


Routing and Load Balancing Using HAProxy

As the microservice buzzword catches up, I believe sooner or later you might think of trying microservices. In this blog post, I shall cover some of the common problems related to routing and load balancing and how to get around them using HAProxy.


Action Cable in Rails 5

Action Cable in Rails 5 for a Simple Live Messaging App: A Beginner’s Tutorial

Rails developers like me are on a high with the release of Rails 5. Yes, DHH (David Heinemeier Hansson, creator of Ruby on Rails) has something really cool for us this time. One of the cool factors in Rails 5 is Action Cable, the framework that integrates WebSocket with Rails. Real-time features on Rails, such as live chat, notifications, interactive online games, and so on are all possible thanks to Action Cable.

Before we go into the tutorial on creating a real-time messaging app using Action Cable, let’s take a quick look at the server-side components of Rails 5.


What Is Blockchain and Why Is It News?

Technology, the inveterate disruptor, is at it again. Granted, it’s always kicking up dust. But every now and then it coughs up something major, sending a shiver down the industry’s spine. So it is with blockchain, a distributed database.