КОМЕНТАРІ
@gideonyeboahasante8886
@gideonyeboahasante8886 16 годин тому
Awesome presentation
@zhehou844
@zhehou844 22 години тому
This is good, but of course, very briefly.
@sun-ship
@sun-ship 4 дні тому
Very clear
@PavanSibal
@PavanSibal 8 днів тому
Nice tutorial. Thanks
@manson1900
@manson1900 10 днів тому
nice presentation Alexandra! it is just bit annoying this "cccyy" sound as coma ;-)
@sELFhATINGiNDIAN
@sELFhATINGiNDIAN 11 днів тому
Robbish
@eliasalvest.i.646
@eliasalvest.i.646 12 днів тому
Willem, your content is very good, can you please create an application using OAuth2 with quarkus, creating an autohorization token application and the ResourceServer... I would like to see an implementation like this step by step. Thanks for the content
@flesz_
@flesz_ 13 днів тому
500 euro for an entry ticket to a conference , what a joke
@shashanksharma8254
@shashanksharma8254 26 днів тому
This is how to make complex things Simple enough.
@FantomX932
@FantomX932 27 днів тому
Seriously, few “bright “ C++ devs can make this in 2 years.
@FantomX932
@FantomX932 27 днів тому
Sorry, but don’t talk much here about C++ if you don’t know it
@FantomX932
@FantomX932 27 днів тому
This Java sucks which is there problem really
@jayglass9504
@jayglass9504 Місяць тому
Great presentation Willem, thank you!
@samlee4490
@samlee4490 Місяць тому
tough crowd
@methical__
@methical__ Місяць тому
Great talk, thanks!
@AntropomorficznaPersonifikacja
@AntropomorficznaPersonifikacja Місяць тому
aaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaa aaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaaaaaa aaa aaaaa aaaaaaa
@a_guy_called_Jerry
@a_guy_called_Jerry Місяць тому
hard audience it is
@tanertasim3637
@tanertasim3637 2 місяці тому
This presentation is just gold!! Very clean and precise explanations! Thanks!
@Eliecerhdz
@Eliecerhdz 2 місяці тому
Could anyone provide the URL for the repo please?
@ChrisChris-ch8gc
@ChrisChris-ch8gc 2 місяці тому
that constant water drinking disgusts me, it's really hard to watch it
@VasuNori1
@VasuNori1 3 місяці тому
this talk can be condensed to 10 min. too much random stuff.. isn't the audience mostly engineers? or a bunch of know-nothing newbies?
@smilebig3884
@smilebig3884 3 місяці тому
How is this dude running company when he doesnt even know how to talk…
@seNick7
@seNick7 3 місяці тому
Highlights 4:21 Enterprise dependency graph (to know what depends on what) 6:29 code review before commit ❤ 7:50 automatic dependency validation (dependers, check if your change will break clients of your app/lib) 11:39 every commit can be a release candidate to PROD (real CD - continous delivery) 16:00 every new feature is hidden behind a feature flag 19:00 continous delivery 3x3 (max 3 hours from commit to prod and 3x releases per day). Fight with flaky tests (quarantine). Make tests fast. 24:10 All testing happens before commit lands in master branch. 24:50 Q/A section 31:55 pre-commit code review q/a. Feature branches are not encuraged, but they have a dedicated tool for code review. Review should be in minutes. You can do it in pair Programming or Live, but the tool needs to be used to log the fact. 33:00 testing microservices 41:30 how dependency graph is built (file on repo keep the metadata)
@TheRedbeardster
@TheRedbeardster 3 місяці тому
T-shirt really rocks!
@user-hg1ut5ku4s
@user-hg1ut5ku4s 3 місяці тому
The Lean Startup | Methodology | validated learning
@angstrom1058
@angstrom1058 4 місяці тому
Funny how all that "hot tech" obsoleted in 6 years.
@logantcooper6
@logantcooper6 2 місяці тому
Cassandra and Kafka? You're kidding right?
@angstrom1058
@angstrom1058 4 місяці тому
Topic based messaging is incredibly limiting. There are much better ways to do it.
@vishnudeo1981
@vishnudeo1981 4 місяці тому
Great presentation...lot of learning
@seNick7
@seNick7 4 місяці тому
It's hard to judge this presentation. A lot of important concepts were shown, but in a manner that could be hard to understand for people who don't already know them. Also many layers of tests were shown but it wasn't stated which ones are redundant (e.g. that the initial unit tests in London style don't really test anything useful and are just noise that will make refactoring hard).
@JosiahWarren
@JosiahWarren 4 місяці тому
I was so tired throughout the presentattion and learned nothing new. Congrats🫤
@nikonovitch
@nikonovitch 4 місяці тому
"apage unnecessary complexity" - it's funny author found it appropriate to word the sentence that way given the meaning :)
@mixfaa
@mixfaa 4 місяці тому
wtf how to understand
@arivan-amin
@arivan-amin 4 місяці тому
Thank you for your great explanation
@bfg5244
@bfg5244 4 місяці тому
Father of twins ;)
@seNick7
@seNick7 4 місяці тому
Pre-commit Code Review - superb idea
@hughpearse
@hughpearse 4 місяці тому
Summary at 40:27
@seNick7
@seNick7 4 місяці тому
This guy is a walking book. This and his other talks are the very best resources on microservices out there!
@AntonArhipov
@AntonArhipov 4 місяці тому
nice talk!
@seNick7
@seNick7 4 місяці тому
Events Ordering - a missing solution would be the easiest one: put all events that require ordering into the same partition. If you partition by userId all events from that user will be ordered.
@azemabakit4137
@azemabakit4137 5 місяців тому
This man is really cool!!!
@iambstha
@iambstha 5 місяців тому
Great for beginners. Sebastian is a GOAT.
@petevenuti7355
@petevenuti7355 5 місяців тому
Are there any smaller cluster setup that can run a single instance of a single application that's way to large for a single average system? Basically an SSI like kerigrid but more current, something with distributed memory that can handle software meant for extreme high end servers but using a group of ordinary systems. Specific for situations where you can't do redevelopment of the software to taylor it for message passing or other programming techniques to use parallel hardware.
@sandrodelacruz8125
@sandrodelacruz8125 6 місяців тому
Absolutely excellent!
@digitalspecter
@digitalspecter 6 місяців тому
43:47 I'm sorry but I don't think you answered that question really. That sounded like an answer that tried to not raise any heckles but got lost in the process. I'll give you some of the benefits of Haskell over Java (not an exhaustive list in any sense): it is better at domain modeling with types because of the more expressive type system and less ceremony. It prevents certain classes of bugs pretty much entirely because it's almost impossible to have shared mutable state, there are no nulls, compiler checks for exhaustiveness etc. Also, pure functions are much easier to test than methods that rely on a state.
@dervism
@dervism 6 місяців тому
Thank you for the informative feedback @digitalspecter! I do mention some of the benefits throughout my presentation (such as exhaustiveness, lack of side-effects etc), but you're completely right that I should have mentioned them again in my answer in the end.
@user-sg5qk6wy3p
@user-sg5qk6wy3p 6 місяців тому
Given the event log is the system of record, and lets say we want the customer's address updated in the user service. Does that mean we have to fetch the current version of the user from the event log? Seems challenging and requires specific technologies. Alternatively you'll use the DB in the user service. By doing that, the DB has effectively become the system of record, right?
@KirBirger
@KirBirger 7 місяців тому
Thanks for this. There's a shortage of honest content out there that doesn't simply evangelize concepts and approaches.
@sergeykichuk2586
@sergeykichuk2586 7 місяців тому
What you described it is not Event Driven Architecture! Correct me if I'm wrong but what you described here as reference architecture with event logs and database as views is more like Event sourcing and CQRS where source of true is your events!
@sarwanhakm7517
@sarwanhakm7517 2 місяці тому
@sergeykichuk2586 this is the bigger picture described as Event-Driven Architecture, ES and CQRS are definitely in play here but he simply avoids explaining them. ES here is when materializing/projecting user data into shipping and CQRS is obvious, the requests.
@user-nq3eu5uf7b
@user-nq3eu5uf7b 7 місяців тому
first 15 minutes can be easily skipped if heard of Saga pattern
@mastermindful1051
@mastermindful1051 7 місяців тому
very well presented, amazing!
@simonk1844
@simonk1844 7 місяців тому
Some great advice here. I do have a few minor issues.. We should never set "microservices" as a goal - instead the architecture should be an outcome of addressing business problems. Is the organisation bottlenecked on development rate? Is the org software stack too unstable? Does the existing software not scale sufficiently? In some circumstances, splitting larger codebases and larger databases into smaller pieces can be the correct solution for these problems - but there are other choices to consider. Stating that "multiple domains should be different services" is putting a principle ahead of addressing the problem; there's nothing inherently good in 1-domain-to-one-deployable; that's just a possible solution to a set of specific issues. Development bottlenecks with larger code-bases can sometimes be resoved with modularity, ie a single deployable unit consisting of multiple modules (each representing a bounded context), with appropriate isolation at code and data level, but communicating via in-process calls rather than network requests. Or in other words, having multiple domains in a single codebase is not necessarily a "disintegrator". The scalability of coarse-grained services ("monoliths") is often underestimated. This presentation seems to suggest that fine-grained services ("microservices") are the only solution. However there is a lot that can be done to scale coarse-grained components; for example the same binary artifact can be deployed in pools to serve different kinds of traffic. The development-time view (one codebase) doesn't need to match the runtime view (one service). Or in other words, different scalability requirements for different domains isn't necessarily a "disintegrator". At 18:30 the presentation looks at inter-service coupling via shared data, and suggests two options: direct DB sharing or API-based communication. There is a third option: data replication (eg CQRS with event-carried-state-transfer). In addition, the "combine services" option (while valid) doesn't mean direct sharing of DB tables between domains is a good idea. I don't see the major issue of synchronous dependencies being performance (blocking for responses). A client can always issue such requests using some kind of non-blocking approach (async/await, Java's new virtual threads, etc). I see the major issues as (a) coupling of development processes via an API (b) instability (always needing appropriate fallback behaviour) (c) debuggability, (d) as mentioned, coupling of scalability between the services, (e) security - more APIs mean more points that need securing. Yes, performance is one issue but there are so many more reasons to minimise synchronous interactions between services.