need more of this stuff, I am trying to learn system design from so many sources including Gaurav Sen and Tech Dummies and some github repo's. This is by far the best explanation out there :) Please don't stop uploading more like designing systems from scratch.
Thanks for the appreciation Valery. It motivates us to do even better in the future. Keep learning and feel free to reach out incase of any feedback/queries 😀
To perform a PUT operation on a resource we need to give the entire data along with changes, while in PATCH payload containing the updated values will be enough. It would have been good if you have added this point
Hi, I would like to put some possible correction. Its my opinion, as I learned in organization. Being a stateless api does not mean treating all requests as same, or treating all clients as same. Rather, when we say api is stateless, it means it does not carry/bear/retain any state after serving a request. So, when different clients make same query, results will be consistent rather same (only will differ when data got modified in time between requests). But important is any request should not leave server into any state which would potentially affect following requests. For an example... lets suppose, the server does a job of adding two numbers. Now when suppose first request come, to add 99 + 1. And to do this, carry 1 will be generated and stored while computation. Now, server returns response 100, as expected. And here comes the part now, If server would have retained same carry 1, and did not reset it to 0, we should say, server ran into a new state. (Because before serving request, carry was 0, and after serving, now carry is 1.) This is called retaining a state.. So response for following requests might be inconsistent, might be wrong as well. If after responding the request, if carry would have been reset to 1, then we could say, server is now being in same state. Or, we can say api is stateless, as it did not make server to get into a new state. For this example, for sure one can say, implementing such api to carry state, is wrong. And which is even. But in corporate, sometimes to meet business needs, sometimes api are not written in stateless manner. But yeah, for sure, and ideally, a good developer always should tent to have api, being stateless.
Such an underrated channel. Very few people are there who have such deep knowledge of such important topics of software development. Thanks a lot ma'am.
Great explanation , but please use markers which are dark (this one seems to have run out of ink), you see while viewing it on mobile you have to really increase the brightness to a much greater extent just to see what you are writing. Also consider using different color markers , it adds to readability and makes it more fun. Great video , cheers
Of course your videos are hidden gems on system design and software engineering. Couldn't help notice the remarkable similarities between Shreya Ghoshal and your face. Have you been told this before or is it just me?
@@sudocode If it's Stateless then how it's cacheable ? It's not saving state i.e considering client & server different as they don't know each other then how browser is saving some cacheable details ?
Thank you for your dedication and efforts to make concepts simple, interesting and relatable. You teaching style is amazing. Please keep up the great work you are doing.
Mam nice teaching...I am joined as a backend developer node js..I am struggle to understand about server errors ..put separate video about types of server errors ...
The explanation and concept coverage is so good that I paused the video in between to comment and appreciate. Please keep up the good work! Resuming my video again now :D
I believe, stateless means... current request handled by server does not not depend on earlier requests handled. Each request handled on server is independent (stateless-> no dependency on previous one)
Small correction. Offset should be 20, not 21 in the next read request. If you offset the query by jumping over the first 20 results, you will naturally get the 21st result at index 0 in your next request. Offset of 21 would jump over the first 21 results, and give you result 22.
Thank you Yogita for making this video and explained very well .. thank you .. Please can you do video on API gate way , eureka server and distributed log management and ELK. Thank you in advance.
Hi there. This REST api session helps to understand the API and it’s design. For some integration usecase with AD, we are planning to use a “Cornerstone APIs” to handle a scenarios like create, update and delete user. Can you share your thoughts on designing these APIs? Would really helps.
Thanks for the excellent tutorial. I have a question regarding request rate limit. In order to apply throttling the server needs to know about the client, does this not violate the stateless principle?
Can you please make video for Asynchronous and Multi threading. What happens to singleton object in case of multithreading and What is the solution for dead lock situation. Really would be helpful if you could make on these topics
Definitely need a new pen 😂. Other then that I'm really excited to have found this channel and this Playlist. It's definitely a great content! Thanks for this
Would be great if the video is subtitled. Viewers like me can rewind back easily to recall/check what some acronyms/jargons represents (Like URI for me) if there is subtitle/transcript, or when the writing on the board was not so clear. All in all, no means to be ungrateful to your kind sharing. Just a suggestion for some of your videos.
We decide this on the basis of our use case. I suggest you get a basic idea of different types here. medium.com/api-university/architectural-styles-for-apis-soap-rest-and-rpc-9f040aa270fa
Thanks for the video. As rest does not save the state of the client, how does it find out how many times a client fired a request for rate limiting @sudoCode ?
Ma'am, when did the concept of APIs come into existence and for what reason? APIs are basically http methods (GET,POST, etc..), which have been there since their inception. Basically what I am trying to understand is, what was the difference before and after introduction of APIs? Do correct, if I am wrong somewhere.
Thanks for the awesome video!!! I have question about REST, how stateless and cacheable can be included at same time because if we are storing data(cacheable) then we should not be stateless and vice versa. Thanks again for such great videos 🙂
We are updating the database, so why are we using the UPDATE HTTP method. Our system updates user data after a form submission through a POST request ?
I wanted to understand can Api with rate limiting can be called stateless and therefore Rest api since server/application know how many request are fired within any time frame.
If it's Stateless then how it's cacheable ? It's not saving state i.e considering client & server different as they don't know each other then how browser is saving some cacheable details ?
Hi sudocode what i expect with this playlist ..... Full system design ..... ??? I mean my main topics are Distributed system Scaling Cap theorem Messaging queus Microsevices yes ofcourse SOAP VS REST Hope you know wht my expectation ... So is this a right place i visit otherwise please suggest me better .... 🤗🤗 you tubers like you who teach free courses i bet you guide me better for this ...
Yes Mohit. Covering the main topics of system design is the main goal of teaching this course. We just released a video on REST APIs last week. Also, message queues would be coming on coming Monday 10 am. Moreover you can find a list of the topics to be coveted in the description of this video. 🤟👍
I had one question: by authentication and rate-limiting, etc. aren't we storing the state? i.e. if I'm using some API, that API has a limit of 1000 requests per hour. isn't it against the REST guidelines?
mam you have recommended us to read an OS three easy pices book can you make chapter wise summary I am not good reader. Thanks in advance soon you will achive 10k
Thanks Sajal. Why don't you come up with it. 😉 Give it a try. 😀 Hint: Think of a case where you can perform CRUD operations on something related to real life.
need more of this stuff, I am trying to learn system design from so many sources including Gaurav Sen and Tech Dummies and some github repo's. This is by far the best explanation out there :) Please don't stop uploading more like designing systems from scratch.
Thanks for the appreciation Valery. It motivates us to do even better in the future. Keep learning and feel free to reach out incase of any feedback/queries 😀
@@sudocode Can you do a separate series on design patterns it will sky rocket your subscribers.
@@valerysalov8208 Yes design patterns in java would be great
@@Gamer_with_knowledge design patterns in Javascript would be great
Design pattern Videos please!!!
Learning this for my System Design interview! Thank you for explaining this clearly!
To perform a PUT operation on a resource we need to give the entire data along with changes, while in PATCH payload containing the updated values will be enough.
It would have been good if you have added this point
point taken!
Hi, I would like to put some possible correction. Its my opinion, as I learned in organization. Being a stateless api does not mean treating all requests as same, or treating all clients as same. Rather, when we say api is stateless, it means it does not carry/bear/retain any state after serving a request. So, when different clients make same query, results will be consistent rather same (only will differ when data got modified in time between requests). But important is any request should not leave server into any state which would potentially affect following requests.
For an example... lets suppose, the server does a job of adding two numbers. Now when suppose first request come, to add 99 + 1.
And to do this, carry 1 will be generated and stored while computation. Now, server returns response 100, as expected. And here comes the part now,
If server would have retained same carry 1, and did not reset it to 0, we should say, server ran into a new state. (Because before serving request, carry was 0, and after serving, now carry is 1.) This is called retaining a state.. So response for following requests might be inconsistent, might be wrong as well.
If after responding the request, if carry would have been reset to 1, then we could say, server is now being in same state. Or, we can say api is stateless, as it did not make server to get into a new state.
For this example, for sure one can say, implementing such api to carry state, is wrong. And which is even. But in corporate, sometimes to meet business needs, sometimes api are not written in stateless manner. But yeah, for sure, and ideally, a good developer always should tent to have api, being stateless.
Here we are talking about representational state transfer and not stateful or stateless apis. May be our wires got crossed wrong.
Such an underrated channel. Very few people are there who have such deep knowledge of such important topics of software development.
Thanks a lot ma'am.
Much appreciated! May be share with a lot of peers and friends to spread the word.
This playlist is invaluable!
Best playlist on System Design in TH-cam!
Thanks for being so thorough and clear explanation! You are a great teacher!
I am glad you find it so useful. Do share in your network :)
I have never seen like you explain such terrific topic of Rest api with clean and understandable manner thank you a lot
Great explanation , but please use markers which are dark (this one seems to have run out of ink), you see while viewing it on mobile you have to really increase the brightness to a much greater extent just to see what you are writing. Also consider using different color markers , it adds to readability and makes it more fun.
Great video , cheers
Of course your videos are hidden gems on system design and software engineering. Couldn't help notice the remarkable similarities between Shreya Ghoshal and your face. Have you been told this before or is it just me?
Haha. Got this one or two times before. Thanks for appreciating the content.
Finally I understood this concept in a clear and concise way!! Keep going :)
Thanks Anik.
@@sudocode If it's Stateless then how it's cacheable ?
It's not saving state i.e considering client & server different as they don't know each other then how browser is saving some cacheable details ?
I'm amazed at your teaching skills. So great!
Have been looking for this kind of an explanatory video since long! Can't thank you enough for such an incredible content! More power to you!
Finally I understood REST, Thank you so much!
Very informative, concrete info both theoretical and practical, to the point. Thanks a lot.
Thank you for your dedication and efforts to make concepts simple, interesting and relatable. You teaching style is amazing. Please keep up the great work you are doing.
Mam nice teaching...I am joined as a backend developer node js..I am struggle to understand about server errors ..put separate video about types of server errors ...
The explanation and concept coverage is so good that I paused the video in between to comment and appreciate. Please keep up the good work! Resuming my video again now :D
This is the video i was looking for, which has everything covered from basic, keep up the good work!!
Very good explanation in simple terms. Kudos!!! . Thanks a lot
Teachers in my college loves you.
Now concept is crystal clear , thanks for this wonderful System Design series.
Amazing video! Perfect! Thank you so much. I learned a lot.
Thank you Yogita for covering the REST API's in such simple terms. Your examples are very easy to understand.
I am glad it was useful.
I believe, stateless means... current request handled by server does not not depend on earlier requests handled. Each request handled on server is independent (stateless-> no dependency on previous one)
Exactly. You got it right 👍
Your presentation and coverage in videos is good, specially animations added in videos. Thanks !!!
Thanks. Means a lot to our team 😅
Another expectional video, thanks!! :)
please make a video series on AWS. Much needed for Backend developers and system admins
Small correction.
Offset should be 20, not 21 in the next read request.
If you offset the query by jumping over the first 20 results, you will naturally get the 21st result at index 0 in your next request. Offset of 21 would jump over the first 21 results, and give you result 22.
Hello sis, you explain it clearly and make understand in ease.
please add this video as part of your Rest API series
Awesome, very very impressive and clarity to explain technical terms...
Thank you, very clear and easy for understanding
i didnt understand what is state clearly.but a very good video.i watch most of the videos.! thank you
I agree - this explanation was a bit rushed.
Just Awesome, Keep it up good work Thanks a lot
Very informative video. Thank you.
Great help with ur videos.. amazing tutoring. If I ever had to make a humble suggestion it's only that whiteboard marker.. :)
Thank you Yogita for making this video and explained very well .. thank you .. Please can you do video on API gate way , eureka server and distributed log management and ELK. Thank you in advance.
Finally understood the concept. 🤩
Thank you for the videos!
The path vs. query params section wasn't clear; it sounded like they are synonyms, but they are not.
Hi there. This REST api session helps to understand the API and it’s design. For some integration usecase with AD, we are planning to use a “Cornerstone APIs” to handle a scenarios like create, update and delete user. Can you share your thoughts on designing these APIs? Would really helps.
thanks a lot Yogitha, good explaination
Thanks for the excellent tutorial. I have a question regarding request rate limit. In order to apply throttling the server needs to know about the client, does this not violate the stateless principle?
Great Video
Kindly make a video about GraphQL
Another great one, thanks so much.
Really appreciated these. i was looking for these explanations ... thanks alot
Glad it was helpful!
Would it be possible to do a video on apim policies? Thanks
Can you please make video for Asynchronous and Multi threading. What happens to singleton object in case of multithreading and What is the solution for dead lock situation. Really would be helpful if you could make on these topics
You have helped me like anything! Keep it up Yogita !
Thanks Sukanya. Much appreciated 😅
Thanks 😊
Now waiting for the next one begins!!
Hi mam,your lectures are good and lot of insightful. I wish to see some practical hands-on, it would be much more clear
Thanks Subash. We will try to do hands on session in the future. To get more you can join our slack channel. Link is in the description ☺️
Definitely need a new pen 😂. Other then that I'm really excited to have found this channel and this Playlist. It's definitely a great content!
Thanks for this
Superb content!!
Would be great if the video is subtitled. Viewers like me can rewind back easily to recall/check what some acronyms/jargons represents (Like URI for me) if there is subtitle/transcript, or when the writing on the board was not so clear.
All in all, no means to be ungrateful to your kind sharing. Just a suggestion for some of your videos.
Really helpful I love you
need more info on security stuff
Thank you
so are you planning to upload more courses like this??
Yes Manpreet we do have a plan for it. 🤟
@sudoCode While designing API how do we decide which API needs to be of type REST and some other ?
We decide this on the basis of our use
case. I suggest you get a basic idea of different types here. medium.com/api-university/architectural-styles-for-apis-soap-rest-and-rpc-9f040aa270fa
Active-Active vs. Active-Passive High-Availability Clustering, cloud you a make video on this topics with real-time example Yogita
Will try!
Thanks for the video. As rest does not save the state of the client, how does it find out how many times a client fired a request for rate limiting @sudoCode ?
GOLD content
Just one thing status code 100 for switching protocol
Please upload a video on SDK and Load balancer
Ma'am,
when did the concept of APIs come into existence and for what reason? APIs are basically http methods (GET,POST, etc..), which have been there since their inception. Basically what I am trying to understand is, what was the difference before and after introduction of APIs?
Do correct, if I am wrong somewhere.
Great vids! How can we join the Slack Channel?
Thanks a lot for the video
Such a nice video damn
Thank you 🌹
thank you very much
For a system design interview, is distributed systems knowledge also required?
Please drop your response. Thank you
Thanks for the awesome video!!!
I have question about REST, how stateless and cacheable can be included at same time because if we are storing data(cacheable) then we should not be stateless and vice versa. Thanks again for such great videos 🙂
Fabulous !
Are message broker /event broker and jms provider same??
Pls cover Oauth
We are updating the database, so why are we using the UPDATE HTTP method. Our system updates user data after a form submission through a POST request ?
Isn't rate limiting / throttling against `Statelessness` ?
Thanks for the awesome videos!
I have one question, how we decide when to use query parameters and when to use path parameter while designing APIs?
please try to use more dark marker
I wanted to understand can Api with rate limiting can be called stateless and therefore Rest api since server/application know how many request are fired within any time frame.
Great content I think instead using white board u should prefer digital stuff to explain your content.
Thanks
If it's Stateless then how it's cacheable ?
It's not saving state i.e considering client & server different as they don't know each other then how browser is saving some cacheable details ?
Hi sudocode what i expect with this playlist ..... Full system design ..... ??? I mean my main topics are
Distributed system
Scaling
Cap theorem
Messaging queus
Microsevices yes ofcourse SOAP VS REST
Hope you know wht my expectation ... So is this a right place i visit otherwise please suggest me better .... 🤗🤗 you tubers like you who teach free courses i bet you guide me better for this ...
Yes Mohit. Covering the main topics of system design is the main goal of teaching this course. We just released a video on REST APIs last week. Also, message queues would be coming on coming Monday 10 am. Moreover you can find a list of the topics to be coveted in the description of this video. 🤟👍
Please make some videos on kubernetes with spring boot apps
Will try!
just wow
I had one question: by authentication and rate-limiting, etc. aren't we storing the state? i.e. if I'm using some API, that API has a limit of 1000 requests per hour. isn't it against the REST guidelines?
Rest Api is a kind of web service rigth?
mam you have recommended us to read an OS three easy pices book can you make chapter wise summary I am not good reader. Thanks in advance soon you will achive 10k
If rest API is stateless then how caching is implemented,becaause if server not save state or transaction then how known what to cache
What is difference between REST and Restful?
kindly use a little darker marker
that is really awesome
also can you give me some examples like you give bookstore , so that i can try to design apis on it.
Thanks Sajal. Why don't you come up with it. 😉 Give it a try. 😀
Hint: Think of a case where you can perform CRUD operations on something related to real life.
HATEOAS also could have covered
Can you explain Security Authorization Error Handling again that was not clear
Little late to comment. Still I would like to thank you for sharing knowledge.
So nice of you
Same work could done with POST which GET can do. What is the actual difference between them?
A video on same coming up soon.
plZ do practical
how to join slack community ????
Where is the quiz?
tagline - REST is a guideline not http