Category Archives: Back-End

Redis Lua script for atomic operations and cache stampede

Hello, this is Kagaya, a member of the LINE GAME Platform development team. It’s nice to be back after writing a post on Lazybones (Japanese post), in 2016. Redis and LINE GAME Platform The LINE GAME Platform uses Redis — in-memory no SQL database — for its main database, mainly for cache. For instance, we are using …

Effective code review

Now and then, code quality becomes an issue in a team and everyone starts to talk about how we can improve unit test and code coverage, but not for long. Eventually, it’s not a hot topic anymore as people get busy. But then, you will experience déjà vu probably within a year, because the same idea comes back the next year. My name is Bryan Liu, a quality engineer working on test automation of LINE NOW, and I’d like to share what I did to facilitate unit test and code review process in LINE Taiwan.

Presenting on RedisConf18

Hello, I am Jongyeol Choi, a member of the Redis team at LINE. LINE’s services use various storage systems based on their needs. Our messaging service uses various open source storage systems such as Redis, HBase, and Kafka. As a member of the Redis team, I participated the RedisConf18 conference in San Francisco in U.S.A, on April 26th, as a speaker. The topic of my session was, “Redis at LINE, 25 billion messages per day”. I’d like to take this opportunity to share the presentation preparation process, the conference itself and the responses I got for my session.

RedisConf18 Venue

API the Docs Recap

Hi, my name is Serizawa and I’m a technical writer in LINE. LINE has a program that allows engineers to attend overseas conferences on company expense so that they can grasp the latest technology trends. In this article, I’d like to share my report on API the Docs, the API documentation conference that I attended, thanks to the program.

The structure of the LINE LIVE’s encoder layer

On December 10th of 2017, we celebrated our second anniversary for LINE LIVE, our live streaming service. The service has been up and running ever since the launch with no trouble, thanks to the efforts put in by countless engineers at LINE. On this blog post, as a member of ITSC, a team at LINE running a global infrastructure system, I’d like to share with you some of decisions we had to make in the initial phase of designing and implementing the system. Back then, I had absolutely no experience in building or running a live media service.

Functional programing language and LINE GAME Cloud

We are junior engineers, Bu Sung Kim and Jae Ho Lee at LINE, working on the LINE GAME Platform. We have a great interest in functional programming languages. It all started with learning that the LINE GAME Cloud is developed in Clojure, one of functional programming languages. On this post, we would like to take you through some of the characteristics of functional programming languages in association with the use cases of the LINE GAME Cloud.

LINE GAME Cloud & Functional Programming

LINE GAME Cloud is a game server platform, obviously cloud-based, to serve the LINE Games service worldwide, safe and sound. The cloud project was launched to globalize the LINE Games service and to automate distribution process. LINE GAME Cloud is currently in action serving the users all over the world, automatically issues servers, and supports L4/L7 routing, DNS and auto scaling. You can check the details of this project through the following links:

Using Docker to build a testing infrastructure for web UI and mobile

Suppose you are to setup test automation. Building and maintaining a whole test infrastructure all by your team can be painful. Although some cloud services like Sauce Labs do cover DevOps, you may have hesitated to use them due to security issues or budget concerns in your company. Docker is a good tool for you to setup and maintain servers for test automation, especially if you are just starting to build an automation test infrastructure with open source solutions.

Of the open source solutions, Selenium is an open source framework for automating UI tests. It allows you to simulate user flow by executing scripts on different browsers. Selenium-Grid consists of hub servers and node servers to let you execute tests in parallel to speed up testing. When a hub receives requests from clients, the requests are rerouted to an appropriate node server, based on the capability parameters.

Providing Prometheus as a service

I’m Paul Traylor with LINE Fukuoka’s Development Department where I focus on monitoring many servers used to support LINE Family Apps.

For most developers, it’s much more fun to focus on code and adding new features but when things are running poorly it’s useful to know why. Since it’s sometimes difficult to configure monitoring by yourself, it has been my responsibility to make it easier to use so that all services can be monitored for peak performance. As part of this, we developed Promgen to help maintain our Prometheus configuration and make it easier for developers to register monitoring targets or subscribe to alerts for any service they are responsible for.

Implementing a queue for LINE LIVE PC transmission

Greetings, this is Yappo, in charge of LINE LIVE development. On this blog post, I will introduce a queue for delaying tasks, created for transmitting LINE LIVE service from users’ PC.

How LINE LIVE was broadcasting

We used to have two ways to broadcast LINE LIVE. One is to broadcast directly from the LINE LIVE app and the other is to broadcast from computers. Broadcasting from computers required using the LINE Official Account Manager site and RTMP software (or an exclusive tool). In other words, users were only able to broadcast using the LINE LIVE app, and not PC; only the LINE OA managers have been able to use computers to broadcast.

When you look at the following two sequence diagrams, you would probably think that the implementations for the two transmission types would be completely different. Much to your surprise, the fundamental designs are the same.


Geo-linked applications with beacon

Hello, my name is Charlotte Yu and I am currently in charge of the business development and planning of the LINE Beacon platform in Taiwan.

One of the projects I’m working on involves using LINE Beacon as a feasible location contextual technology which can play an important role in LINE’s “Smart Portal” concept to bring people, information and services closer together and march toward our mission of “CLOSING THE DISTANCE”.

Currently, at this early stage, we are focusing on creating successful beacon deployments and use cases to raise user awareness and usage rates.

Our strategy behind the LINE Beacon platform is to take advantage of LINE’s extensive user base and other LINE services and features popular in Taiwan. We believe that location-awareness will be a driving force in the advancement of mobile technology, and that’s why we are building a beacon network by deploying LINE Beacon to as many places as possible. This is in line with two key factors of the online-to-offline (O2O) ecosystem: geo-linked applications using location-aware technology and platforms with a high user base.

O2O messaging is used to connect the online digital platform to offline merchants. In terms of commerce, the aim of O2O is to drive customers from the online marketplace and platforms (where they spend most of their time) to offline brick-and-mortar stores. This can happen through digital coupons, membership cards, and proximity marketing. That’s why we designed various beacon applications to build online-to-offline networks where the virtual world expands to the real world.

O2O and beacons link everyday products and features such as LINE Coupon, LINE Points, and LINE Shop Card to drive sales. We can push GeoADs (geo-linked advertisements) to promote stores, clients, and events with LINE business accounts (such as official accounts or LINE@ accounts) to nearby LINE users. By encouraging LINE users to walk into stores using LBS (location-based service) incentives such as coupons and stickers, we can enhance the user experience and help LINE@ owners, who have an LBS add-on such as indoor navigation or a shopping guide, achieve higher user retention rates.