I am at 4:55:04 of the video and I learned so many things. Circuit Breaker Pattern, Flyway, OpenFeign, Swagger, Kafka and what not !! Lot of love, my friend 💕
@tasnimmeem11584 ай бұрын
Such quality content, that too for free? Unimaginable. I can't thank you enough. Not just techinal part, you cared enough to give us the context - unfathomable. God bless you
@jayaprasadviswanathan43785 ай бұрын
There is nothing like this under the sun. great work.
@vadimen1815 ай бұрын
just finished the 1 year old version of this project, with some research that one still works, thanks for the update
@thatcoderguy31595 ай бұрын
Hey, can you please recommend one over the other? I'm confused about which one to start.
@ProgrammingTechie5 ай бұрын
Why there is a confusion ? Start with the updated tutorial, I already mentioned in the comments that the old one is not update anymore.
@thatcoderguy31595 ай бұрын
@@ProgrammingTechie Thank you, I'll reply back when done :)
@medamineelyakhloufi69333 ай бұрын
@@thatcoderguy3159 are you done with the project ?
@xyz-123-abcl50 минут бұрын
is the code still up-to-date??
@mayankyadav66342 ай бұрын
Thank you so much for this tutorial! It’s easy to understand, simple to follow, and covers all the essential topics for free. I have a huge respect for your hard work.
@manikannan-w2v5 ай бұрын
Thank you so much. You covered everything I expected regarding the use of microservice architecture with different kinds of databases. Thanks a lot.
@adityaupadhyay32644 ай бұрын
Fantastic course! The part where you explained microservice communication and API gateways was incredibly insightful.
@akhilguptavibrantjava4 ай бұрын
A Gem of tutorial. Really appreciate you for your good work
@alfredochola59714 ай бұрын
wow. u r such a great teacher sir. keep it up. May God bless u
@amankumbhalwar2 ай бұрын
This video is very helpful. I am a 2023 graduate and I am depressed because I can't find a job. This video has given me hope that I can learn Spring and Spring Boot and get my first job.
@casavieira34437 күн бұрын
God bless you MAN, this is brutal!!
@sudeephegde-c2hАй бұрын
Hi Sai, excellent content , you have covered everything which is actually according to industry standard and production grade (logging, containerizing, kubernetes deployment, centralized logging and so on..) Just wanted to understand , why do we even need api gateway, we can infact define an ingress and define routing to different services via ingress instead of using api gateway (offcourse we have also implemented circuit breaker within api gateway which is required for production grade application, but api-gateway also increases the complexity from my point of view, this can also be implemented at ingress level by using advanced ingress contrller: NGNIX or Traefic etc...). By the way excellent content, :)....
@kasunnadeeshana691414 күн бұрын
good stuff. it's very useful video to learn everything related microservices from one video. .
@azadkaya-e1q4 ай бұрын
Thank you so much for this course.
@omerfarukulusoy50984 ай бұрын
What a lesson ! , Thanks for everything 🙏
@CookieShreds4 ай бұрын
Really great course which covers a lot of technologies and how they fit into the big picture! Of couse if it included more complex business logic it would be just too long, so this is for the best. Do you have any plans for the future? Dont want to sound rude/ungrateful but here are some ideas: -Something leveraging GraphQL or WebSockets would be great for APIs -Redis and ElasticSearch regarding data -AWS + cloud agnostic tools like Github Actions and Terraform.
@letstrysomethingnew48084 ай бұрын
Yes these are great topics. This would be helpful for us individuals who are starting their careers. Please, waiting for another great project like this.
@nithishkumarramasamy99854 ай бұрын
Will this Project is enough for to mention in my resume for 2years of experience in IT industry ? all session are great !!!!!!
@enzokenza78605 ай бұрын
Merci pour ce chef d'oeuvre
@davidmbaimbai4405 ай бұрын
The course is great
@jpmottin29 күн бұрын
Incredible ❤🎉
@DevTnJayАй бұрын
excellent tutorial thank you very much
@ujjawal-m9g3 ай бұрын
Awesome Project !!!
@huyvan92425 ай бұрын
Great course. Can you provide a roadmap for a java developer?😅😛
@user-nh9kr2kg8e5 ай бұрын
I have followed several courses on microservices and I have seen that they define a microservice with the name config-server to centralize the configuration of the other microservices and also define another microservice for eureka server. Could you explain me why you didn't make use of them? or in which cases they should be used and when not ? Thank you so much, I have learned a lot with this tutorial. Great work! 🥳
@ProgrammingTechie5 ай бұрын
Eureka Server and Config Server can be used when you are not using Kubernetes. But when you are using Kubernetes both those features are not useful anymore because Kubernetes provides us service discovery out if the box and also it supports centralized configuration through Config Maps. So there is no need to do that for our project.
@nithishkumarramasamy99854 ай бұрын
Sir Please make video for Kafka Separately - you lectures are awesome
@jelenvonkrmelec63054 ай бұрын
Thank for the course, it is really helpul. I noticed the code could be improved with these suggestions: 1) Make quantity non static: When placing the Order there is a check to Inventory how many items are available. But the quantity is not updated after placing that order so the Order could be placed indefinitely. Solution: Update that Inventory.Quantity using already existing kafka event "order-event" in Inventory Service listening for that event. 2) Make Quantity visible to user in Products UI: User does not know if the Product is available or not in the UI and can purchase not available product. Sulution: Duplicating the quantity to Product directly in the beginning using migration DB scripts (same quentity as in Inventory) and then updating that value by listening for the order-event also. What do you think? Thanks again for this course!
@ProgrammingTechie4 ай бұрын
Thanks for the valid suggestions, I wanted to only develop the application functionality that's bare minimum to explore the topics related to the tutorial. Of course there are lots of improvements we can do regarding the functionality.
@KeshavSingh-h6u5 ай бұрын
Hi, can you do one more thing? Can you create a lecture on database replication in a master-slave architecture?
@nadetdevfullstack70412 ай бұрын
Excellent
@othmanedarhoni28334 ай бұрын
I have a question about the error you encountered at 28:18. I changed the MongoDB URI in application.properties, but I'm still getting 'Authentication failed'
@nuranranawaka14513 ай бұрын
hi. I faced the same issue. 'docker logs mongodb' command shows access control is not enabled. So, it should work without the authorization credentials.
@nileshgautam77083 ай бұрын
@@nuranranawaka1451 hii, try this 1. docker compose down -v 2. delete the data folder from product-service 3. run docker compose up -d , it worked for me
@ASHISHCHOWDHARY-y2kАй бұрын
I'm facing the same issue. How did u fix the issue?
@ArKus9Ай бұрын
If you have MongoDB installed locally, change the following in your docker-compose.yml:ports:- "27018:27017" And update the property in your configuration: spring.data.mongodb.uri=mongodb://root:password@localhost:27018/product-service?authSource=admin
@arnabroy299512 күн бұрын
add ?authAdmin paramater and try
@KeshavSingh-r9d5 ай бұрын
can u create one video for database replication like in mysql we have master slave architecture
@amirem97444 ай бұрын
thanks for your responses. I cloned the angular project you implemented for front-end but in the header-component.html the @if and @else seem to be not recognised as the isAuthenticated method can not be called. The error is : Unterminated expansion form. If you have unescaped '{', use '{{ "{" }}' to escape it. which I think might be related to angular 17. if you know the issue, please let us know
@VeselinNikolaev-g7zАй бұрын
In the previous tutorial you used eureka discovery server, is it a good practice to use it in this project?
@girishanker37963 ай бұрын
Wow...All this for free🏆🥇💙Thank you
@kirankumarhm20043 ай бұрын
Great video, Can you explain the same example with jeager instead of zipkin. Also I am facing an error with security config with spring parent version 3.3.4
@kavitapatil95095 ай бұрын
can you please increase your ide font little bit
@nothing-ic9fz4 ай бұрын
thank you sir
@creatorjourney-k6d5 ай бұрын
i don't see any link to spring data mongodb course link, can someone please share the video link?
@himanshumaal14857 күн бұрын
Can you please provide the article for this part ?
@saranshvats38334 ай бұрын
Hey, I was trying to use modelmapper, but came to know that it requires a no args constructor and record does not provide that, what is the best alternative for this scenario or we have to map them manually all the time? Btw great content, loving it. THANK YOU ❤
@Phoenix-qw5sm13 сағат бұрын
Please provide blog link
@AlauddinTuhin-t7z4 ай бұрын
you have skipped lots of time, 5:23:06 how did you get the folder 'prometheus' inside docker folder?
@QuickCodeClips5 ай бұрын
Hi, Thanks for the making the video. Can we run manually all service on the dedicated port before we can start the testing on the frontend and what is the main use-case of the kind folder configurations?
@nunoaparicio44263 ай бұрын
2 questions: 1 - API gateway is the entry point for all microservices, so it's dealing with authentication. Should the other microservices also be secured and validate the token against the auth server? 2 - How to deal with userId's? Should we use keycloaks userId we get from the token and use like a foreign key in other service databases, like usually (eg: user courses/books/whatever)?
@ProgrammingTechie3 ай бұрын
1. Ideally yes, but in this setup I choose to not go with that option that would complicate the project a lot. 2. Yes that's right.
@girishanker37963 ай бұрын
@@ProgrammingTechie What if we use a service mesh?
@rishiraj25485 ай бұрын
Jabar thanks
@Asingh426 күн бұрын
Hello please let me know if I am already familiar with microservices Is it a good idea to learn kubernetes part from here??
@hieuvanchi20575 ай бұрын
In the future, can you do projects with reactjs frontend technology?
@unknown-wz7xt4 ай бұрын
Where is the code related to authentication and authorization ? where is the service and controller for the user ? I need to understand how this works in microservices when each user has access only to their products, orders, etc.
@NixonMoreno3 ай бұрын
Great course, but I have a question, is it possible to implement the gateway with the discovery server from the previous course ? Thank you very much !
@ProgrammingTechie3 ай бұрын
Yes, but it's not needed, service discovery is handled by Kubernetes
@virginvergilАй бұрын
i have a problem with the swagger ui, i get a whitelabel after adding springdoc and path to the app properties
@davidmbaimbai4405 ай бұрын
Would you mind adding card payment on the project
@sumithhh93794 ай бұрын
Getting this eoor in order service in postman 500 Internal Server Error tables are created in MySQL.
@dses66115 ай бұрын
if anyone had "No migrations found. Are your locations set up correctly? " issue, make sure to uncheck IDEA Tree Appearance -> Compact Middle Packages to differentiate db.migration and db/migration folder, db/migration is the correct folder structure we want
@vatsalsrivastava40014 ай бұрын
Hello just a quick question. Do i need to make Interface for every class like service,dto.etc and then make an implementation. I am going to use this project in my resume so kindly reply.
@ranaaditya79602 ай бұрын
Thank you so much for this tutorial! It was really helpful. I need assistance with my Angular project. I'm encountering a CORS error and a 401 status when calling the add product API within Angular, even though the same request works perfectly in Postman. Could anyone help me resolve this? I’m not very familiar with Angular.js. Thanks again for this wonderful tutorial !!
@sonhoanglevinh735218 күн бұрын
why in 28:14, when I run postman without username and password from mongodb it run ok but when I add it in mongodb uri it get 500 Internal server error
@sonhoanglevinh735218 күн бұрын
Am I suppose to keep it like before adding username and password in mongodb uri?
@sonhoanglevinh735217 күн бұрын
and in my version, in Inventory Service, the methol existsBySkuCodeAndQuantityIsGreaterThanEqual have to change to existsBySkuCodeAndQuantityGreaterThanEqual
@Vivekanand-co9lsАй бұрын
You had used Eureka for service-discovery in older version of this project. Why it is not used in newer one. Please Explain?
@darkjo4335Ай бұрын
Hello, because the deployment is on kubernetes now, and kubernetes provides a service discovery feature out of the box, and so it will be redundant to have also Eureka. I suggest to read some articles on client side discovery and server side discovery. Eureka is an client side discovery while kubernetes provides server side discovery with Service Object
@amirem97444 ай бұрын
could you please explain why in this video you defined route class for implementing API Gateway, but another video implement it via application properties? for which purpose each one is used?
@ProgrammingTechie4 ай бұрын
I am using Spring Cloud Gateway MVC in this video, there are some configurations missing in the MVC variant that's why I had to use the Java Config in this video. The previous tutorial I was using Spring Cloud Gateway that is based on Spring We flux, this project is more mature and provides all configuration through properties config.
@AlmustaphaTukurUmar4 ай бұрын
Hi, thank you so much for the course-it's been really helpful! 😊 However, I noticed that user details are being sent from the frontend instead of fetching the current user details at the service level. Is there a way to achieve that on the backend?
@ProgrammingTechie4 ай бұрын
You can use Id token instead of access tokens and then the user information will be available in the backend. You will have to forward the id token to order service and read the token details to accomplish this, that means you have to enable security in the services.
@godad18065 ай бұрын
Next time please zoom the ide, because it is less visible
@jelenvonkrmelec63055 ай бұрын
I love your tutorial, however for simplicity I suppose Product Service and Order Service are sharing same mysql databse which should be separated by microservices principles. Am I right? Thank you for our hard work!
@ProgrammingTechie5 ай бұрын
Hello, They are not sharing the same database, but the same cluster, so this is still fine for our sample application.
@jelenvonkrmelec63055 ай бұрын
@@ProgrammingTechie Thank you! I figured you can have the same instance of a database but have different database names, which is perfectly fine!
@samipdave15894 ай бұрын
Amazing project sir , have not seen such content on youtube with up to end explaination.. and thank you too for dockerize it and deploy it on k8s. Biggggg Salute to you 🙏🙏🙏🙏
@ShantanuSP4 ай бұрын
Can we have all 3 services in single repo?
@d33bo67Ай бұрын
hello, thank you for the content. any idea why I keep getting this error: [ERROR] Resolving expression: '${dockerPassword}': Detected the following recursive expression cycle in 'dockerPassword': [dockerPassword] @
@stranger-zt2ee3 ай бұрын
This course was really helpful
@alagaralagarrajАй бұрын
why do we add docker-compose file, then add docker file with same info to build docker image, and repeat the info for k8s on manifest folder? It seems repeat of information, any option to avoid it or am I missing something?
@ProgrammingTechieАй бұрын
You are confusing the responsibilities of docker file, docker compose and kubernetes, docker file contains set of instructions on how to build the image. Docker compose and kubernetes are used to run/orchestrate multiple docker containers
@abderrahmenhelaoui65112 ай бұрын
i can't connect to mongodb database with root, passwod credantials
@audreybetine97084 ай бұрын
hello, is distributed tracing implemented here
@revanthtalluri9194 ай бұрын
Can someone tell me how and where dbs are created while using this docker, idk much about docker things
@mendaxassange44653 ай бұрын
Wrong info. In openfeign when you are creating interface You have to match the signature of the controller where you are going to do the request
@JayShah_._._4 ай бұрын
Can we have a video where this is deployed somewhere ?
@mineshbhatiya49413 ай бұрын
I am deploying it on Azure VM, close to finishing it. Please check back in 1-2 days, I should be able to provide the guidance.
@kevinmugiira75174 ай бұрын
Great course however, next time could you please zoom in more and have the code more magnified. Squinting to see the code is quite hard.
@bruvhellnah5 ай бұрын
Hi. What are the prerequisites for this course? I just finished core java, do i need to know the basics of spring boot or would core java suffice? Thank you!
@ProgrammingTechie5 ай бұрын
You need to have good understanding of Spring Boot. Learn Spring Boot get some experience working with spring Boot, do some projects and start with the tutorial. The prerequisites are mentioned in the 1st 10 seconds of the video.
@csepradeepv68953 ай бұрын
i am getting this error when i try to start docker mysql --> Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0: listen tcp 0.0.0.0:3306: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted. PS C:\Users\codec\Documents\microservices-app\order-service>
@methildac37594 ай бұрын
Hi, i tried creating this project with spring latest version 3.3.3 as of now. and my build failed. any idea? PS: it worked with 3.2.9
@creatorjourney-k6d4 ай бұрын
how does Angular get the token without specifying the client secret from keycloak, where is the secret mentioned in angular app?
@ProgrammingTechie4 ай бұрын
It uses Authorization code PKCE to get the token, you can check my Spring Boot Keycloak video to learn more about it
@Krishnadevaraya15 ай бұрын
nice
@goodcourseavailable4 ай бұрын
🎉🎉🎉🎉🎉🎉🎉🎉 Please Stripe payment gateway integration in spring boot
@SurajKumar-l8d8y5 ай бұрын
Is this one the paid one that was about to be released ?
@ProgrammingTechie5 ай бұрын
No, the paid course will be a completely different course and has more topics covered
@SurajKumar-l8d8y5 ай бұрын
@@ProgrammingTechie when its coming out, its been 3 months no update
@hieuvanchi20575 ай бұрын
@@ProgrammingTechie I hope you will do the frontend technology which is reactjs, thank you very much for the course
@shindeajinkya25065 ай бұрын
what changes i need to make if i want to use React Js for front end , can you please suggest ? Thanks for the amazing course :)
@ProgrammingTechie5 ай бұрын
No Changes needed on the backend side, you need to port all the functionality of angular to Reactjs
@meet59705 ай бұрын
please help i dont understand how the services are protected with such security as shown in the video as only the gateway will be protected but if we use services port directly then there are not protected
@ProgrammingTechie5 ай бұрын
The services inside Kubernetes cannot be accessed from outside as they are using ClusterIP, so it's fine if we just secure the API gateway which is the entry point of the system. Securing each and every service can also be done but that will complicate the project without any additional learnings, that's why I chose to go with this approach
@maheshbabusurepalli6535 ай бұрын
@@ProgrammingTechie How to implement RBAC(Role based access control) if we delegate authentication and authorization to gateway?
@shashwatpandey64464 ай бұрын
can a person with no or little knowledge on the tech stack see this video and still learn all the process in detail??
@ProgrammingTechie4 ай бұрын
This is not a beginner level tutorial
@nithishkumarramasamy99855 ай бұрын
@ProgrammingTechie please tell why am i getting error for Product.builder()
@dankyt92494 ай бұрын
use @Builder annotation in Product model class
@sovanbanerjee70795 ай бұрын
First Comment 😊
@shreygarg7985Ай бұрын
can anybody pls clear one thing for me,i dont understand why we are not using autowire to inject dependencies and just using constructors?sorry i am a little new to spring boot and on other tutorials i have seen them using autowire.
@ProgrammingTechieАй бұрын
Constructor injection is a preferred way to inject the dependencies. It's hard to explain it in the comments now, I would suggest to Google this topic there are many great resources explaining this concept.
@ionguzun39525 ай бұрын
Is this a reupload??
@nithishkumarramasamy99855 ай бұрын
Someone please tell me am getting error while using @Builder and for that builder in service createProduct method Product product = Product.builder() error here it is not reconigsing am using Intelliji 2024 version
@syedfawzulazim1657Ай бұрын
pls go to the settings -> build -> compiler -> annotation processors -> select obtain processors from project classpath || this fixes the issue
@manoharbaisani41895 ай бұрын
Completed total 13 video s???
@ProgrammingTechie5 ай бұрын
Yes
@defrankline5 ай бұрын
am getting CORS issues for some reason. any help good people?
@dses66115 ай бұрын
Same here after clicked Add Product in the Add Product Page
@kishorekumarmenda71994 ай бұрын
Same here after registering with a new user? did you find the solution?
@r__2__r4 ай бұрын
Same issue. Have you solved?
@r__2__r4 ай бұрын
@@kishorekumarmenda7199, @dses6611 i've solved btw. still need a help?
@pavankumar-wh4ok7 күн бұрын
@@kishorekumarmenda7199 yes we need to add cors configuration in api gateway service under security config file.
@marcinmilczek52553 ай бұрын
Chaos, chaos, chaos...
@ProgrammingTechie2 ай бұрын
Alright :)
@xsamuelx3603Ай бұрын
: )
@Krishnadevaraya15 ай бұрын
bro teluga nuvvu
@ProgrammingTechie5 ай бұрын
avunu :)
@aditripathi83852 ай бұрын
Thank you sir
@KeshavSingh-h6u5 ай бұрын
Hi, can you do one more thing? Can you create a lecture on database replication in a master-slave architecture?
@neoflyboy4 ай бұрын
he is not your secretary. You don't even say thanks but you ask for more? You sound ungrateful and unprofessional.