High Availability Scaling with Share Nothing Architecture

Video thumbnail (Frame 0) Video thumbnail (Frame 449) Video thumbnail (Frame 1346) Video thumbnail (Frame 3598) Video thumbnail (Frame 4035) Video thumbnail (Frame 5880) Video thumbnail (Frame 6441) Video thumbnail (Frame 7309) Video thumbnail (Frame 8928) Video thumbnail (Frame 9593) Video thumbnail (Frame 10999) Video thumbnail (Frame 11621) Video thumbnail (Frame 12264) Video thumbnail (Frame 12869) Video thumbnail (Frame 13757) Video thumbnail (Frame 14981) Video thumbnail (Frame 15717) Video thumbnail (Frame 16394) Video thumbnail (Frame 16962) Video thumbnail (Frame 17799) Video thumbnail (Frame 18268) Video thumbnail (Frame 18756)
Video in TIB AV-Portal: High Availability Scaling with Share Nothing Architecture

Formal Metadata

High Availability Scaling with Share Nothing Architecture
Title of Series
Part Number
Number of Parts
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license.
Release Date

Content Metadata

Subject Area
John Kraal - High Availability Scaling with Share Nothing Architecture Scaling a project to a worldwide scale with the same performance and availability in every region using Python isn’t easy, but with the right mindset and tools it’s a very viable target. ----- We will discuss methods of delivering software, with automated scaling systems, building units out of your project to manage separately and how to reliably and securely distribute data to separate clusters, and how we have achieved this with the use of Celery, Redis, Databases, Protobuf and other modern tools, whilst making sure to highlight our pitfalls and successes
Word Arithmetic mean Computer animation Codec
Web page Server (computing) State of matter Surface Channel capacity Execution unit Cartesian coordinate system Flow separation Computer programming Independence (probability theory) Arithmetic mean Befehlsprozessor Process (computing) Flow separation Computer animation Software Read-only memory Semiconductor memory Personal digital assistant Befehlsprozessor Computer hardware Website MiniDisc Maß <Mathematik>
Point (geometry) State of matter Code Execution unit Projective plane State of matter Surgery Cartesian coordinate system Replication (computing) Flow separation Entire function Computer animation Architecture Maß <Mathematik>
Source code Functional (mathematics) Computer animation Code Cartesian coordinate system Entire function Task (computing)
Point (geometry) Source code Computer animation Software Multiplication sign Shared memory Energy level Website
Authentication Source code Server (computing) Functional (mathematics) Service (economics) State of matter Execution unit Source code Shared memory Database Cartesian coordinate system Goodness of fit Data management Computer animation Website
Computer animation Computer configuration Googol Electronic mailing list Shared memory Data warehouse Spacetime World Wide Web Consortium
Message passing Server (computing) Computer animation Term (mathematics) Building Shared memory Client (computing) Block (periodic table) Cartesian coordinate system Task (computing)
Message passing Computer animation Building Queue (abstract data type) Object (grammar) Block (periodic table)
Web page Message passing Computer animation Well-formed formula Building Bit Block (periodic table) Cartesian coordinate system Login Arithmetic progression
Computer animation Key (cryptography) Web page Login Database Queue (abstract data type) Process (computing) Cartesian coordinate system Message passing Template (C++)
Server (computing) Computer file Information Token ring Ferry Corsten Moment (mathematics) Cartesian coordinate system Web 2.0 Medical imaging Computer animation Personal digital assistant Operator (mathematics) Videoconferencing
Server (computing) Identifiability Cartesian coordinate system Revision control Web 2.0 Medical imaging Mixture model Type theory Computer animation Queue (abstract data type) Process (computing) Message passing Form (programming)
Computer animation Interpreter (computing) Shared memory Process (computing) Queue (abstract data type) Cartesian coordinate system Message passing
Metropolitan area network Web application Firewall (computing) Execution unit Formal language
Web 2.0 Process (computing) Computer animation Artificial neural network Sheaf (mathematics) Cuboid Right angle Instance (computer science) Computer programming Physical system
Code Scaling (geometry) View (database) Multiplication sign Execution unit Set (mathematics) Client (computing) Formal language Neuroinformatik Medical imaging Mathematics Different (Kate Ryan album) Semiconductor memory Single-precision floating-point format Series (mathematics) Physical system Thumbnail Structural load Multitier architecture Shared memory Sound effect Bit Cloud computing Entire function Connected space Data mining Category of being Message passing Data management Arithmetic mean Befehlsprozessor Vector space Architecture Resultant Point (geometry) Trail Server (computing) Game controller Functional (mathematics) Service (economics) Gene cluster Mass Student's t-test Number Product (business) Architecture Operator (mathematics) Computer hardware Business model Software testing Lie group Nichtlineares Gleichungssystem Form (programming) Standard deviation Dependent and independent variables Mathematical analysis Cartesian coordinate system Ellipse Word Uniform resource locator Computer animation Integrated development environment Video game Service-oriented architecture
itself but before we take off so I want to thank my employer binder for making enabled me to be here and talk about this you guys and yet so that nothing is 2 words what is it i in essence shared-nothing means nothing
more than during the resources so all you do is make sure that everything that you run once on its CPU memory of um notice any from that have and does that and that alone it became very large scale back in the day I think the 1st written thing about its 1983 which is smaller than I am but the good thing about it is that you can make separate units of programs so separated concerns in a way that anything you write does its own thing on its own hardware
and doesn't do anything else which is super useful also makes you are able to skill things independently so for example if you run a website you can deploy Euromicro in some way uh and if you get a lot of requests and for example just your external pages you the skill the servers often use the REST as this were to do a lot of processing in the back and you can scale that up and need 2 from the surface of the large also it's very resilient against outages a good example for this is for example the Netflix who made own kills monkey thing where several cases monkeys OK so if you seen if you're probably well aware of how it can cure your entire network in your entire application but not if correctly and then last but not least is loosely coupled so every little thing can die on its own and then it can be restarted and something will take 2 features over this more interesting notes had nothing doesn't mean you said the lots of things still and especially WebSphere if you have a lot applications you will be sharing states because people will be locked in the we authenticated will be in a certain state of of process workflows in your application will be
shared all of the entire thing and people don't generally do that in 1 request so uh devastated step you take it out and all further and further have an additional to that because you have all these separate units of things everything depends on each other in some way but
so why would you do shared-nothing issues reasoners as I said fault-tolerance anytime your replication has a problem you can with itself your entire architecture built to make sure that things can get back to where I was going to get back to a state where actually work and it's that's capable surgical skill independently and it leads to much more smaller and simpler applications very good example for this is that you that you can build an application that just does what it does local but but the best thing about smaller applications and it should probably well aware of well aware of this uh you can test them better began manage better you can review to cope better you can do anything you want with the code and you have uh and you can explain about other people so also if you have project I and people to work on it it's just much easier to to get to a certain point when you use and it does have some considerations you're going to be
simplifying the code basically make smaller simpler applications but if you're oversimplifying gonna make a problem larger so smaller
if you do crazy things like have an entire Python application make every function the summary task everything is going to be slow and falls because it's only
communicating over the network with your preference hoping to get an answer at some point and then all your share doing nothing else the communicate to each other so that's not a
good thing also need to know when you start if you just making a level like the WordPress website anything like that if you got separated things you're wasting a lot of time and you're not making anything more useful that really is all that we also require a lot of infrastructure but so
just having 1 server of those is what it is that you do you going all service you need something to measure traffic you don't need something to relay messages go and
something to do all the functions that you have and as I said before because they're simple units simple smaller units then you're gonna have yeah just always things to do their own thing and you cannot share the server of any other feature that you have so you're looking picture for for example can also be also the authentication if you do it in a long way the apart from that there still certain states we knew still require a source of truth it's an art databases are 1 of the origins of shared nothing but it's also it's accuse you your you'll be storing stuff in there and you will not be able to scale up in the same way she can do the application and then discuss the database is mostly a cash management of people but so where would you be using nothing I have 2 very good examples of shared-nothing nothing websites was
Google and pretty sure you all know what a list if you don't please raise your hand uh or binary which is very workable history and that means a skill it just means that we do a lot of things it's everywhere it's all over the world it's all working in cooperation with each other and assist space can also use the data warehousing is also an option might
produce share shot in your data I'm gonna skip that 1 would I want to this because this is where it all came from so what you need to build it's not just like this and
sharing of the 1st gonna just a traffic you're gonna get traffic from the clients who uses the need to get your application so this basically Eurobonds her or a new lecture that you have a 1 making tangible so go example for this usage when this gets the message is to passed on to the application server which we call the front applications and this this does nothing more than gets requests actually into pieces and the terms for itself what it wants to do and how they we need to do that because I'm running things anyway we use pyramid for this
the Ministry of somebody could also use PHP or no gesture so inclined or anything can go to into those kind of folks what it does the it makes new tasks and this destined to be executed and the only way to get that done is to consider the message to intercept so a
message queue and there's nothing more to get a message to somebody else for example you set it's not necessarily just salary we run it
on matters for example that you could also be deploying embedded and q or any other things and I hurt somebody so quite open RQ recently maybe it's going to have injected object and then in the end you you you end up with a all bunch of
serves on in the rear of your application status that emphasis is community anything that carried messages formula uh this is how reuse brightens things we use so we use Jaffa if you need you can so this is a bit abstract so
I'm going to give you some examples on how we do things but here is a login page this is our progress and it's fantastically
beautiful you cannot solve you don't need a lot to to generate a so this is a very simple thing and
the 2nd best the like this you only goes to ingest Africa go to the front and application that resides OK and that random this template impact on nothing else is needed obviously there is some back-end stuff going on storing your session key in database and things and making sure all that changed but yeah I'm just trying to keep it it simple I don't have a less simple example literally and
there was a picture of my daughter in buying and and this is a slightly more complex operations I mean we've all probably made some of
application layer but picture but In our case stored directly on enzyme free so what we do is a we have web server for token so that we can upload to as free then uh when we don't need tell the lecture for that and in that moment and decides that it needs to check if the files actually correct or if the file is actually an image and all the video or how would like to know for all the information that's in the exit data that's picture that's all back and processing so there we use the entire stack so in this case the
front-end application which all the background stuff please give me everything that form this image identify mixture is really an the inability or whatever uh when that's done asked the server to generate something
that generates about version generates any other type of image that we precedence and of course our applications and that's actually clicker web things but it is it is asynchronous because that's from
back processing domestic you don't go back to work and processing and go back to the front and applications in the end you get a fantastic picture of my daughter
and interpretation which is difficult to so yeah so what you end up with a new and and this is the official picture share with people is discrete architecture and
you could so kind of deep into Amazon and I remind me which preceded the entire stack is divided into a lot of things there's a lot of things going on and everything is separated the for example we used just a normal about Amazon to relay traffic ingestion then we do
some web application firewall languages also 1 unit during things that relates
traffic to the Web instances that does something and then there's a little are growing up to Mr. program and then all the way back are all our processing fees we've drumsticks boxes with this a lot more and then what is because we're pretty cool right so we do is always a to make a deployment for artificial that people In this section have to mention 1
approach of doing this kind of system presented that most people get a lot more Jenkins chopped into which they apparently like in interesting this so in the future so because scaling is
still think you need to do that said nothing remains extremely effective especially volatilization itself from Amazon for example Google for some OpenStack delivers its
super easy to deploy an entire shared nothing architecture anywhere in the world however there is a new thing coming up called service architecture where you can essentially do all things about any change used instead of deploying your servers your managing your own hardware or a little worried about CPU and memory you can just watch code that also limits under look founder because I like getting my fingers with some operations things so I stick which nothing however service architecture if you can get into this from something to check out this guy just 25 system in place but I'm actually it's less likely thanks I show to the point and very efficient I love at 1st question here you mentioned that use celeritas distributed tests that have to be there a how do you get rid of it and to have a single rooms and it's if so we've a serving requests leads me to mending connections to you may when you do something request you gotta wait for the results come back to that we try to avoid that can assist purely because when you're doing now you know you gotta make something blocking your entire stack that's not the most efficient way to get there so we try to do is we we tell the user OK it's coming and then the following the locations of calling it gets notification from the OK this is piece so you use ellipse of do use no accepted tourist a with to give domestic back at some point um but I mean I don't I don't really like having a connection to the server the combined in the 2nd side rather go for rumpling or of which were more questions yes out of the like much thanks for the old a maybe answer for the various question we are Bush wrote no Roman Bush had to communicate back with the with your client or something and then some idea and I have a question about along the broker-dealer useful setting I could you give me a that we look at things like but they different brokers so we are asking if found what kind of different brokers said right what are you using a long wire you using the local you using because my have very similar tactics of the mine in my brilliant my minds dealing with that right now again confirmed and not really sure use is because we like that is small and we already have it available anyway but there are other brokers said that make a little sense we're starting the skill of the I'd try to remove layers as much as I can but for example think of it you is very good to use if you want something with more control if you want to say more things to make application using it questions about the back and exciting and the question is usually a little bit more the contemplative stamps down even further back it gives you more of an opportunity to formulate an insightful or possibly stupid question this prices in way the front student to do OK question number 2 different prices and have so you have mentioned that the use muscle mass of that in a half you actually driving other cloud provider like people cloud or so yes it's right and it's really we're looking at getting interlopers OpenStack just for internal environments that far production stuff AWS is very useful to us art the strategic relationship with them something not going away from the uh but obviously we around the see what's going on and we use model provided that I'm not going to say to use services certain things from for example by vector you would keep those in the same equations production clusters so that were of just out of academic interest 0 we try to play around and see if we can deploy in modern things would have or any more questions find horrible they're not neccessarily and nice analysis away where where there is a property of every thank you so just again about salary and does a really what kind of guarantees does this provide a means and using exactly what added messages delivered and so executed exactly once a or at least once so what I don't know the gritty details of the light far from the standard when you just like given out of there at some point just signed off as well this to Marcus complete the fingers something etc. managers for you I would assume that that works don't to drop messages the is that the questions so I have 1 against some of the words so you know how you can give an option like like you don't have a three-tier architecture where you go 0 I don't want spend too much time doing loads of working my application server Mr. formal fragile to accelerate you and I can update the user when the bits ready you like 1 white why bother but why not so you know that means you can scale the application server and annual series of the separately within the day you still there do that computation so what are the real advantages of saying OK relevant having no free applications 727 reserve is 1 I just have 23 applications of as I can still do all the client-side kind of polling by using individual G I can I can upload my image 1 view I can resize in a different AJAX request I can request a thumbnail inefficient Ajax requests and westernization form and so the main answer among lies in the super applications of so when you go a smaller application is a lot less to check it's easy to verify it is used to test is used to deploy and the function that you don't just have 1 accepts responsibility in doing that what is to do if you say I'm gonna put everything in the application server units and you have a whole lot albeit with us separate tracks to getting there making sure that the code operational each other you cannot build changes in 1 system that will have no effect on the other that I think it makes life simpler if you if you just pull apart when ask the things I can say that they will never but there was also the more you that it was to continue his and and optimize the top so for example if you have to these you have be in the same application you will have to for example and you are used by them for everything you have to believe that the language that you you will actually change about them and say the silver so this is this lies within the interval of time and then this worth any questions rather than answers to questions from the floor any of what your brains everyone is all speaker placement always of time preparing for