kubevela/pkg/apiserver
github-actions[bot] 8ffd80e4a7
Fix:Dry-run from revision application,Problems caused by resource version lower than the current version (#5249)
Signed-off-by: old.prince <di7zhang@gmail.com>
(cherry picked from commit d5fcb04147)

Co-authored-by: oldprince <di7zhang@gmail.com>
2023-01-03 11:36:57 +08:00
..
config [Backport release-1.5] Fix: memory leak of the apiserver (#4777) 2022-09-23 17:14:10 +08:00
domain Fix:Dry-run from revision application,Problems caused by resource version lower than the current version (#5249) 2023-01-03 11:36:57 +08:00
event [Backport release-1.5] Fix: memory leak of the apiserver (#4777) 2022-09-23 17:14:10 +08:00
infrastructure Fix: the create time of the synced policies is zero (#4610) 2022-08-12 14:44:23 +08:00
interfaces/api Fix: missing return when token is null (#4520) 2022-08-02 11:02:02 +08:00
utils Fix: support default value of ui schema (#4859) 2022-10-13 14:45:47 +08:00
README.md Feat: Refactoring the API Server module for better layering (#3945) 2022-05-23 12:17:28 +08:00
apiserver.jpg Feat: Refactoring the API Server module for better layering (#3945) 2022-05-23 12:17:28 +08:00
server.go Feat: add the CloudShell feature (#4280) 2022-07-01 23:31:15 +08:00
server_test.go Feat: Refactoring the API Server module for better layering (#3945) 2022-05-23 12:17:28 +08:00

README.md

APIServer Module Architecture

apiserver architecture

Interfaces

Typically, it includes user interfaces, web services, and so on.

  • API

Define the Restful API and perform basic validation on user input parameters.

  • DTO

The carrier of data transmission. Here does not have any business logic inside, and the internal domain models can be isolated from the outside world through DTO.

  • Assembler

Realize the mutual conversion and data exchange between DTO and DO.

Event

Asynchronous task module. All workers under this module only run on the master node. Domain layer can be called.

Domain

Code related to core business logic.

  • Service

A domain service is a piece of business logic composed of multiple entities. You can put all domain services in the aggregate in one domain service class, or you can design each domain service as a class.

  • Repository

Usually includes repository interface and repository implementation method. In order to facilitate the splitting and combination of aggregates, the principle is set: one aggregate corresponds to one repository. For example, save user information to a database.

  • Model

Database model entity.

Infrastructure

Provide general technical basic services for other layers, such as:

  • Database
  • Cache
  • Kube Client
  • MQ