Directory Structure
RPC Service
.
├── boot
│ └── boot.go // Register initialization methods here
├── cmd
│ ├── api
│ │ └── server.go // Service startup entry point
│ └── cobra.go // Cobra command registration
├── config // Service configuration folder
│ └── configs_local.yaml // Local configuration file
├── global
│ └── global.go // Global variables
├── internal
│ ├── dao // Database operations
│ ├── enum // Enums and constants
│ ├── logic // Business logic
│ ├── model // Data models
│ └── service // Services
│ └── api.go // Service interface
├── static
│ └── rpc-server.txt // Service name
├── tools // Utility classes
│
└── main.go // Entry file
boot: Register the corresponding initialization methods in thebootdirectory. Implement the registration method inboot/boot.go.cmd: Registercobracommands. Currently, provides theapiservice startup entry point.config: Configuration folder. Configuration files are in YAML format and must be strictly written in YAML format, otherwise errors may occur. The initial creation includes a local environment configuration fileconfig/configs_local.yaml.global: Global variables for custom global variables.internal: Directory for implementing business code.internal/daois for database operations,internal/logicis for business logic,internal/modelis for data models, andinternal/serviceis for service interfaces.static: Stores static files.tools: Utility classes. Custom utility classes should be placed in this directory.
HTTP Service
.
├── cmd
│ ├── api
│ │ └── server.go // Service startup entry point
│ └── cobra.go // Cobra command registration
├── config // Service configuration folder
│ └── configs_local.yaml // Local configuration file
├── internal
│ ├── middleware // Custom middleware
│ ├── route // Route management
│ │ └── route.go // Provides basic routes
│ └── service // Services
├── static
│ └── http-server.txt // Service name
│
└── main.go // Entry file
cmd: Registercobracommands. Currently, provides theapiservice startup entry point.config: Configuration folder. Configuration files are in YAML format and must be strictly written in YAML format, otherwise errors may occur. The initial creation includes a local environment configuration fileconfig/configs_local.yaml.internal: Directory for implementing business code.internal/middlewareis used to store custom middleware,internal/routeis for route management,internal/serviceis for service implementation and RPC invocation.static: Stores static files.
