Saggu
Saggu
  • 54
  • 343 743
NATS with Apache Camel | Choreography design pattern| Event Driven Service
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 systems. It ensures fast and reliable message delivery with minimal overhead, making it a popular choice for modern cloud applications.
NATS can be considered a message broker. It allows communication between different components of a distributed system by routing messages between publishers and subscribers. However, it distinguishes itself from traditional message brokers by its lightweight design, simplicity, and high performance, making it particularly well-suited for cloud-native and microservices architectures.
Code: github.com/jssaggu/camel-tutorial/
#NATS #ApacheCamel #java #springboot
มุมมอง: 355

วีดีโอ

ToxiProxy Tutorial | Chaos Testing Part-2
มุมมอง 5137 หลายเดือนก่อน
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?
มุมมอง 1K7 หลายเดือนก่อน
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
มุมมอง 2.7K9 หลายเดือนก่อน
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
มุมมอง 1K9 หลายเดือนก่อน
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.2K11 หลายเดือนก่อน
How to build Apache Camel Standalone applications without Spring framework
What is Consumer Driven Contract (CDC)? How to use Spring Cloud Contract Testing?
มุมมอง 2.7K11 หลายเดือนก่อน
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?
มุมมอง 2.9Kปีที่แล้ว
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.1Kปีที่แล้ว
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
มุมมอง 979ปีที่แล้ว
"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
มุมมอง 1.9Kปีที่แล้ว
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
มุมมอง 941ปีที่แล้ว
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
มุมมอง 670ปีที่แล้ว
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.1Kปีที่แล้ว
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
มุมมอง 2.8Kปีที่แล้ว
What is a Circuit Breaker design pattern and how to implement Circuit Breaker design pattern using Apache Camel.
Sring Boot Admin - A Complete Hands-On Tutorial
มุมมอง 8Kปีที่แล้ว
Sring Boot Admin - A Complete Hands-On Tutorial
How to use Apache Camel Bean Component? Full hands on workshop.
มุมมอง 3.1Kปีที่แล้ว
How to use Apache Camel Bean Component? Full hands on workshop.
Choreography Design Pattern | Distributed Transaction Management| MicroService Design Patterns
มุมมอง 7Kปีที่แล้ว
Choreography Design Pattern | Distributed Transaction Management| MicroService Design Patterns
Orchestration Design Pattern | Distributed Transaction Management| MicroService Design Patterns
มุมมอง 18Kปีที่แล้ว
Orchestration Design Pattern | Distributed Transaction Management| MicroService Design Patterns
SAGA Distributed Transactions Pattern using Apache Camel | Microservices Design Pattern
มุมมอง 4.2Kปีที่แล้ว
SAGA Distributed Transactions Pattern using Apache Camel | Microservices Design Pattern
How to provide typeahead support for SpringBoot Configuration properties?
มุมมอง 4652 ปีที่แล้ว
How to provide typeahead support for SpringBoot Configuration properties?
How to automate database migration? Database migration using Flyway Tutorial.
มุมมอง 8K2 ปีที่แล้ว
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.4K2 ปีที่แล้ว
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?
มุมมอง 5K2 ปีที่แล้ว
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?
Apache Camel Tutorial for Beginners
มุมมอง 21K2 ปีที่แล้ว
Apache Camel Tutorial for Beginners
How to use Spring Cache with Hazelcast?
มุมมอง 16K2 ปีที่แล้ว
How to use Spring Cache with Hazelcast?
How to automate Integration Testing for a SpringBoot and Camel application? What is TestContainers?
มุมมอง 3.1K2 ปีที่แล้ว
How to automate Integration Testing for a SpringBoot and Camel application? What is TestContainers?
How to use Camel JMS and connect to ActiveMQ?
มุมมอง 5K2 ปีที่แล้ว
How to use Camel JMS and connect to ActiveMQ?
How to implement Content based Routing EIP in Apache Camel ?
มุมมอง 3.1K2 ปีที่แล้ว
How to implement Content based Routing EIP in Apache Camel ?

