Skip to content

own-playground/domain-event

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ACTION ITEM

  • ์–ด๋А ํ”„๋กœ์„ธ์Šค๊นŒ์ง€ ๋ฌถ์–ด์•ผ ํ•˜๋Š”์ง€ ๋‹ค์‹œ ๊ณ ๋ฏผํ•ด๋ณด๊ธฐ
    • ํŠธ๋žœ์žญ์…˜ ๋ฒ”์œ„๋Š” ์ ์ ˆํ•œ๊ฐ€?
    • ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๋Š” ๋น„๋™๊ธฐ๋กœ ํ•ด๋„ ๊ดœ์ฐฎ์€๊ฐ€?
  • ๋‹ค๋ฅธ ์ด๋ฒคํŠธ ๋ฐฉ์‹๋„ ์ ์šฉํ•˜๊ธฐ
    • DomainEvents
    • ApplicationEventPublisher
  • '๋ฐฐ์†ก ์‹œ์ž‘'๋„ ์ถ”๊ฐ€ํ•˜๊ธฐ
    • ์ด๊ฑด ๋‹จ์ˆœ ์ด๋ฒคํŠธ ์ ์šฉ์ด ์•„๋‹ˆ๋ผ ์–ด๋А ์‹œ์ ์— ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ณ ๋ฏผํ•ด๋ณด๊ธฐ
    • ๋” ๋‚˜์•„๊ฐ€์„œ ์žฌ๊ณ  ์ฐจ๊ฐ, ๊ฐ€๊ฒŒ์— ์ฃผ๋ฌธ ์•Œ๋ฆผ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ๋“ค ์ƒ๊ฐํ•ด๋ณด๊ธฐ

Order Process

  • 1: 2024/08/09 00:29
sequenceDiagram
    participant Client
    participant OrderController
    participant OrderService
    participant Order
    participant EventHandler

    Client->>OrderController: POST /api/v1/orders
    OrderController->>OrderService: placeOrder()
    OrderService->>Order: new Order(userId)
    Order-->>Order: registerEvent(OrderCreatedEvent)
    OrderService-->>OrderController: ์™„๋ฃŒ
    OrderController-->>Client: 200 OK

    Note over Order,EventHandler: ๋น„๋™๊ธฐ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ

    Order-)EventHandler: OrderCreatedEvent
    EventHandler->>OrderService: payOrder(orderKey, userId, status)
    OrderService->>Order: confirmed()
    Order-->>Order: registerEvent(OrderCompletedEvent)

    Order-)EventHandler: OrderCompletedEvent
    EventHandler->>OrderService: completeOrder(order)
    OrderService->>OrderService: ์ด๋ฉ”์ผ ๋ฐ ์•Œ๋ฆผํ†ก ์ „์†ก ๋กœ๊ทธ
Loading
\\\\\ output \\\\
2024-08-09T00:33:42.905+09:00  INFO 43031 --- [nio-8080-exec-1] c.t.d.order.application.OrderService     : 1 ====== ์ฃผ๋ฌธ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
2024-08-09T00:33:42.953+09:00  INFO 43031 --- [         task-1] c.t.d.order.application.OrderService     : 2 ====== ๊ฒฐ์ œ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ๋ฌธ ํ‚ค: 04dcd0ab-f69c-4736-acad-e63b9172cfc0, ์ฃผ๋ฌธ์ž ์•„์ด๋””: 1, ์ฃผ๋ฌธ ์ƒํƒœ: ์ฃผ๋ฌธ ์ตœ์ดˆ ์ƒ์„ฑ
2024-08-09T00:33:43.005+09:00  INFO 43031 --- [         task-1] c.t.d.order.application.OrderService     : 3 ====== ๊ฒฐ์ œ๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
2024-08-09T00:33:43.010+09:00  INFO 43031 --- [         task-2] c.t.d.order.application.OrderService     : 4 ====== ์ฃผ๋ฌธ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ๋ฌธ ์ƒํƒœ: ๊ฒฐ์ œ ์™„๋ฃŒ
2024-08-09T00:33:43.010+09:00  INFO 43031 --- [         task-2] c.t.d.order.application.OrderService     : 5 ====== ์ด๋ฉ”์ผ ์ „์†ก
2024-08-09T00:33:43.010+09:00  INFO 43031 --- [         task-2] c.t.d.order.application.OrderService     : 5 ====== ์•Œ๋ฆผํ†ก ์ „์†ก

About

[practice] ApplicationEventPublisher & DomainEvents & AbstractAggregateRoot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages