Building Microservices Using Spring Boot, HarperDB, and AWS

Introduction

In this article, you will learn how to use Spring Boot and HarperDB to create a microservice. Later on, you will also look at how to deploy the complete application on AWS Elastic Beanstalk.

You will be building an Employee Leave Management System. This application will be responsible for tracking the detailed record of employees' leaves. You will also be implementing the functionality to add, edit, and cancel leaves.

Dive Deep Into TiKV Transactions: The Life Story of a TiKV Prewrite Request

TiKV is a distributed key-value storage engine, which is based on the designs of Google Spanner, F1, and HBase. However, TiKV is much simpler to manage because it does not depend on a distributed file system.

As introduced in A Deep Dive into TiKV and How TiKV Reads and Writes, TiKV applies a 2-phase commit (2PC) algorithm inspired by Google Percolator to support distributed transactions. These two phases are Prewrite and Commit.

Spring @Transactional Mistakes Everyone Makes

Probably one of the most used Spring annotations is @Transactional. Despite its popularity, it is sometimes misused, resulting in something that is not what the software engineer intended.

In this article, I have collected the problems that I have personally encountered in projects. I hope this list will help you better understand transactions and help fix a couple of your issues.

Database Drivers: Chauffeuring Your Data to Where it Needs to Go

Most, if not all, companies deal with complications and integration headaches somewhere in their data pipeline due to an inability or difficulty of connecting certain systems. Sometimes you have to add yet another technology to the lineup just to connect different systems and get your data to where it needs to go. However, in this modern-day, less is more. Most technologies that emerge are all about being more efficient and providing more functionality in a smaller package. If you can meet your data management needs with fewer tools, then it’s a win-win for cost-effectiveness, efficiency, and ease of use. Enter database drivers.

The Magical Adaptors

To put it plainly, each computer system needs some sort of adaptor or tool to be able to connect to other computer systems that are not the same. You can think about this in the physical or interior (computer system) sense. For a physical example, we all know the major frustration that comes along with upgrading your phone, when your chargers and headphones no longer fit in the ever-shrinking port on the bottom of the phone. However, you can buy an adapter to serve as a “middle man” to enable the connection. With computer systems, it’s the same but different. A database driver works like that physical phone adaptor, but instead of having to invest in an additional product to add to the tech stack, you can develop an adaptor/connector to extend the database functionality. Like an extension to a software package.

How to Choose a Suitable Type of Database for Mobile Apps?

Mobile apps are the most important components of a smartphone, which is why every mobile app needs to possess both the best offline and online capabilities, as well as synchronization, which is the key to a successful mobile app. Mobile apps are widely used for different types of purposes, and thousands of apps are created every day. Each app has to perform to its fullest to get noticed and stay on top all the time.

No matter what purpose an app targets, if it doesn't work well and relate to the audience, it won't be used. Or it will be downloaded and then removed with no mercy. This is why syncing the right database for your mobile app is a quite substantial aspect of high-performance mobile apps. A suitable database makes sure your app stays reliable, responsive, and competitive under all circumstances.