ความคิดเห็น

  • @ScoobyDoo-ct9nd
    @ScoobyDoo-ct9nd 4 ชั่วโมงที่ผ่านมา

    it's really great video but i did not see that any config change so how spring boot is connecting to redis without specifying external redis which is running on docker, u need to sepecify url or some configuration right?

  • @Sebastian-zs8cp
    @Sebastian-zs8cp 11 วันที่ผ่านมา

    hi, is it possible to fulfill with dummy data only on dev and not for prod?

  • @yousfialaa7043
    @yousfialaa7043 11 วันที่ผ่านมา

    Thannnnnnnnnnnnnnnnnnnnnnnnnk You

  • @ianwanjala8621
    @ianwanjala8621 12 วันที่ผ่านมา

    share github code

  • @dhineshs6210
    @dhineshs6210 12 วันที่ผ่านมา

    Excellent

  • @gagyboki799
    @gagyboki799 12 วันที่ผ่านมา

    Hi Saggu, I like your videos. Tell me how can we orchestrate execution of multiple RouteBuilders in certain order or let say if one RoutBuilder fails or message is not as expected we jump over some RourBuilders?

  • @kirannani4044
    @kirannani4044 18 วันที่ผ่านมา

    great video, expecting more videos like this. Thank you so much

  • @user-bb4xt1ku2u
    @user-bb4xt1ku2u 21 วันที่ผ่านมา

    Great information, if possible can you make a route on TCP protocol, like from(tcp:..).to(http:...)

  • @davidfornazier
    @davidfornazier 26 วันที่ผ่านมา

    Im very impressive with the power that JBang gives me to deal with my routes, its mindblowing! Thx Claus and Saggu!

  • @rmkulanthaivelu
    @rmkulanthaivelu หลายเดือนก่อน

    Hi Saggu, I saw many videos which you have explained. It's good. I was working with you in Master Card from Apexon.

  • @weetalic6167
    @weetalic6167 หลายเดือนก่อน

    48 C for New Delhi... I cannot even imagine how hot it is

  • @DeepRaj-pj7nn
    @DeepRaj-pj7nn หลายเดือนก่อน

    Hi @Saggu. Nice explanation. You have covered the transactions in a single microservice. How can we achieve this across microservices? Also for InMemorySagaService you did, Could you please elaborate on LRA Saga Service or have some code repo to share. I woudl appreciate your reply on this. Thanks.

  • @Maxim-B
    @Maxim-B หลายเดือนก่อน

    In Camel 4.4. spring-rabbitmq component producer .to(spring-rabbitmq:) will not automatically create queue and binding regarless of autoDeclare settings. Either create it manually in UI or create then in CamelConfiguration

  • @sidjain8651
    @sidjain8651 หลายเดือนก่อน

    Great Tutorial

  • @ashwinkumar504
    @ashwinkumar504 หลายเดือนก่อน

    Good one keep it up

  • @bCool-sl5cy
    @bCool-sl5cy หลายเดือนก่อน

    Hello Saggu, In the new version of Apache Camel, a very important until here lacking feature has been introduced: variables. But working with an old version: do you agree with me, that the registry may be used to save a variable? Let's suppose that we have a parameteised route:("CTL-ROUTE-%S") which starts an equivalent, equally parameteised, route: ("DATA-ROUTE-%S") In the logs we will get for example: CTL-ROUTE-CUSTOMER: started CTL-ROUTE-ORDER: started DATA-ROUTE-CUSTOMER: disabled DATA-ROUTE-ORDER: disabled and than the CTL-ROUTE-CUSTOMER find out that there is 1200 rows in the table CUSTOMER and therefore starts the equivalent DATA-ROUTE-CUSTOMER The latter route will than poll the 1200 rows from the CUSTOMER table in 100 blocks maps them and send them to a predefined jms-queue. Ist it possible to use here a variable customerBlockNumber with an initial value of 1 and to save it in the registry? This variable will be incremented by each iteration, sothat we can log the following messages: .log("Processing Block-Nr. {}", customerBlockNumber) // this is pseudo-code.

  • @realknowledge-23
    @realknowledge-23 หลายเดือนก่อน

    very well explained thanks a lot and all the very best sir.

  • @realknowledge-23
    @realknowledge-23 หลายเดือนก่อน

    In very short period of time you explained each and every concept very well thanks a lot sir.

  • @dsdivya
    @dsdivya 2 หลายเดือนก่อน

    in the failed event, again event will be published to same topic or different topic, can you pls clarify.

  • @AshishThakre-xx6mc
    @AshishThakre-xx6mc 2 หลายเดือนก่อน

    Hi, Can I get your email address Have a few questions, on liquibase.

  • @shahinrajaei1666
    @shahinrajaei1666 2 หลายเดือนก่อน

    awsome thanks alot

  • @venkatramanab7387
    @venkatramanab7387 2 หลายเดือนก่อน

    could you please share the code

  • @patmac4230
    @patmac4230 2 หลายเดือนก่อน

    This is a great explanation !!!

  • @sensi7593
    @sensi7593 2 หลายเดือนก่อน

    It's pronounced "S'k'eduler" not SHEduler

    • @SagguUK
      @SagguUK 2 หลายเดือนก่อน

      In the US but It’s latter in British English :)

  • @srikarkini8336
    @srikarkini8336 3 หลายเดือนก่อน

    very nicely explained as usual without unnecessary jiggory pockerry!! this is just about sufficient to understand the logic and apply the knowledge in real life coding. Pls keep up the good work. 👍

  • @user-pi8ri1nk5t
    @user-pi8ri1nk5t 3 หลายเดือนก่อน

    fantastic sir.

  • @user-mj1ej7vq6b
    @user-mj1ej7vq6b 3 หลายเดือนก่อน

    That was a really good video. Everything was like you need just this video to get things clear...

  • @Vedic-knowlege-seeker
    @Vedic-knowlege-seeker 3 หลายเดือนก่อน

    Thanks a lot, explained very well, subscribed :)

  • @knmurthy1
    @knmurthy1 3 หลายเดือนก่อน

    Very well explained, thanks for your efforts

  • @knmurthy1
    @knmurthy1 3 หลายเดือนก่อน

    Wonderful explanation.

  • @vaibhavgarg4267
    @vaibhavgarg4267 3 หลายเดือนก่อน

    amazing explanation

  • @jovangrgur3266
    @jovangrgur3266 3 หลายเดือนก่อน

    Great explanation of Saga pattern

  • @yashwanthavula2222
    @yashwanthavula2222 3 หลายเดือนก่อน

    How does spring application connect to redis cache without even configuring connection in application.yml?

    • @SagguUK
      @SagguUK 3 หลายเดือนก่อน

      It’s using the default configuration details.

  • @solomononaiwu5199
    @solomononaiwu5199 3 หลายเดือนก่อน

    Clear and easy to follow

  • @bCool-sl5cy
    @bCool-sl5cy 4 หลายเดือนก่อน

    Thank you Saggu!

  • @prithvirajpatil7388
    @prithvirajpatil7388 4 หลายเดือนก่อน

    Great in detail explaination ✨

  • @prakhar16
    @prakhar16 4 หลายเดือนก่อน

    Very helpful. Thanks sir!

  • @nooruddinraotiwala353
    @nooruddinraotiwala353 4 หลายเดือนก่อน

    Zordar video couldnt have been more better!👌👌👌

  • @Moonspark-ob4fo
    @Moonspark-ob4fo 4 หลายเดือนก่อน

    What are the dependencies used for seda?

    • @SagguUK
      @SagguUK 4 หลายเดือนก่อน

      When using seda with Spring Boot make sure to use the following Maven dependency to have support for auto configuration: <dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-seda-starter</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>

  • @silvestrustate2835
    @silvestrustate2835 4 หลายเดือนก่อน

    where can i get the full code?

    • @SagguUK
      @SagguUK 4 หลายเดือนก่อน

      github.com/jssaggu/camel-tutorial/

  • @onnoschmidt2859
    @onnoschmidt2859 4 หลายเดือนก่อน

    Is it also possible to consume different related messages from different endpoint's which slight different message format and have completion on the second message arrived?

    • @SagguUK
      @SagguUK 4 หลายเดือนก่อน

      Yes, you can aggregate messages from different endpoints with slightly different message formats. The Aggregate EIP allows you to combine multiple related messages into a single message based on certain criteria, such as a correlation identifier. This example will help you to understand: from("direct:endpoint1") .process(new Preprocessor1()) .to("direct:aggregate"); from("direct:endpoint2") .process(new Preprocessor2()) .to("direct:aggregate"); from("direct:aggregate") .aggregate(constant(true), new MyAggregationStrategy()) .completionSize(2) // Wait for the arrival of 2 messages .to("direct:result"); from("direct:result") .process(new ResultProcessor()); // Process the aggregated message

  • @onnoschmidt2859
    @onnoschmidt2859 4 หลายเดือนก่อน

    I really like how you present. Apache Camel is not new to me but your videos are food for thought and I really like that. Already have a few use cases I want to try.

    • @SagguUK
      @SagguUK 4 หลายเดือนก่อน

      Glad you like them!

  • @joseluisbernalzambrano8906
    @joseluisbernalzambrano8906 4 หลายเดือนก่อน

    Thank you, your explanation was clear about how this works. Do you mind telling me how to implement this tests using Spring Security with secured microservice with JWT for example.

  • @escapecs9498
    @escapecs9498 4 หลายเดือนก่อน

    By using the Spring annotations and application.properties does that not make it integrated with spring? Just a question

  • @prabhuofficial6072
    @prabhuofficial6072 4 หลายเดือนก่อน

    Hi , can you please tell me what is API orchestration with simple example.

  • @suraj7440
    @suraj7440 4 หลายเดือนก่อน

    very clear explaination ,please upload more video on spring boot

  • @rajneeshraikwar8352
    @rajneeshraikwar8352 4 หลายเดือนก่อน

    Saggu ji please make more videos on java technologies

  • @rajneeshraikwar8352
    @rajneeshraikwar8352 4 หลายเดือนก่อน

    The main thing I didn't get sleepy while watching your video and second thing is its mindboggling explanation

    • @SagguUK
      @SagguUK 4 หลายเดือนก่อน

      LOL. Thanks.

  • @ShivamVerma-ut6nk
    @ShivamVerma-ut6nk 5 หลายเดือนก่อน

    What a nice intro !! loved it.

  • @saranthoughts9826
    @saranthoughts9826 5 หลายเดือนก่อน

    great explanations