In some cases I think it's very tough to keep services independent. Suppose two service are using a queue and queue has messages of certain types, unless both services know about the queues message model how would they operate? And when we introduce the message sharing between them the codebase for message model is shared. So whenever the message format is changed the services will need to be changed and re-deployed accordingly. Is there any way we can avoid this? Please suggest if it's possible.
There is no way to avoid this but you can make the transition smoother. Instead of involving breaking change always make a backward compatible change to the message format this way the services will not be required to be deployed at the same time. A good way for both services to agree upon a format is through a shared library/configuration. So never copy the format at two places, instead create a shared lib and put the format there. So then it is all boils down to version upgrade of the dependent library.
Nice , Informative Content , Keep doing it Please :)
Arre bahut acha content, and "what not" 😄
whre can we get the notes, that you are showing in the video for reference??
put in video yt summarizieer
I really like your recordings. Can you share how do you do recordings ? Do you use any recording software ?
In some cases I think it's very tough to keep services independent. Suppose two service are using a queue and queue has messages of certain types, unless both services know about the queues message model how would they operate? And when we introduce the message sharing between them the codebase for message model is shared. So whenever the message format is changed the services will need to be changed and re-deployed accordingly.
Is there any way we can avoid this? Please suggest if it's possible.
There is no way to avoid this but you can make the transition smoother. Instead of involving breaking change always make a backward compatible change to the message format this way the services will not be required to be deployed at the same time.
A good way for both services to agree upon a format is through a shared library/configuration. So never copy the format at two places, instead create a shared lib and put the format there. So then it is all boils down to version upgrade of the dependent library.
@@AsliEngineering Thanks for explaining that’s on the same lines I was expecting. Thanks for great videos too 😊
useful
By seeing this video I am really feeling like I am upskilling myself for interviewing a architecture level role 😁😁
Sahi hai 🙌 crude career acceleration 🤘
what is Cascading Failures?
First failed, because of which the second failed, and then the third, and fourth and so on. Falling one after the another like Dominos.
Read korth for cascading failures. Beautifully explained ❤️