Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Event-Driven Microservices, CQRS, SAGA, Axon, Spring Boot, а также все другие курсы, прямо сейчас!
Премиум
  1. Урок 1. 00:03:52
    Introduction
  2. Урок 2. 00:07:12
    Microservice vs Monolithic application
  3. Урок 3. 00:07:40
    Microservices Architecture Overview
  4. Урок 4. 00:05:17
    Event-Driven Microservices
  5. Урок 5. 00:04:32
    Transactions in Microservices
  6. Урок 6. 00:05:52
    Choreography-Based Saga
  7. Урок 7. 00:04:29
    Orchestration-Based Saga
  8. Урок 8. 00:02:54
    Frameworks that we can use
  9. Урок 9. 00:07:09
    (CQRS)Command Query Responsibility Segregation
  10. Урок 10. 00:07:12
    Event Sourcing
  11. Урок 11. 00:03:01
    Axon Framework and Axon Server
  12. Урок 12. 00:04:16
    Download and run Docker Desktop
  13. Урок 13. 00:02:42
    Spring Tool Suite
  14. Урок 14. 00:02:20
    Download and Install Postman HTTP client
  15. Урок 15. 00:05:32
    Creating a new project. Products Microservice.
  16. Урок 16. 00:04:41
    Creating a Rest Controller class
  17. Урок 17. 00:04:44
    Handle HTTP POST, GET, PUT and DELETE Requests
  18. Урок 18. 00:01:48
    Trying how it works
  19. Урок 19. 00:04:30
    Introduction
  20. Урок 20. 00:03:33
    Creating new project
  21. Урок 21. 00:05:57
    Configure project as Eureka Server
  22. Урок 22. 00:06:03
    Registering Microservices with Eureka
  23. Урок 23. 00:02:26
    Trying how it works
  24. Урок 24. 00:03:45
    Introduction
  25. Урок 25. 00:05:25
    Creating Spring Cloud API Gateway project
  26. Урок 26. 00:05:42
    Automatic Routing with Resource Locator
  27. Урок 27. 00:05:24
    Random Port Number
  28. Урок 28. 00:06:13
    Starting Multiple instances of Products Microservice
  29. Урок 29. 00:05:36
    Trying how load balancing work
  30. Урок 30. 00:04:08
    Download and run Axon Server as JAR application
  31. Урок 31. 00:07:06
    Axon Server configuration properties
  32. Урок 32. 00:08:25
    Run Axon Server in a Docker container
  33. Урок 33. 00:04:22
    Start, Stop, Delete Axon Server Docker Container By ID
  34. Урок 34. 00:02:50
    Configure Axon Server running in Docker Container
  35. Урок 35. 00:04:35
    Accept HTTP Request Body
  36. Урок 36. 00:00:53
    Trying how it works
  37. Урок 37. 00:00:57
    Adding Axon Framework Spring Boot Starter
  38. Урок 38. 00:04:27
    Creating a new Command class
  39. Урок 39. 00:01:52
    Creating a new CreateProductCommand object
  40. Урок 40. 00:04:13
    Send Command to a Command Gateway
  41. Урок 41. 00:02:11
    Product Aggregate - Introduction
  42. Урок 42. 00:02:12
    Creating ProductAggregate class
  43. Урок 43. 00:01:16
    Validate the CreateProductCommand
  44. Урок 44. 00:02:54
    Creating ProductCreatedEvent
  45. Урок 45. 00:03:04
    Apply and Publish the Product Created Event
  46. Урок 46. 00:03:08
    @EventSourcingHandler
  47. Урок 47. 00:01:43
    Adding Additional Dependency
  48. Урок 48. 00:03:35
    Trying how it works
  49. Урок 49. 00:02:38
    Previewing Event in the EventStore
  50. Урок 50. 00:00:41
    Introduction
  51. Урок 51. 00:03:03
    Adding Spring Data JPA & H2 dependencies
  52. Урок 52. 00:04:30
    Configure database access in the application.properties file
  53. Урок 53. 00:05:11
    Creating an ProductEntity
  54. Урок 54. 00:03:53
    Creating ProductRepository
  55. Урок 55. 00:02:16
    Creating Products Events Handler/Projection
  56. Урок 56. 00:01:42
    Implementing @EventHandler method
  57. Урок 57. 00:02:29
    Trying how it works
  58. Урок 58. 00:03:27
    Preview Product record in a database
  59. Урок 59. 00:00:51
    Introduction
  60. Урок 60. 00:02:22
    Creating Rest Controller
  61. Урок 61. 00:01:56
    Refactor Command API Rest Controller
  62. Урок 62. 00:02:48
    Get Products web service endpoint
  63. Урок 63. 00:05:04
    Querying the QueryGateway
  64. Урок 64. 00:01:28
    Creating ProductsQueryHandler
  65. Урок 65. 00:03:31
    Implementing the findProducts() method
  66. Урок 66. 00:01:29
    Trying how it works
  67. Урок 67. 00:03:48
    Introduction to Bean Validation
  68. Урок 68. 00:02:52
    Bean validation. Enable Bean Validation.
  69. Урок 69. 00:05:42
    Bean validation. Validating Request Body.
  70. Урок 70. 00:02:57
    Trying how the Request Body Validation works.
  71. Урок 71. 00:00:40
    Introduction
  72. Урок 72. 00:01:27
    Command validation in the Aggregate
  73. Урок 73. 00:01:21
    Introduction to Message Dispatch Interceptor
  74. Урок 74. 00:05:15
    Creating a new Command Interceptor class
  75. Урок 75. 00:02:04
    Register Message Dispatch Interceptor
  76. Урок 76. 00:05:53
    Trying how the Command Interceptor works.
  77. Урок 77. 00:05:17
    Set Based Consistency - Introduction
  78. Урок 78. 00:03:30
    Creating Product Lookup Entity
  79. Урок 79. 00:02:25
    Creating Product Lookup Repository
  80. Урок 80. 00:05:45
    Creating a ProductLookupEventsHandler
  81. Урок 81. 00:02:09
    Persisting information into a ProductLookup table
  82. Урок 82. 00:03:28
    Updating MessageDispatchInterceptor
  83. Урок 83. 00:04:05
    Trying how the Set base validation works
  84. Урок 84. 00:06:08
    Introduction
  85. Урок 85. 00:05:03
    Creating a centralized Error Handler class
  86. Урок 86. 00:02:27
    Trying how the centralized error handler class works
  87. Урок 87. 00:03:25
    Return custom error object
  88. Урок 88. 00:03:26
    Handle the @CommandExecutionException
  89. Урок 89. 00:03:31
    Trying to handle the @CommandExecutionException
  90. Урок 90. 00:03:15
    @ExceptionHandler
  91. Урок 91. 00:03:49
    Creating the ListenerInvocationErrorHandler
  92. Урок 92. 00:03:28
    Register the ListenerInvocationErrorHandler
  93. Урок 93. 00:07:43
    Trying how transaction rollback works
  94. Урок 94. 00:02:18
    Introduction
  95. Урок 95. 00:03:42
    Saga class structure overview
  96. Урок 96. 00:01:57
    Creating OrderSaga class
  97. Урок 97. 00:02:44
    @SagaEventHandler method for the OrderCreatedEvent
  98. Урок 98. 00:03:38
    Creating a new Core API module
  99. Урок 99. 00:01:24
    Adding Core project as a dependency to OrdersService
  100. Урок 100. 00:01:42
    Creating the ReserveProductCommand
  101. Урок 101. 00:02:18
    Publish the ReserveProductCommand
  102. Урок 102. 00:03:32
    Handle the ProductServeCommand in the ProductsService
  103. Урок 103. 00:02:42
    Publish the ProductReservedEvent
  104. Урок 104. 00:01:55
    Updating Products projection
  105. Урок 105. 00:01:16
    Handle the ProductReservedEvent in Saga
  106. Урок 106. 00:05:39
    Trying how it works
  107. Урок 107. 00:02:24
    Introduction
  108. Урок 108. 00:03:25
    Fetching User Payment Details
  109. Урок 109. 00:02:12
    Trying how it works
  110. Урок 110. 00:01:51
    Creating the ProcessPaymentCommand
  111. Урок 111. 00:03:08
    Publish the ProcessPaymentCommand
  112. Урок 112. 00:01:24
    Handle the PaymentProcessedEvent
  113. Урок 113. 00:02:32
    Create and publish the ApproveOrderCommand
  114. Урок 114. 00:01:24
    Handle the ApproveOrderCommand
  115. Урок 115. 00:03:19
    Create and publish the OrderApprovedEvent
  116. Урок 116. 00:02:24
    Handle the OrderApprovedEvent and update Orders database
  117. Урок 117. 00:02:22
    Handle the OrderApprovedEvent in OrderSaga class
  118. Урок 118. 00:02:58
    Trying how it works
  119. Урок 119. 00:03:17
    Introduction
  120. Урок 120. 00:02:03
    Creating the CancelProductReservation command
  121. Урок 121. 00:04:11
    Publish the CancelProductReservationCommand
  122. Урок 122. 00:01:07
    Handle the CancelProductReservation command in ProductsService
  123. Урок 123. 00:01:29
    Create and publish the ProductReservationCancelledEvent
  124. Урок 124. 00:04:56
    Handle the ProductReservationCancelledEvent
  125. Урок 125. 00:02:13
    Create and publish the RejectOrderCommand
  126. Урок 126. 00:00:44
    Handle the RejectOrderCommand on the query side
  127. Урок 127. 00:04:23
    Create, publish and handle the OrderRejectedEvent
  128. Урок 128. 00:10:00
    Trying how it works
  129. Урок 129. 00:04:37
    Introduction
  130. Урок 130. 00:02:50
    Creating a DeadlineManager object
  131. Урок 131. 00:05:31
    Schedule a deadline
  132. Урок 132. 00:03:32
    Handle deadline
  133. Урок 133. 00:04:03
    Cancel deadline
  134. Урок 134. 00:03:33
    Trying how it works
  135. Урок 135. 00:03:07
    Introduction
  136. Урок 136. 00:01:13
    Creating the FindOrderQuery
  137. Урок 137. 00:03:48
    Creating the QueryHandler method
  138. Урок 138. 00:04:00
    Sending a Subscription Query
  139. Урок 139. 00:04:33
    Emit an Update to the subscription query
  140. Урок 140. 00:04:36
    Trying how it works
  141. Урок 141. 00:06:12
    Introduction
  142. Урок 142. 00:03:40
    Configure Snapshotting
  143. Урок 143. 00:07:40
    Trying how it works
  144. Урок 144. 00:05:34
    Introduction
  145. Урок 145. 00:02:21
    @ResetHandler
  146. Урок 146. 00:02:53
    Replay Events Endpoint
  147. Урок 147. 00:02:59
    Starting the Replay of Events
  148. Урок 148. 00:05:58
    Trying how it works