Rethinking Microservices with Stateful Streams • Ben Stopford • GOTO 2017

แชร์
ฝัง

ความคิดเห็น • 25

  • @ratsock
    @ratsock 2 ปีที่แล้ว

    Is this basically a data mesh?

  • @lukaslukac8680
    @lukaslukac8680 7 ปีที่แล้ว +2

    Nice talk. From problem to current ways of solving it to a new different approach.

    • @stopfob
      @stopfob 7 ปีที่แล้ว

      Thanks

  • @MachielGroeneveld
    @MachielGroeneveld 7 ปีที่แล้ว +6

    Isn’t this sharing a database?

    • @stopfob
      @stopfob 7 ปีที่แล้ว +5

      Not quite. It's a shared distributed log, but with the processing (the database engine) embedded in each service. So you could think of it as a database per service, with all these databases sharing the same shared file system. It's a little different to this in practice as the services you build end up being more about reacting to events, but it's a closer analogy. So if I build a service that sends emails to customers after they make a payment, I would subscribe to the stream of payments, I would then create a table of Customer info inside my service using the KStreams API (both projections of the streams in Kafka), then I would join them together, pull out the fields I need, again all inside my service and send the email. So the coupling between services is very low (just the event distribution) but it's easy for any service to pull out the data it needs and do useful work on it.

    • @EricRini
      @EricRini 7 ปีที่แล้ว

      He addresses this concern at the 11:00 mark.

    • @xnoreq
      @xnoreq 5 ปีที่แล้ว

      Yes, it actually is.

  • @Miggleness
    @Miggleness 6 ปีที่แล้ว

    How to address agreement for a common data structure? How about addressing bugs that caused incorrect data to persist for months in the log. How's the performance?

  • @clarkd1955
    @clarkd1955 4 ปีที่แล้ว

    Do you actually build real world computer systems? Your overall points don’t seem very innovative but generally ok but your asides including the functional garbage are less than useful.

    • @mcscubin8935
      @mcscubin8935 2 ปีที่แล้ว

      He has built plenty. Check his LinkedIn.

    • @lepidoptera9337
      @lepidoptera9337 ปีที่แล้ว

      @@mcscubin8935 Not sure you want to follow this recipe, though.

  • @demostenedotro
    @demostenedotro 7 ปีที่แล้ว +4

    One piece of advice: stop moving around so much!

    • @stopfob
      @stopfob 7 ปีที่แล้ว

      Yes - noted!

    • @Mikey-fi8bb
      @Mikey-fi8bb 6 ปีที่แล้ว

      I though it was kind of neat seeing a speaker act natural for once. It seems like in every presentation every speaker tries to follow the same guidelines of how they are "supposed to" present without much personality or feeling of their own and in my opinion its both boring and unnecessary.

    • @mcscubin8935
      @mcscubin8935 2 ปีที่แล้ว +2

      @@stopfob It was a good presentation. Move how you like.

  • @mathiasdpunkt7461
    @mathiasdpunkt7461 7 ปีที่แล้ว +1

    Really interesting - thanks. Ben is there a sample application that showcase the principles you talked about?

    • @stopfob
      @stopfob 7 ปีที่แล้ว

      Yes! But give me a couple of weeks :)

    • @kapilgidwani
      @kapilgidwani 6 ปีที่แล้ว

      I am very interested in it. Talks are good but code and integration examples helps a lot. Thanks.

  • @LorenzoGiuliani
    @LorenzoGiuliani 7 ปีที่แล้ว +1

    In the end, the conclusion, the whole system is heavily resembling a Datomic like data store

    • @stopfob
      @stopfob 7 ปีที่แล้ว +2

      I think in fairness this is maybe half true. To me Datomic is more of a database. A streaming platform puts more emphasis on data in flight.

  • @ZILIANGdotME
    @ZILIANGdotME 7 ปีที่แล้ว +3

    Sounds like a promotion for Kafka

    • @stopfob
      @stopfob 7 ปีที่แล้ว +3

      Yes I guess it is. I actually spent five years working on this problem in a large company without Kafka. We essentially rolled our own, but life would have been a lot easier had we had it.

    • @ZILIANGdotME
      @ZILIANGdotME 7 ปีที่แล้ว

      Ben Stopford why didn’t you use Kafka?

    • @stopfob
      @stopfob 7 ปีที่แล้ว +3

      It didn't exist back then :)