Category Archives: Back-End

Using Circuit Breakers with Armeria

What is a circuit breaker? Suppose an unexpected failure occurs (For example, a network issue or a server crash) and a remote server is unable to respond to the request. If so, the client who made the request to the remote server will either wait for a response until a timeout occurs, consume resources, or …

Let’s Play with Reactive Streams on Armeria – Part 2

In the first part of this blog post, we took a look at the basic concepts of Reactive Streams. In part 2 of this blog post, I’d like to tell you about how we use Reactive Streams with Armeria. What’s Armeria? Armeria is an open-source asynchronous HTTP/2, RPC, REST client/server library based on Java 8, …

Who murdered my lovely Prometheus container in Kubernetes cluster?

This blog post is about an interesting experience I had while investigating and resolving a problem that happened in the Prometheus container which was still in the CrashLoopBackoff state. The phenomenon itself and the solution are obvious and simple; so simple that you may feel that it is not worth it to spend time on …

High-throughput distributed rate limiter

Production-grade systems usually consist of multiple interconnected components that depend on each other. Popularization of the microservice architectures in recent years has led to an increase in the number of components and their interconnectivity. To protect each component from overloading and guarantee overall system quality of service, rate limiters can be used. Many articles and …

A new challenge for LINE Timeline – 1

A feature called “Discover” and a new subscription model called “Follow” have been added to the LINE Timeline service. Although users are familiar with these features, we ended up writing this post because we wanted to share the parts that we had considered and made efforts on within these features. Starting with this introduction, we have planned a three-part series to bring you more detailed information.

How we developed and integrated ‘share’ module into LINE app – 2

In Part I, we defined the following six categories to share our experience, difficulties and solutions of the Share module development for LINE iOS and covered the first two categories.
In this Part II, we will cover the remaining four categories. We will continue our story with the thinking process we went through to implement a structure for easier maintenance and expansion, on top of meeting various requirements for many LINE services.

How we developed and integrated ‘share’ module into LINE app – 1

Hi, there! We are Hyeonji Jo and Keonhong Lee, responsible for LINE iOS client development. Here we’d like to share our experience during the development of the Share module development on LINE for iOS, focusing on the difficulties we faced and how we overcame them.

Let’s Play with Reactive Streams on Armeria – Part 1

What is Reactive Streams? In this post, I’d like to introduce the basic concept of Reactive Streams, and how to use Reactive Streams with Armeria, the open-source asynchronous HTTP/2, RPC, REST client/server library. Let’s begin by examining what Reactive Streams is. The official homepage of Reactive Streams defines it as follows. Reactive Streams is a standard for …

How LINE messaging servers prepare for New Year’s traffic

This post is the result of the combined efforts and work of many. We’d like to thank all of you who were involved in preparation for New Year’s traffic. Getting started LINE shows a unique traffic pattern typical to online messaging apps. This happens at the midnight of December 31st when users start to share New …

Developing the Antman Project

Cloud storage services for media have greatly risen in popularity over the past couple of years. Services such as Google Photos and NAVER nCloud are such examples. LINE also provides its users with a service named LINE Album, a service that lets users permanently store and view their photos on a cloud server. LINE Album …