- 55
- 386 538
Saggu
United Kingdom
เข้าร่วมเมื่อ 1 ส.ค. 2017
Saggu.UK focuses on the current technology trends and try to explain complex subjects in easy to digest language.
Jasvinder Singh Saggu is a Senior Software Developer, Enterprise Application Architect and Cricket Umpire based in London, United Kingdom.
Jasvinder Singh Saggu is a Senior Software Developer, Enterprise Application Architect and Cricket Umpire based in London, United Kingdom.
Event Driven Design Vs Event Sourcing | EDD vs ES
What is Event-Driven Design (EDD)?
A design approach where systems react to events
Example: Doorbell
What is Event Sourcing?
Event Sourcing is a powerful design pattern that allows us to track every change in our system as an immutable series of events, giving us full traceability, the ability to rebuild past states, and ensuring nothing is ever lost or overwritten. Event Sourcing stores all events as the source of truth.
Example
Bank account transactions where each deposit/withdrawal is stored as an event
A design approach where systems react to events
Example: Doorbell
What is Event Sourcing?
Event Sourcing is a powerful design pattern that allows us to track every change in our system as an immutable series of events, giving us full traceability, the ability to rebuild past states, and ensuring nothing is ever lost or overwritten. Event Sourcing stores all events as the source of truth.
Example
Bank account transactions where each deposit/withdrawal is stored as an event
มุมมอง: 290
วีดีโอ
NATS with Apache Camel | Choreography design pattern| Event Driven Service
มุมมอง 6748 หลายเดือนก่อน
Choreography design pattern| Event Driven Service using NATS with Apache Camel. NATS is a high-performance messaging system designed for cloud-native applications. It provides lightweight communication with support for publish-subscribe, request-reply, and queuing patterns. NATS.io boasts simplicity, scalability, and resilience, making it ideal for microservices architectures and distributed sy...
ToxiProxy Tutorial | Chaos Testing Part-2
มุมมอง 850ปีที่แล้ว
In the previous session we started discussing what Chaos Testing is. See here: th-cam.com/video/lvI66klTusQ/w-d-xo.html In today’s session, we'll be exploring Toxiproxy, a powerful framework designed to simulate various network conditions.Tailored for testing, CI, and development environments, Toxiproxy excels in providing deterministic tampering with connections. But that's not all-it also off...
What is Chaos Testing or Chaos Engineering?
มุมมอง 1.8Kปีที่แล้ว
A predictable system is a myth. System failures are inevitable but you can be prepared for failures by building resilient systems. We will explore chaos engineering as a way to do exactly that. Chaos engineering or chaos testing is a Site Reliability Engineering (SRE) technique that simulates unexpected system failures to test a system's behavior and recovery plan. Based on what is learned from...
Spring Scheduler Tutorial
มุมมอง 3.9Kปีที่แล้ว
In Spring Framework, a scheduler is a mechanism that allows you to schedule and execute tasks at specific times or with a certain frequency. The Spring framework provides a scheduling feature through the TaskScheduler and @Scheduled annotation, which are used for scheduling tasks, often known as jobs or cron jobs.
Camel JBang - Run Camel as Script using JBang
มุมมอง 1.4Kปีที่แล้ว
What is Camel JBang? A JBang-based Camel app for easily running Camel routes camel.apache.org/manual/camel-jbang.html Thanks @ClausIbsen #JBang #camel #apachecamel #Camel-JBang
How to build Apache Camel Standalone applications without Spring framework
มุมมอง 1.4Kปีที่แล้ว
How to build Apache Camel Standalone applications without Spring framework
What is Consumer Driven Contract (CDC)? How to use Spring Cloud Contract Testing?
มุมมอง 3.9Kปีที่แล้ว
What is Consumer Driven Contracts (CDC)? How to use Spring Contract Testing? Agenda: 1. What is CDC or Consumer Driven Contract? 2. Why do I need this? 3. How to implement? 4. Workshop Code avaiable at: github.com/jssaggu/consumer-driven-contract
How to Debug Apache Camel Routes?
มุมมอง 3.6Kปีที่แล้ว
How to Debug Apache Camel Routes? Code debugging is the process of finding and fixing errors in computer programs. When you write code, you may encounter problems that prevent your program from working correctly. Debugging helps you identify and resolve these issues so that your program functions as intended. To debug code, you follow these steps: Reproduce the problem: Try to recreate the issu...
Spring Shell: A Comprehensive Hands-On Tutorial
มุมมอง 1.6Kปีที่แล้ว
In this tutorial, you will learn everything you need to know about Spring Shell, a powerful framework for building command-line applications. We'll cover the basics of setting up a Spring Shell project and walk you through creating your own custom commands, as well as using built-in commands and plugins. With a fully hands-on approach, you'll get to follow along with step-by-step instructions a...
Intercept Design Pattern using Apache Camel
มุมมอง 1.2Kปีที่แล้ว
"intercept" refers to a feature called Intercepting Message Processors (Interceptors). Interceptors in Apache Camel allow you to intercept and modify message exchanges as they pass through Camel routes. They are used to perform cross-cutting concerns, such as logging, monitoring, security, and transformation, without modifying the main logic of the routes. github.com/jssaggu/camel-tutorial/
Enterprise Integration Patterns (EIPs) | Apache Camel
มุมมอง 2.5Kปีที่แล้ว
Book: amzn.to/3njcibr Enterprise Integration Patterns (EIP) are a set of commonly used design patterns that help integrate different enterprise systems in a reliable and scalable way. EIPs provide a common language for developers to communicate and solve integration challenges, such as messaging, routing, and transformation. Using EIPs can help developers build more robust and flexible integrat...
Message Bus EIP with Apache Camel
มุมมอง 1.1Kปีที่แล้ว
Designing Enterprise Integration Patterns with Apache Camel: Building a Message Bus for Efficient Communication. A message bus is a communication system that lets software components exchange messages with each other. It's like a central hub for sending and receiving messages between different systems, making integration easier. It allows applications to send messages without knowing the exact ...
Claim Check EIP Design Pattern using Apache Camel
มุมมอง 822ปีที่แล้ว
If you're building distributed systems, you're likely to encounter situations where messages are too large to be transmitted efficiently. One solution to this problem is the Claim Check pattern from the Enterprise Integration Patterns (EIP) catalog. This pattern allows you to replace the message content with a unique key, known as a claim check. The claim check can be used to retrieve the origi...
How to protect your application from overloading? Use Throttler EIP and build it using Apache Camel.
มุมมอง 1.3Kปีที่แล้ว
Highly resilient applications must be able to cope with increases in request volume. To achieve this, load balancers are typically used to protect applications from being overwhelmed, but it is also important to have application-level controls. One way to prevent overloading a specific endpoint or violating an SLA with an external service is by implementing a throttler. The throttler regulates ...
Circuit Breaker Design Pattern using Apache Camel
มุมมอง 3.4Kปีที่แล้ว
Circuit Breaker Design Pattern using Apache Camel
Sring Boot Admin - A Complete Hands-On Tutorial
มุมมอง 10K2 ปีที่แล้ว
Sring Boot Admin - A Complete Hands-On Tutorial
How to use Apache Camel Bean Component? Full hands on workshop.
มุมมอง 3.6K2 ปีที่แล้ว
How to use Apache Camel Bean Component? Full hands on workshop.
Choreography Design Pattern | Distributed Transaction Management| MicroService Design Patterns
มุมมอง 9K2 ปีที่แล้ว
Choreography Design Pattern | Distributed Transaction Management| MicroService Design Patterns
Orchestration Design Pattern | Distributed Transaction Management| MicroService Design Patterns
มุมมอง 23K2 ปีที่แล้ว
Orchestration Design Pattern | Distributed Transaction Management| MicroService Design Patterns
SAGA Distributed Transactions Pattern using Apache Camel | Microservices Design Pattern
มุมมอง 4.6K2 ปีที่แล้ว
SAGA Distributed Transactions Pattern using Apache Camel | Microservices Design Pattern
How to provide typeahead support for SpringBoot Configuration properties?
มุมมอง 5202 ปีที่แล้ว
How to provide typeahead support for SpringBoot Configuration properties?
How to automate database migration? Database migration using Flyway Tutorial.
มุมมอง 9K2 ปีที่แล้ว
How to automate database migration? Database migration using Flyway Tutorial.
How to use Splitter Enterprise Integration Pattern (Split EIP) with Aggregator using Apache Camel?
มุมมอง 3.7K2 ปีที่แล้ว
How to use Splitter Enterprise Integration Pattern (Split EIP) with Aggregator using Apache Camel?
How do document Apache Camel Rest Endpoints using OpenApi or Swagger specs?
มุมมอง 6K2 ปีที่แล้ว
How do document Apache Camel Rest Endpoints using OpenApi or Swagger specs?
What is Apache Camel Processor and how to use it?
มุมมอง 8K2 ปีที่แล้ว
What is Apache Camel Processor and how to use it?
How to use Spring Cache with Hazelcast?
มุมมอง 18K2 ปีที่แล้ว
How to use Spring Cache with Hazelcast?
How to automate Integration Testing for a SpringBoot and Camel application? What is TestContainers?
มุมมอง 3.4K3 ปีที่แล้ว
How to automate Integration Testing for a SpringBoot and Camel application? What is TestContainers?
How to use Camel JMS and connect to ActiveMQ?
มุมมอง 6K3 ปีที่แล้ว
How to use Camel JMS and connect to ActiveMQ?
Great teaching in a simple way to understand the concept..
nice explanation
Sir, you’re amazing! Watching your videos helped me pass my semester successfully 😭
Glad to hear. Best wishes.
very good example :)
Very nice... Thank you
Thanks for the video! A bit sad that this might get outdated as the camel tests are having lots of changes lately - you might need to make a new video sometime soon :D
Hi Sir, How to test remote web service url using Apache camel test kit.
Hello, great video, I can't find much information about Apache Camel and Spring Boot. I'm working on processing a file line by line, but I need to get the header names and have them available for the other rows in the file because I need to apply some logic together. So far I haven't been able to persist the header names in the following lines. What I have been able to do is process line by line. Do you know how I could do that?
Very nice explanation. Thank you !
On the api documentation, the endpoints are shown without context path. Any fix for that?
Why copy and paste, why not automatically generate documentation
Video is good , pls don't use BG music while explaining. Thanks!!!!
great video explaining default caching and then Redis cache. Also liked the fact that you use OkHttp 😃
Excellent.
Excelent content. Is very good.
Thanks sir, this is great!
How to manually execute shell command if app (web) deployed in the cloud?
Anything for quarkus camel? This is in spring boot
Hello Saggu, Am currently using camel 2.22 pretty old v ‘ facing issues with connection close for one of camel route which calls http external api that responds with 206 partial content status code , can you please share some knowledge on how to close open http connection. Due to 206 status. Ode may be camel is not able to close up connection while piles open http connection and causes connection pool exhaustion
thank you
I had to implement aggregation, and spent an afternoon trying it myself - this made it clear in 36mins!! Great tutorial!! I should always check your Camel playlist before getting started 😅
Nice explain
Thank you, was informative :)
Quite impressive explaination clear and crisp !!!
Very informative. Thanks
Amazing explanation! Keep going!!
nice content, thanks you! However, i got problem with the rabbitmq, there is no problem with the from part, i.e. the queue acts as consumer which can be auto-declared, however it does not happen to the "to" endpoint (as a producer in rabbitmq). The "out" queue can never be created automatically. I have to manually create the queue and bind to the exchange to make it work. i tried use your toF as well, no luck. btw, i use camel 4.6. spring boot 3.2.10. i just guess the auto declare does not work in this version, maybe need to call the rabbitmq's administration tools to create queue and bing to exchange? could shed some lights on this problem? many thanx
Brilliant thank you
Excellent description with examples!
Way you explain is very simple ❤
Hi . My thread printing 2 times in log . What to do?
This Spring Boot Playlist has some amazing stuff which are not present anywhere. I am really hooked to this and will watch all your videos surely.
hi Sir very helpful video, currently stuck on a test case for a route with saga propagation set to .propagation(SagaPropagation.MANDATORY) and i couldn't find your test case for sagaRoute, is there any way you could help me out?
Thank you for your insightful presentation :)
lovely stuff. Please keep making more videos sir. Your way of teaching really thorough and simple. Please continue the good work..
Does it ever happened to you (or anyone else reading this comment), the necessity to debug inside a route containing a .split() block? Because I'm noticing I am not able in any way to get the debugger of my IntelliJ stop inside a process block which is placed inside that said split block. I am not even able to print a system out or a log and this is really weird because I am certain the code flow leading to an exception is happening in that point... Anyway thank u for the other useful tips
I want to understand below points, 1. Should functional microservice communicate to orchestrator? 2. Should orchestrator microservice communicate to functional microservice? 3. or both the ways? I want to build workflow system, where on form submission (available at stage 1) should start user's workflow journey. But I'm not sure where this initiation will happen.
In this design pattern, functional microservices are not aware of orchestrator. They just receive requests and act on them. It's the orchestrator's responsibility to control the workflow i.e. talk to various downstream services.
@@SagguUK Ok understood. Thank you :)
@@SagguUK So, my frontend will always call functional microservice endpoint and not orchestrator endpoint? Example, on saving lead form, frontend will call functional microservice which internally will call orchestration endpoint to check if correct stage is called and then it will save data for lead. please help me to understand this.
This playlist is a great help in learning Apache Camel, especially since there aren't that many decent examples online! Thank you!
Thanks a lot for this video.
thanks for nice content Saggu
Hi can you please upload video for xml route configuration
It's really confusing at the beginning. But you made it really really simple with the example. Good work Thanks you. 🎉❤
Thanks for video , it's simple and very good explanation
ur the freaking GOAT my guy
Great Explanation. Thanks for such an informative video.
Hi could you explain what is the difference between from and fromF?
This method is used when you want to construct the URI using a formatted string (similar to String.format() in Java). Example: fromF("file:%s?fileName=%s", "inputFolder", "test.txt") .to("log:received");
Can you create more videos on this please
Will try. Thanks
Nice..
very good video how to persistent current state in seda on reset camel enging seda continue from last state?
This component does not implement any kind of persistence or recovery if the JVM terminates while messages are yet to be processed. If you need persistence, reliability or distributed SEDA, try using JMS.
degrading service by reducing instances is also part of this ?
This is fair assumotion and we can consider service degradation when some of the load balanced instances are gone out of service.