190 lines
4.1 KiB
Markdown
190 lines
4.1 KiB
Markdown
# Platform Architecture Diagrams
|
|
|
|
## Package Architecture
|
|
```mermaid
|
|
graph TD
|
|
subgraph Core ["Core Framework"]
|
|
Container[illuminate/container]
|
|
Support[illuminate/support]
|
|
Foundation[illuminate/foundation]
|
|
Http[illuminate/http]
|
|
Routing[illuminate/routing]
|
|
Database[illuminate/database]
|
|
end
|
|
|
|
subgraph Contracts ["Contracts Layer"]
|
|
ContainerContract[container_contract]
|
|
EventContract[event_contract]
|
|
HttpContract[http_contract]
|
|
RouteContract[route_contract]
|
|
QueueContract[queue_contract]
|
|
PipelineContract[pipeline_contract]
|
|
end
|
|
|
|
subgraph Infrastructure ["Infrastructure"]
|
|
Events[events]
|
|
Queue[queue]
|
|
Pipeline[pipeline]
|
|
Bus[bus]
|
|
Process[process]
|
|
Model[model]
|
|
end
|
|
|
|
%% Contract Dependencies
|
|
Container --> ContainerContract
|
|
Events --> EventContract
|
|
Http --> HttpContract
|
|
Routing --> RouteContract
|
|
Queue --> QueueContract
|
|
Pipeline --> PipelineContract
|
|
|
|
%% Core Dependencies
|
|
Foundation --> Container
|
|
Http --> Container
|
|
Routing --> Http
|
|
Database --> Container
|
|
|
|
%% Infrastructure Dependencies
|
|
Events --> Container
|
|
Queue --> Container
|
|
Pipeline --> Container
|
|
Bus --> Events
|
|
Process --> Container
|
|
Model --> Database
|
|
```
|
|
|
|
## Request Lifecycle
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant Client
|
|
participant Server
|
|
participant Http
|
|
participant Router
|
|
participant Pipeline
|
|
participant Controller
|
|
participant Container
|
|
|
|
Client->>Server: HTTP Request
|
|
Server->>Http: Handle Request
|
|
Http->>Router: Route Request
|
|
Router->>Pipeline: Process Middleware
|
|
Pipeline->>Container: Resolve Dependencies
|
|
Container->>Controller: Inject Dependencies
|
|
Controller->>Client: Return Response
|
|
```
|
|
|
|
## Service Container Flow
|
|
```mermaid
|
|
graph LR
|
|
subgraph Container ["Container"]
|
|
Bind[Bind Service]
|
|
Resolve[Resolve Service]
|
|
Make[Make Instance]
|
|
end
|
|
|
|
subgraph Provider ["Service Provider"]
|
|
Register[Register Services]
|
|
Boot[Boot Services]
|
|
end
|
|
|
|
subgraph Application ["Application"]
|
|
Request[Handle Request]
|
|
Response[Return Response]
|
|
end
|
|
|
|
Register --> Bind
|
|
Request --> Resolve
|
|
Resolve --> Make
|
|
Make --> Response
|
|
Boot --> Request
|
|
```
|
|
|
|
## Event System
|
|
```mermaid
|
|
graph TD
|
|
subgraph Events ["Event System"]
|
|
Dispatcher[Event Dispatcher]
|
|
Listener[Event Listener]
|
|
Queue[Queue Listener]
|
|
end
|
|
|
|
subgraph Application ["Application"]
|
|
Event[Fire Event]
|
|
Handler[Handle Event]
|
|
end
|
|
|
|
Event --> Dispatcher
|
|
Dispatcher --> Listener
|
|
Dispatcher --> Queue
|
|
Listener --> Handler
|
|
Queue --> Handler
|
|
```
|
|
|
|
## Database Layer
|
|
```mermaid
|
|
graph TD
|
|
subgraph Models ["Model Layer"]
|
|
Model[Eloquent Model]
|
|
Relation[Model Relations]
|
|
Observer[Model Observer]
|
|
end
|
|
|
|
subgraph Database ["Database"]
|
|
Query[Query Builder]
|
|
Schema[Schema Builder]
|
|
Migration[Migrations]
|
|
end
|
|
|
|
subgraph Events ["Events"]
|
|
Created[Created Event]
|
|
Updated[Updated Event]
|
|
Deleted[Deleted Event]
|
|
end
|
|
|
|
Model --> Query
|
|
Model --> Relation
|
|
Model --> Observer
|
|
Observer --> Created
|
|
Observer --> Updated
|
|
Observer --> Deleted
|
|
Query --> Schema
|
|
Schema --> Migration
|
|
```
|
|
|
|
## Package Dependencies
|
|
```mermaid
|
|
graph TD
|
|
subgraph Core ["Core Packages"]
|
|
Container[container]
|
|
Support[support]
|
|
Foundation[foundation]
|
|
end
|
|
|
|
subgraph Features ["Feature Packages"]
|
|
Http[http]
|
|
Routing[routing]
|
|
Database[database]
|
|
Cache[cache]
|
|
end
|
|
|
|
subgraph Infrastructure ["Infrastructure"]
|
|
Events[events]
|
|
Queue[queue]
|
|
Pipeline[pipeline]
|
|
end
|
|
|
|
%% Core Dependencies
|
|
Support --> Container
|
|
Foundation --> Container
|
|
Foundation --> Support
|
|
|
|
%% Feature Dependencies
|
|
Http --> Foundation
|
|
Routing --> Http
|
|
Database --> Foundation
|
|
Cache --> Foundation
|
|
|
|
%% Infrastructure Dependencies
|
|
Events --> Container
|
|
Queue --> Events
|
|
Pipeline --> Container
|