Lei Xia

Sr. Software Engineer | Solution Architect

Writing code, Enjoying life, Building future

RSS · Sponsor


December 31, 2023 · 35 words · One minute



A deep dive into Bloomfilter in Redis

November 19, 2023 · 708 words · 4 min

In this article, I’ll deep dive into an annother powerful data structure in Redis: Bloom Filter. Bloom Filter can help you check whether elements exist, reduce unnecessary quering costs, improve system response speed and throughput. By properly utilizing Bloom Filter, you can optimize application performance effectively, meet the requirement of high-performance and large-scale data processing.

A deep dive into HyperLog in Redis

November 18, 2023 · 761 words · 4 min

In this article, I’ll deep dive into an interesting and powerful feature of Redis: HyperLog. By understanding the working principles and application scenarios of this feature, you’ll be able to leverage Redis effectively to build high-performance and high-scalable applications.

Build a linux/c++ development environment based on docker/vscode step-by-step

October 20, 2023 · 510 words · 3 min

Sometimes we want to develop some high-performance c++ application on Linux(like epoll/ioturing), installing a virtual machine is a solution, but I think it’s not the most convenient solution, today I’ll share how to build a linux/c++ development environment based on docker/vscode.

Understanding RBAC

September 25, 2023 · 661 words · 4 min

Role-based access control(RBAC) is a policy-neutral access control mechanism defined around roles and privileges. The components of RBAC such as role-permissions, user-role and role-role relationships make it simple to perform user assignments. In this article, I’ll share some information about RBAC and ABAC. The basic idea of RBAC is to separate permission management from users to reduce management complexity and provider higher flexibility and security. By using roles as a middle layer, administrators can more easily manage user permissions without having to focus on each user’s permission settings.

Spring Boot Cassandra CRUD Example

July 26, 2023 · 837 words · 4 min

Apache Cassandra is an open source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it the perfect platform for mission-critical data. In this article, I’ll share a whole project to demonstrate how to perform CRUD operation in Cassandra with Spring Boot. Note: Pagination in Cassandra is a little tricky, Cassandra don’t support offset-based limit, so we need to use cursor-based limit to implement pagination.

[Reproduce] Web Application Security Problems

July 10, 2023 · 3831 words · 18 min

No software is 100% secure, it’s just that the problems haven’t been discovered yet.

In this article. I’ll share the top 10 Web Application Security Problems.

This article is reproduced from OWASP.

Understanding TCC in distributed transactions

June 4, 2023 · 910 words · 5 min

A distributed transaction is a database transaction in which two or more network hosts are involved.

As we know, network and hosts may unreachable due to some reasons, like power failure, hardware malfunction, etc.

In this article, I’ll share how to implement distributed transaction with TCC.

Implementing a sorted set by ordered array

May 6, 2023 · 1126 words · 6 min

A <code>Set</code> that further provides a total ordering on its elements. The elements are ordered using their natural ordering, or by a <code>Comparator</code> typically provided at sorted set creation time. The set’s iterator will traverse the set in ascending element order. Several additional operations are provided to take advantage of the ordering. (This interface is the set analogue of <code>SortedMap</code>.)

Oracle - SortedSet

Java provides a built-in SortedSet implementation, known as TreeSet. In this article, I’ll show how to implement a SortedSet by Ordered Array.