Servers & Middleware
Server technologies, middleware and management systems
A comprehensive guide to the core knowledge that most Java programmers need to master
Tauri is a framework for building lightweight, high-performance desktop applications across major platforms, including Windows, macOS, Linux, iOS, and Android. It allows developers to use any front-end framework that compiles to HTML, JS, and CSS, while the backend is powered by a Rust binary. Key features include a built-in app bundler for various formats, a self-updater, system tray icons, native notifications, and a GitHub action for CI. Tauri leverages system webviews for rendering, ensuring efficiency and compatibility. It supports streamlined development with tools like a VS Code extension and detailed documentation. Tauri is open-source, licensed under MIT or Apache 2.0, and fosters a sustainable, community-driven ecosystem.
Gin is a high-performance web framework written in Go, designed for speed and productivity. It features a zero-allocation router, middleware support, crash-free operation, JSON validation, route grouping, error management, and built-in rendering. Gin is up to 40 times faster than similar frameworks, leveraging httprouter for enhanced performance. It is extensible and suitable for building robust, scalable web applications. Key use cases include push notification servers, API gateways, and image resizing services. Gin requires Go 1.23 or above and is easy to integrate with Go's module system. Its comprehensive documentation and examples make it accessible for developers of all levels.
Advanced Java - A complete guide to advanced knowledge for Internet Java engineers: covering high concurrency, distributed, high availability, microservices, big data processing and other fields of knowledge. It is a must-read for back-end students, and front-end students can also learn from it.
A project dedicated to large-scale system design, which gathers the patterns and best practices of scalable, reliable and high-performance systems. It provides developers with rich resources and references to help them design and implement efficient large-scale systems.
Astro builds fast content websites, powerful web applications, dynamic server APIs, and an integrated web framework designed for speed.
etcd is a reliable distributed key-value storage system used to store critical data in a distributed environment.
A free big data analysis database management system (DBMS) designed for handling massive amounts of data. It provides powerful analytical functions that can be used for real-time queries and analysis of large-scale data sets, helping users quickly extract valuable information from massive data.
An open-source distributed NewSQL database that can elegantly replace traditional database middleware, database sharding, and other sharding schemes. TiDB has core features such as horizontal scalability, high availability, high concurrency, and strong consistency, making it suitable for various large-scale data processing and real-time analysis scenarios. It simplifies database operations and maintenance and improves data processing performance.
A tool that can quickly package various web pages into MacApp. Compared with Electron, Pake is more compact and easy to use, faster, and has achieved universal shortcut transmission, immersive window, drag-and-drop, and packaging style compatibility features. For developers who need to package web applications into desktop applications, Pake provides a convenient and efficient open-source tool.
interview_internal_reference - 2019 latest summary, Alibaba, Tencent, Baidu, Meituan, Toutiao and other technical interview questions, as well as answers, expert question setter analysis summary
Java interview and learning guide, which covers most of the core knowledge that Java programmers need to master, including JVM, concurrency and multi-threading, common tool sets, data structures and algorithms, message queues, databases, etc.
A free and open-source similarity search engine for massive feature vectors. Compared to operator libraries such as Faiss and SPTAG, Milvus provides a complete framework for vector data updates, indexing, and queries. Milvus utilizes GPU for index acceleration and query acceleration, significantly improving single-machine performance. Its deployment and usage are simple, reducing the difficulty of AI application implementation.
Spacedrive is a cross-platform file management tool written in Rust. It is based on the Rust implementation of the Virtual Distributed File System (VDFS), which can connect devices from different operating systems to achieve unified file management. Although the project is still in development and requires users to compile the client themselves, it provides a convenient and secure way to manage and share files.
Data Engineering Zoomcamp (DataTalksClub/data-engineering-zoomcamp) offers a free data engineering course designed to help learners master the basic concepts and skills of data engineering. Whether it's data stream processing, data warehouse construction, or ETL process design, this course provides valuable learning resources for those aspiring to enter the field of data engineering.
Kafka - a distributed stream platform belonging to Apache
An open-source cloud storage platform with rich features suitable for building a company's internal cloud storage platform. The platform provides file storage, synchronization, sharing, collaboration and more functions, enabling teams to efficiently manage and share files. Through Nextcloud, users can build their own secure and controllable cloud services to meet various needs of enterprises for cloud storage.
SurrealDB is a cloud-native, end-to-end database designed for modern applications, including web, mobile, serverless, and traditional systems. It simplifies development by combining database, API, and authentication layers into one platform, reducing the need for server-side components. Key features include real-time collaboration, support for SQL, GraphQL, and WebSocket connections, granular row-level access control, and multi-model data storage (tables, documents, and graph). SurrealDB supports structured and unstructured data, full-text indexing, geospatial querying, and embedded JavaScript functions for custom logic. It can be deployed as a single node or in a distributed cluster, ensuring scalability and high availability. With easy installation and integration across multiple platforms, SurrealDB accelerates secure, performant app development.
xxl-job - Distributed Task Scheduling Platform XXL-JOB
A backend development tool open-sourced by Digital Ocean, a well-known cloud server vendor. Through a more humanized visual interface, it helps you quickly set up and generate Nginx configuration files.
nginx - nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server and a general TCP / UDP proxy server, originally written by Igor Sysoev.
A popular Swift language web framework, built on the non-blocking event-driven library SwiftNIO. It provides modules such as ORM, template engines, user authentication, etc., which can quickly create websites, interfaces, and other services. The design of Vapor emphasizes performance and ease of use, making it suitable for building high-performance web applications and API services.
A big data platform specifically designed and optimized for industries such as the Internet of Things (IoT) and application monitoring. Its database insertion and query operations are 10 times faster than other databases! It also consumes very low costs compared to other typical solutions in this category. TDengine only requires less than 1/5 of computing resources, and it provides interfaces for development in Java, C/C++, Python, Go, RESTful API, etc. Are you still worried about the performance of data writing, reading, and computing? With it, your hair survival rate will definitely increase significantly.
This book will talk about the essence of data system design from the bottom layer data structure to the top layer architecture design. The valuable experience in it will be helpful for architects, DBAs, back-end engineers and even product managers.
HikariCP - A simple, reliable, high-performance JDBC connection pool, claimed to be "zero-overhead" production-ready, with a library size of approximately 130KB.
ShardingSphere - an open-source distributed database middleware solution. It provides additional capabilities such as data sharding, read-write separation, flexible transactions, data encryption, and distributed governance in the JDBC layer of Java with zero intrusion to business applications. On this basis, it provides a server version that encapsulates common database protocols to support heterogeneous languages.
An open-source IoT platform written in Java, which can be used for data collection, processing, visualization and device management, etc.
A guide on how to secure Linux servers, covering SSH configuration, basic security measures, network firewalls, system auditing and other security enhancements, with detailed steps and recommendations.
The reimplementation of the server software for the animated game. This project aims to provide an efficient and stable server software that can offer reliable services for the game. It has been improved and optimized to have better performance and scalability while maintaining compatibility with the original game.
A Big Data Primer
A carefully collected and organized list of system design interview resources, providing practical cases from well-known technology companies and basic knowledge of system design, to help pass the system design interview.
FoundationDB - FoundationDB is a distributed database designed to handle large amounts of structured data across commercial server clusters. It organizes data as an ordered key-value store and uses ACID transactions for all operations. It is particularly suitable for read/write workloads but also performs well with write-intensive workloads. Users interact with the database using API language bindings.
Ceph - Ceph is a distributed object, block and file storage platform
A summary of Java ecosystem common technology frameworks, open source middleware, system architecture, project management, classic architecture cases, databases, commonly used third-party libraries, online operation and maintenance, etc.
A lightweight but powerful toolkit to help users automate feature engineering, neural network architecture search, hyperparameter tuning and model compression
ArangoDB - ArangoDB is a native multi-model database with flexible data models for documents, graphs, and key-value. Build high-performance applications using convenient SQL-like query language or JavaScript extensions.
Sogou's open source C++ server engine on GitHub, as a lightweight and elegant enterprise-level program engine, can meet most of the needs of C++ backend development.
Akka - Building highly concurrent, distributed and elastic message-driven applications on the JVM
Zookeeper is a distributed service coordination framework under the Apache umbrella.
Debezium - Debezium provides a low-latency streaming platform for capturing data changes
Nebula - Nebula Graph is an open-source graph database that excels at handling ultra-large-scale datasets with billions of vertices and trillions of edges
A big data interview question solution, mainly divided into three major chapters: Big Data Development Foundation, Framework Learning, and Practical Advanced, which includes high-frequency interview questions on technologies such as high concurrency, distributed, Hadoop, Spark, Flink, and Kafka.
A completely free and open source TikTok/TikTok collection tool.
go-cloud solves the problem of compatibility with different cloud platform SDKs by encapsulating the interfaces of different cloud platforms and providing users with a unified API. The project aims to simplify the switching and integration between different cloud platforms for developers, improve development efficiency and portability.
OceanBase is a distributed relational database developed by Ant Group. It is based on the Paxos protocol and a distributed architecture, which realizes high availability and linear scalability. The OceanBase database can run on common server clusters without relying on special hardware architectures. This project aims to provide a reliable relational database solution for enterprise-level applications.
"Java Programmer's View of Linux" brings more people into the Linux world
A powerful and user-friendly Nginx visualization management tool, providing server monitoring, certificate management, configuration editing, log analysis and other functions, supporting multiple languages and dark mode.
An event-driven, non-blocking network framework for writing high-performance network applications
An open-source architecture design book covering topics such as cloud computing, networks, distributed systems, container technology, observability, service mesh, and DevOps, helping programmers to deeply understand the principles and practices of related technologies.