APITable Docs
Infrastructure

Tech Architecture of APITable

APITable mainly consist of multi packages to form app services:

  • web-server: build supercharged, SEO-friendly, and extremely user-facing static website and web application by using NextJS
    • UI: provides extremely smooth, user-friendly, super-fast database-spreadsheet interface in <canvas> Rendering Engine
  • backend-server: handles HTTP requests about nodes, users, organizations, etc. Code under Java Spring Boot Framework
  • room-server: handles operations(OTJSON) of datasheets, communicates with Socket Server through gRPC, and also provides APIs for developers. Coding under TypeScript and NestJS framework.
  • nest-server: handles HTTP GET requests about datasheets, records, views, etc.
  • socket-server: establishes a long connection with clients through the WebSocket protocol, allowing for two-way communication and real-time collaboration, notifications, and other features
  • init-setting,Responsible for initializing the configuration of core services
  • init-appdata,Responsible for initializing data, including databases, system-wide images, text, etc.
  • MySQL: stores persistent data, such as datasheets, records, views, etc.
  • Redis: stores cache, such as log-in session, hot data, etc.
  • Minio OSS: stores uploaded files

Here’s different perspective of APITable's architecture.

App Services Architecture

Take a look at the complete architecture of the app's services.

Cloud Infrastructure

Scalable Infrastructure

  • nest-server: is another mode of room-server. The code base is the same as room-server, but it is responsible for load balancing the getDatapack operations to prevent resource conflicts.

On this page