THANK YOU SO MUCH. Pros: - Great hands on explanation - No fluff, just stuff Cons: - BG music - Sometimes the scrolling between IDEs is too fast (so unable to see which layer has what port number) - but managed to pause the find the info. Overall I enjoyed watching the full video. Better than some videos I have seen on pluralsight.com Keep up the good work buddy!!
You seriously deserve an like and subscribe. You teach the way it actually help to learn than just showing how one do it its more like how its must be done. Thanks for the great tutorial :)
Excellent !!! In fact resolving the errors (while running the server) due to incorrect port number, made the video revisit the configuration, which could have been missed out while watching :-). Excellent again !!!
Hi, great job, thanks! Some people talk about noisy music at background, but I personally think, it was calming and fitted well, so please, don't remove it)
GREAT tutorial!!! Very clear & well explained. (Like others said, background sound was a bit loud but I'm sure that can be fixed next time. One way to control that sound is to record the video without background, then add background sound during the video mixing so you can keep it on a separate audio channel & control its volume when needed)
This is an excellent resource Ajay. It's true the background music is a little disconcerting but if you just lower it without muting it I think it does help to concentrate the mind. It's a real find of a video. Inclusive of the resources you mention in the title, you cover start.spring.io, Java 8 streams and display a excellent working knowledge of Intellij. Thanks and well done.
Nice tutorial. If you can give the links for your other tutorials in the description, it would be easy to refer. I could not find a separate video from you on zuul proxy as you have mentioned in this tutorial.
Hi Tech Primer, let me complement you first by saying "both the videos you posted on Micro services were simply superb". I am an AWS Architect who is learning Spring Boot from your lectures. Can you help me in resolving few questions on a complex AWS architecture diagram? I am looking forward to integrating AWS API-Gateway REST services with Spring Boot.
Really very nice Tutorial. well explained, Thanks mate. For Eureka server, your 8080 port was in used not 8761. You don't need to change your port cause your 8080 was already in use taken by tomcat server by default, therefore, it was showing an error. Running Eureka server at 8761 will not work. it's tomcat which brings this server up. When you change the Tomcat server port it started running fine.
Hello Ajay, Thank you for wonderful tutorials. Explanation was very good with easy examples. At 4:16, you mentioned that you have prepared videos of what is Eureka and What is Zuul. I tried to find those videos, but didn't catch them. Can you please share link of those videos.
When you want to open a Maven project in IntelliJ, select the 'pom.xml' file and open it as a project. IntelliJ will automatically pickup that it's a Maven project. If you select just the folder, generally it won't recognise that it's a Maven project at first.
Hi Ajay, it appears a bit fuzzy to me the difference between SOA and microservices. But, as I understand, the main differences are that microservices are more fine-grained than SOA, and each microservice has an indipendent database layer. In this example, we have 2 microservices that are using the same database layer. So, isn't this going more towards SOA than real microservices, and what is the best approach? Thanks a lot for your great videos. Valentino
Hi Ajay Great tutorial! Specifically learned about the usage of Zuul - Netflix's JVM based router and server side load balancer. Also learned about client-side service discovery using Spring Cloud Netflix Eureka. By the way, the music you play in the background is pretty cool. Sets the mood to write code :) Can you share the name of the music? ;) Thanks!
Thank you Tariq. Glad to hear that. :) In this video the music is here: brokeforfree.bandcamp.com/track/day-bird Most of videos are from Joakim Karud (you can search in soundcloud.com for his tracks)
Really nice video. I watched both of them and liked them as well. good information is filled in less time along with Architecture diagram. One of the best videos to learn Spring boot concepts. -$
Thanks for the tutorial. Is there any tutorial shared by you to show the communication between microservices using eureka on kubernetes (any cloud). If yes please share the link.
@@TechPrimers Thanks for the reply. This tutorial is not including eureka server but the it is helpful in understanding the communication between microservices. I have seen a lot of examples where eureka is used and in eureka server we have to provide a url of eureka server in properties. I am trying to understand how that url part will be handled in kubernetes (cloud) because in local machine it is localhost but in kubernetes it should be pod url. Please share your thoughts. Thanks
Excellent explanation. I am trying to setup project based on above explanation. I get following error after setting up Hiberante The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_241] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_241] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_241] at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_241]
Hi Tech Primers, How would you secure your services ? Could you help me in understanding, what could be the good architecture to implement authentication and authorization in micro services, assuming application is both B2B and C2B.
Hi, Could you explain the reason for embedding zuul proxy in eureka server ? What is the strategy of running these two process in same service/instance ? Can i use this same strategy in production environment ? What type of discovery is this pattern ? Your architecture diagram look likes Server - Side Discovery but implementation looks like Client-Side discovery. Thanks in advance.
Hi @techprimers_admin, nice explanation, And also I was wondering what’s the software you use for your presentations where the images/text will get step by step instead of all at a time in ppt. One you used above during 1:58 where the boxes (components) are coming just like magical that too in single page.. thank you.
1. Can hosting a seperate DB service be optimised further ? I mean can we not create a jar of this service and ask the consuming services like quote mgmt service to use it as a maven dependency , we can save the network calls then . What do u think ?
Yes Nishanth, that's possible however the only downside to that is, if the database changes, then every consuming client app needs to upgrade the jar to latest version. It will work for small teams, May not work for bigger organizations since each team will have their own roadmap and priorities. Getting all of them insync will be challenging
@@TechPrimers ohh I see , then for bigger teams , your approach yes does outweigh the Maven approach . But this comes with a network overhead . Do we then employ here the following strategies to keep NFRs intact : 1. Scalability : service containerisation would do 2. Since db service will be called by the service for most of the operations for which user has to wait on the screen , we can use rsocket to keep a connection pooling for better response times ? I may be wrong in this point . 3. When deploying db-service , we deploy a new service instance and then de comission the old one ? Sorry if the queries are large . I am working in a small team hence not able to envision the requirements of a larger team .
Hi, Thanks for the hands on tutorial. Just one doubt. Don’t you think the database should associate with each micro services instead one common dB services for two micro services?
If so then how will it be different then the monolithic architecture where all the services is referring single database. If we follow the one you are saying, it will be monolithic service sooner than later. Isn't it?
Great Tutorial. Thanks a lot. Understood nicely. Though I have a question to ask. Can this be considered an architecture and procedure followed by real microservices projects development companies? Asking this because I'm working in spring boot projects in a company since last two years and looking for a job change with good hike. So after going thoroughly by these microservices tutorial can I call myself a Microservice developer as well? Please clear my doubts. Will be grateful to you.
Yes. This is an enterprise level Microservices architecture. This is while solving one specific problem. The are more design patterns and implementation details on providing a purely functional Micoservices development
Hi, I am getting Caused by: java.sql.SQLException: Unknown system variable 'tx_isolation' exception and not able to resolve. Need some help please. Thanks Jayasree
How in microservice architecture two services communicate each other ? and if any exception through one service which is dependent on other service how we will handle the exception ??
Hi , when I am converting DB service application as eureka client , every times it fails causing java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'. , hibernate session factory and related exception , whereas when i comment out the @Enable eureka client it starts working fine, I added the dependencies as mentioned and also tried changing the version of the spring-boot dependency
Let assume we have 30 microservices, so one instance of eureka server can not handle the all request. so we have to go for multiple instance of eureka server. my question is how to configure multiple instance of eureka server and how to register microservices with them?
Hi Ajay, when I start the stock-service I get the following message and the application fails to start Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Tomcat.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.tomcat.jdbc.pool.DataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active). For stock service we dont need to configure the database right? Request you to help me out here
⏱ Chapter Timestamps
====================
0:00 - Intro
0:46 - Architecture
8:36 - Creation of db-service
25:29 - Testing db-service
27:47 - Deletion feature in db-service
30:50 - Creation of stock-service
47:39 - Testing stock-service
52:15 - Creation of eureka-service
56:39 - Eureka Dashboard
57:34 - Enable Eureka in stock-service
59:31 - Enable Eureka in db-service
The best thing about the tutorial we can see what errors might come during setup, thank you techprimer to make such videos not readymade things.
great tutorial - wish there was no music..it is very distracting..Keep posting more
THANK YOU SO MUCH.
Pros:
- Great hands on explanation
- No fluff, just stuff
Cons:
- BG music
- Sometimes the scrolling between IDEs is too fast (so unable to see which layer has what port number) - but managed to pause the find the info.
Overall I enjoyed watching the full video. Better than some videos I have seen on pluralsight.com
Keep up the good work buddy!!
Wow. Excellent session which covers clearly what it is intended to. Kudos to tutor.
This is a wonderful technology channel.
Thank you. Glad its useful
You seriously deserve an like and subscribe. You teach the way it actually help to learn than just showing how one do it its more like how its must be done. Thanks for the great tutorial :)
I would say it's the best video with eureka and zuul implementation. Thanks :)
Thanks for the presentation. Its nice & to the point for someone who wants to quick start on Micro Services using Spring Boot.
Thank! This is the best in the open spaces of the site, the explanation is simple and clear Thank you!
Excellent !!!
In fact resolving the errors (while running the server) due to incorrect port number, made the video revisit the configuration, which could have been missed out while watching :-).
Excellent again !!!
Hi, great job, thanks!
Some people talk about noisy music at background, but I personally think, it was calming and fitted well, so please, don't remove it)
GREAT tutorial!!! Very clear & well explained.
(Like others said, background sound was a bit loud but I'm sure that can be fixed next time. One way to control that sound is to record the video without background, then add background sound during the video mixing so you can keep it on a separate audio channel & control its volume when needed)
NO issue.1st part Worked perfectly as shown. Currently running Spring Boot 2.0
sir can u share me database related to this project
Amazing video ..simply followed the steps and application worked perfectly . Also got the understanding of Netflix Eureka. Great tutorial!!
Thanks Surabhi. Glad that was helpful
sir do u have database regarding this project?
Best demo I have ever seen
This is an excellent resource Ajay. It's true the background music is a little disconcerting but if you just lower it without muting it I think it does help to concentrate the mind. It's a real find of a video. Inclusive of the resources you mention in the title, you cover start.spring.io, Java 8 streams and display a excellent working knowledge of Intellij. Thanks and well done.
Thanks mark. Yeah. all new videos don't have the music.
Awesome tutorial. Many thanks. Kindly keep the background music low when uploading more tutorials.
Neat and clean explanation. Thanks for the video.
Nice tutorial. If you can give the links for your other tutorials in the description, it would be easy to refer. I could not find a separate video from you on zuul proxy as you have mentioned in this tutorial.
Hi Tech Primer, let me complement you first by saying "both the videos you posted on Micro services were simply superb". I am an AWS Architect who is learning Spring Boot from your lectures. Can you help me in resolving few questions on a complex AWS architecture diagram? I am looking forward to integrating AWS API-Gateway REST services with Spring Boot.
Awesome ! So simple and fast :) keep rocking
Really very nice Tutorial. well explained, Thanks mate. For Eureka server, your 8080 port was in used not 8761. You don't need to change your port cause your 8080 was already in use taken by tomcat server by default, therefore, it was showing an error. Running Eureka server at 8761 will not work. it's tomcat which brings this server up. When you change the Tomcat server port it started running fine.
Good Job...Please add some advanced level videos on microservices covering Zipkin & hystrix.
sure wil do neeraj
Nice video ... Ajay..learnt lot of things in very less time.
superb tutorial .. n grt background music .. very helpful
Excellent tutorial
your explanation and presentation are awesome.
Very nicely explained.......Awesome :)
Thanks a lot
Excellent tutorial.
Easy to understand, you really deserve lot
Thanks
Hello Ajay, Thank you for wonderful tutorials. Explanation was very good with easy examples. At 4:16, you mentioned that you have prepared videos of what is Eureka and What is Zuul. I tried to find those videos, but didn't catch them. Can you please share link of those videos.
When you want to open a Maven project in IntelliJ, select the 'pom.xml' file and open it as a project. IntelliJ will automatically pickup that it's a Maven project. If you select just the folder, generally it won't recognise that it's a Maven project at first.
thanks for the tip Artemas
Such a nice tutorial. Thanks man
Very nice tutorial.. Thanks... waiting for upcoming videos..
You are awesome buddy. I really love the way you code. Especially Java8.
#MicroServices #Spring-Boot #Spring-Cloud #Java8
superb Tech Primers It's a very helpful video session thanks a lot to share this type of knowledge thanks again
Thanks Ramjeet
Hi Ajay, it appears a bit fuzzy to me the difference between SOA and microservices. But, as I understand, the main differences are that microservices are more fine-grained than SOA, and each microservice has an indipendent database layer. In this example, we have 2 microservices that are using the same database layer. So, isn't this going more towards SOA than real microservices, and what is the best approach? Thanks a lot for your great videos. Valentino
Superb tutorial and presentation!
Thanks Channu. Glad that was useful
Awesome video!! Once the microservice architecture is created, how would I implement Swagger for documenting the API endpoints?
you can check my video on swagger with spring boot and use it in this
Nice explanations, refreshed the concepts..
Hi Ajay
Great tutorial! Specifically learned about the usage of Zuul - Netflix's JVM based router and server side load balancer. Also learned about client-side service discovery using Spring Cloud Netflix Eureka. By the way, the music you play in the background is pretty cool. Sets the mood to write code :) Can you share the name of the music? ;) Thanks!
Thank you Tariq. Glad to hear that. :)
In this video the music is here: brokeforfree.bandcamp.com/track/day-bird
Most of videos are from Joakim Karud (you can search in soundcloud.com for his tracks)
Really nice video. I watched both of them and liked them as well. good information is filled in less time along with Architecture diagram. One of the best videos to learn Spring boot concepts.
-$
thanks sachin. Glad that was useful
Very nice and informative video. Keep it up
Can you do one video on sagas design pattern with Spring boot based code example? Thank you and much appreciated.
Thanks for the tutorial. Is there any tutorial shared by you to show the communication between microservices using eureka on kubernetes (any cloud). If yes please share the link.
Does this video suffice Deepak? - ruclips.net/video/icyHIjfgYRY/видео.html
@@TechPrimers Thanks for the reply. This tutorial is not including eureka server but the it is helpful in understanding the communication between microservices. I have seen a lot of examples where eureka is used and in eureka server we have to provide a url of eureka server in properties. I am trying to understand how that url part will be handled in kubernetes (cloud) because in local machine it is localhost but in kubernetes it should be pod url. Please share your thoughts. Thanks
You are a champion!!!
Please add 3rd episode of microservices video with hystrix and logging that will very helpful Mr. Champion behind tech primer
Sure nithin. Will do
Great channel! very use full
Good tutorial but remove background noise. Thanks a lot , that I understood basics of ms . Please upload next videos
Good tutorial but background is disturbing.
Background music u mean?? Cos I personally liked this dark background (developers obsession) ;-)
Infact the background music help reduce the monotonous work. i liked it.
Please repost but no background music. ? Thanks
Very nice video
Nice tutorials love to watch all your videos just one request can we expect Oauth 2 with microsevices
It takes a while to create microservices example. I do have a day job in a company, so finding it difficult to do everything.
Hey man, Thanks for the tutorial, very informative!!
Awesome keep up the good work
In the delete endpoint, quotesRepository.delete(quotes) does not work for me but quotesRepository.deleteInBatch(quotes) worked
Same here!
Excellent explanation. I am trying to setup project based on above explanation. I get following error after setting up Hiberante
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_241]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_241]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_241]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_241]
Nice tutorial!!! Good job
Hi this is very good video on Microservices can you please demo how we can deploy same project on container platforms like docker and kubernetes
Very interesting video as it shows consequently how the practive works very good. Is the source code for download somewhere?
Yes it's in the GitHub link in the description
Superb :)
Glad it was helpful 👍🏻
Can you share what do you use for your diagrams. I liked the software. Great channel. Love your tutorials
In this video, I had used Google Docs(Slides). I use a mixture of Xmind and Google Docs in my videos.
You can also use the start.spring.io from within Intellij so you dont have to go to the project to open it..!
Hi Tech Primers,
How would you secure your services ? Could you help me in understanding, what could be the good architecture to implement authentication and authorization in micro services, assuming application is both B2B and C2B.
Hi,
Could you explain the reason for embedding zuul proxy in eureka server ? What is the strategy of running these two process in same service/instance ? Can i use this same strategy in production environment ? What type of discovery is this pattern ? Your architecture diagram look likes Server - Side Discovery but implementation looks like Client-Side discovery. Thanks in advance.
Ajay, too good..Keep posting:)
Thank you Pritam. Glad that was useful!
Hi @techprimers_admin, nice explanation,
And also I was wondering what’s the software you use for your presentations where the images/text
will get step by step instead of all at a time in ppt. One you used above during 1:58 where the boxes (components) are coming just like magical that too in single page.. thank you.
I use Google Slides kishore. Yes its a mixture of component animations and slide transitions
Nice video tutorial but want to know how to implement spring security in microservice architecture? Can you please make video tutorial for that?
1. Can hosting a seperate DB service be optimised further ? I mean can we not create a jar of this service and ask the consuming services like quote mgmt service to use it as a maven dependency , we can save the network calls then . What do u think ?
Yes Nishanth, that's possible however the only downside to that is, if the database changes, then every consuming client app needs to upgrade the jar to latest version. It will work for small teams, May not work for bigger organizations since each team will have their own roadmap and priorities. Getting all of them insync will be challenging
@@TechPrimers ohh I see , then for bigger teams , your approach yes does outweigh the Maven approach . But this comes with a network overhead . Do we then employ here the following strategies to keep NFRs intact :
1. Scalability : service containerisation would do
2. Since db service will be called by the service for most of the operations for which user has to wait on the screen , we can use rsocket to keep a connection pooling for better response times ? I may be wrong in this point .
3. When deploying db-service , we deploy a new service instance and then de comission the old one ?
Sorry if the queries are large . I am working in a small team hence not able to envision the requirements of a larger team .
Great video!!!, Kudos to you
background sound is disturbing too much. good tutorial
Hi, please give the link to the video you mentioned "What is zuul" and "What is Eureka"
Nice tutorial
YOu mentioned about the video on Eureka and Zuul. Kindly, provide the link. WIth google getting many other
Nice , Please make some new project using kafka
Awesome thanks so much
Hi.. Can u pls add new video for adding throttling in Spring Cloud services solution project.
Really great tutorial. Thank you. Regards!
thank you mate. glad that was useful
Hi,
Thanks for the hands on tutorial. Just one doubt. Don’t you think the database should associate with each micro services instead one common dB services for two micro services?
That's upto us. These are principles and standards. It makes sense when each microservices are managed by a different team.
If so then how will it be different then the monolithic architecture where all the services is referring single database. If we follow the one you are saying, it will be monolithic service sooner than later. Isn't it?
really great tutorail, thx very much!
Best ever keep it up thanks
thanks swikar
Can you explain how to secure microservices with jwt and/or oauth2?
sure. will do kenny
Great Tutorial.
Thanks a lot. Understood nicely.
Though I have a question to ask.
Can this be considered an architecture and procedure followed by real microservices projects development companies? Asking this because I'm working in spring boot projects in a company since last two years and looking for a job change with good hike. So after going thoroughly by these microservices tutorial can I call myself a Microservice developer as well?
Please clear my doubts. Will be grateful to you.
Yes. This is an enterprise level Microservices architecture. This is while solving one specific problem. The are more design patterns and implementation details on providing a purely functional Micoservices development
Thanks a lot for the response. From now onward I'm your true follower.
Thank you very much.Please make a video on Docker.
hi Anil, you can check my video on Docker with Spring Boot.
At 29:28, how are you not getting a compilation time error for delete if delete() should only accept 1 Quote?
I solved the compilation error by writing the below code. quotes.stream()
.forEach(quote -> quotesRepository.delete(quote));
Hi Tech Primers, which component does the load balancing ? Service Registry or API Gateway ? thanks
It depends. Usually API Gateway does it in our case
Thank you so much my friend.
For same kind of implementation, my team is asking 2 Weeks :-( ... but you did within an hour :-)
hahaha. :)
If you charge only for an hour, there is not much money like how Doctors make in an hour...thats why 2 weeks...lol.
Hi please share URL for zuul and eureka as you mentioned in this video.
Awesome tutorial !!!
+Arvind Verma thank you Arvind
Hi, I am getting Caused by: java.sql.SQLException: Unknown system variable 'tx_isolation' exception and not able to resolve. Need some help please.
Thanks
Jayasree
How in microservice architecture two services communicate each other ? and if any exception through one service which is dependent on other service how we will handle the exception ??
Can you provide the link to learn about zuul? I tried searching it , but not able to find it…
Can you please give the next video's link?
Hi , when I am converting DB service application as eureka client , every times it fails causing java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'. , hibernate session factory and related exception , whereas when i comment out the @Enable eureka client it starts working fine,
I added the dependencies as mentioned and also tried changing the version of the spring-boot dependency
Let assume we have 30 microservices, so one instance of eureka server can not handle the all request. so we have to go for multiple instance of eureka server. my question is how to configure multiple instance of eureka server and how to register microservices with them?
Hi Ajay,
when I start the stock-service I get the following message and the application fails to start
Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Tomcat.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.tomcat.jdbc.pool.DataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
For stock service we dont need to configure the database right? Request you to help me out here
Too good. Just BG music keep low volume...
Whats your opinion on using netflix oss vs istio Envoy when it come to deploy this application on k8s ?
Impressive, u are really good in Spring. But it's far far away from CleanCoding principles. After 40 minutes I stil haven't seen any unit test.
very good tutorial, but the background music is horribly irritating
Nice videos really helpful