Merken

Site Availability is for Everybody

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
there was the the good and the all welcome to my keynote I some ideas all cotton and I also may be destroyed my voice a little bit last nite average area of the so I'm probably and drinking a little more water than usual so I decided to completely rip off this like gimmick that my friend will lead in her talk on Wednesday and basically any time that I take a sip of water I would like for you to just like cheer and go crazy so i'm and instead of a in practice this uh yes you know what to do in the pool so
reserve real interactive the findings are not real this CIA hands on there's an area of the phone rings in the middle the nite the site is down every single person on your engineering team is is out of cell range or the real stuff is just you so read if you feel like you know exactly what to do or where to start OK sorry couple of veterans in this idea right so close your eyes please I can't I can't prove you're doing this but so that nobody else can judge you try again to raise your hand if you feel like you know what to do where to start OK everybody's very honest and science are modeled as the by the end of this talk of people who raised their hands I will get some ideas for how to share with the team and people who might not be as comfortable I ways that they can understand sidling and for the rest of you that and you'll find ways to get comfortable yourselves I'm so 1 of the big challenges with say availability is that often ages catches us off-guard solely every day we my practice refactoring testing aside outage can happen for a lot of like really random reasons and so this
randomness is like a little scary I'm at the server telling my scary story that's lie 2015 I'm working as a Ruby developer at a company called Indiegogo it's to crowdfunding website I mean it's a it's were basically people come to find things that matter to them and we have a lot of successful campaigns we had Australian beekeeping campaign arrays like 12 million dollars I only a campaign finally super troopers to an end in July 2015 news breaks the Greece is the 1st developed country in the entire world to fail to make an IMF loan repayment and through a strange course of events this action manages to take down our entire what's at and it's in the middle the main California In Europe the waking up they hear this news and also this incredible news story about this like really great british guy who just had this wild scheme where he's going in the Greek financial crisis and he decides that he wants to help 3 people up so he launches a
1 . 6 billion Euro campaign to bail out the country of groups and that sounds like everybody in Europe there is in 3 Euro they're finding the ball Belgrade's and starts building and people are contributing they'd really small amounts of money at superhigh rates and eventually then you go website goes completely down and it doesn't fully recover and so we put a static page of front to handle the load and for me this is just so unlike my day-to-day coding deploying evenly triaging investing 500 and not on a so I
pretty unprepared and I was free afraid and I don't have the words like I have been more prepared for this let's also is a
way that you can programmatically simulate many users making simultaneous requests your website In axes sort the low stress simulator really high stress situations you can play around build your confidence and you can come come up with your own site availability playbook before your disasters occur and as an added benefit you can also identify some bottlenecks in your application that could be dangerous in the future I may you also measure performance benefits of changes that you make along the way which is really important and that load testing is that when I started because I don't I don't come from a Dev Ops background and just regular reviews I a lot of like higher level instruction negate commands history to cuff blood tests and there is a lot of like really technical instruction about sigh performance but there was a lot of a lot of instruction had bridge those 2 things so the laws like trial and error frustrated googling I so I just to share a couple things with you in this talk was an ragged started load testing and how you can turn up the volume on your load testing to really to really had to really add to load to your site and then to use just a couple tools to explore that it the results the get yeah the that there must so we get started terrific things by
preparing a load testing tool I am going to talk about the tool are Apache bench because it's free solemn many Linux boxes in this is a really simple tool to get started with so this is
the command that started a B for Apache bench and is really like all you need to kick off your 1st lab tests so break it down so a little bit further so you would choose an endpoint 1st to extend the simulated traffic to an to start a good at that idea is actually a simple static page that doesn't make any database calls it's just a way to get a baseline I may want to really confident that your load testing tool is like actually configure correctly useless search using pages that will bear the brunt of track so for example indiegogo our actual him campaigning pages like on home page is not is not where the track is going go but for your site could be the home page a could be something else and you can start by testing local hosts if is complain around but the test itself is a resource and it can be consumed by your computer and because it using computer resources it can take away available resources for your web server and it's just that it can really impactor results especially as the load starts to increase so on the flipside running a load test against production website can impact your user experience or even bring down your website so it's best to point to stating server or production server that doesn't host any external traffic unless like specifically looking to do like stress testing on your production system but if you just turn like investigate don't point your website and because like at least 1 person Lily was thinking and I'm technically you're only some the greatest the at the I so in that same Apache bench
command we saw earlier on and you want to figure the traffic that you're really used to simulate tasks and to finish up his basic
command you need to provide I 2 things 1 is the number of requests that you want to execute concurrently which is the C and the total number of requests over the life of the load tests and that's the end flag and so for here like we're starting with the concurrency 1 and enough request the system will get a time to warm up is that's important and so it is basically means low execute 1 concurrent requests a thousand total times and usually make sure that you're able to run the low test for a few minutes and D divided terms a little bit when I talk about requests at what is a single request in this scenario of of it actually doesn't mean a single visitor to your website which typically I'm depending on the number of assets that your pages loading or asynchronous Kleiner requests that you're at the front and application is going gas from your server your single unique visitor can actually make a lot of requests in 1 visit and then on the other side I'm browser caching of asset actually means that a return visitor might make even fewer request and a new that's and there's another thing to keep in mind which is that Apache bench server-side benchmarking tools won't actually render HTML or execute script so the latency times you're seeing here are just going to be a part of the user experience is going to be like the very baseline so there's gonna be more delay users on top of us so the look edges of an
example of an Apache bench output the I'm here's a snapshot of full
results animals better and the and make we can see that Apache bench will show us the percentage of requests serve within a certain amount of time so when you and the initial results you want validate that this latency they're seeing just matches the Lindsay you would expect from a request in real life so low testing is kind of black box it such start plugging in random numbers in use only understand your system you can really really amazing results in is like have site is amazing and it's actually not real I each 1 make sure you have like a hypothesis for how you expect the system to perform so you only have any numbers around how your production server performs and if they just give you a ballpark offer your expected request time so for example if you like look at the line it says 99th percentile latency if this is saying that 99 per cent of that 1 thousand results that we were a request that we made were certain less than 693 ms and if you have a graph from your production response times and you're able to see that 99 percentile initially like 650 you're probably track but if you're seeing like 100 ms you should be investigating issue a testing set and a really common issue and that would cause you see like really good results in load testing and should results in production I mean is that you're testing out an error page especially you using a seating server for your load testing and for example basic cost and you're gonna need to actually add that to your Apache bench command with the flag I because otherwise you just testing how well your server returns of 400 I'm another common issue is hitting a 500 page or redirects I'm patchy bench 1 actually follow through those redirects so it'll just logic for you as a non 200 requests and the easiest way to your to cellular testing error pages is to look at your patent out but it's gonna show you non 200 requests and if that number is already 0 even without significant load on your site you're probably running into 1 of these issues and so the tail your server logs while you're actually running a low test you should see the server logging issues the you might have been enthusiastic and also there's a kind of a weird thing where you need to differentiate between non 200 requests a responses from failed requests Apache eventual remember the content link of your very 1st request and if it changes in subsequent request so if you have a good dynamics session value and any other reason that your content link might change dynamically it can register these like in a very weak mostly non helpful fulfilled request section I'm in use you'll see in your output I'm just make sure ideologues like are showing near rendering correct pages and is ignore it I mean also added a dash l flag in later versions of Apache avenge and it'll except the variable document link so I feel pretty
good is low key low concurrency load tests book is running in any errors
sold start animals are turning up the volume the and as they start to turn
up the volume on a load tests we can see How are act starts to be impacted by let alone with such that help queuing might affect the user experience the so as we increase
load will start to see the average response time of the whole site critique of the of this page increases well this sense something called little floor which is a fundamental life queuing theory and it tells us Alice lander times W which is that the average number of customers in a stable system is equal to the average effective arrival rate times the amount of time the and the source which sounds kind of like ridiculous whatever but if you think about in terms of a real world example it's actually super intuitive so within about a store where there's 1 cashier checking people are the total number of customers who were waiting in line over a specific period of time is going to be the rate that they come in times the total time spent online so you get a new cashier come on duty the new diverse user game and the twice as slow attacking people out as a prior cashier and people just keep getting line at the same rate the was basically just gonna say the airlines any longer if they take longer for people that you on its asserts its kind and then you can adjust that equation to help you understand why you would see increasing response time as you add additional load is that mean response time total response time is going to be the mean number of of in of requests the system divided by the trooper so here server is taking 500 ms to process a request announcing study was actually might not happen at a lower might be going up the total response time is gonna increase if you add more requests in your system I'm so a simple lake web application acts like a giant you their requests a process and so in this example talk about a web sector consists of a few things so about proxy server application server so the proxy server sits behind a firewall any communicate back and forth with your client AK here uses and I am your web server so common example is going to be a cheap proxy or in genetics and then next Thursday application server and this is going to deal with the request the processing it's going to make calls your database and hour serial and talk about a single Cyrillic unicorn and a new 1 has a master process is actually something Aaron brought up in his keynote I mean has a mass a process that has a configurable number of child processes the workers they do all of your work so even though you have a single server on a single machine it handles multiple requests at once and so it's like having multiple catches your grocery store there's other web servers like Kumar and those are in use multiple threads instead of multiple processes but it's kind of a similar similarity the and then in this simple stack we only have 1 database so all the catches ear versions star all making requests the same repository and they can all live on the same machine like the same physical machine and share the same resources or they can run on different machines just an example and your website sample probably look quite different and
so as we add more and more requests to the system little lies in a show that this average response time is can increase and eventually you just add more and more requests but you don't have any more cashiers to process the request that are coming in your weight is gonna grow too long and your users are going to see a time now and your proxy server will allow client requests a wait a preconfigured length of time and eventually has been saying I'm sorry I cannot be and as you increase the load on your system there might be a moment where like 0 media should increase my application server Q so it'll it it except more class but the danger here is that under extreme load your request can remain chewed up by your application server level even though your proxy server has long since returned that time now and so major applications are actually a key turning on those requests but no 1 will actually be around the see the request like that hatred and also those against us a recommendation of queuing theory which is that single cues for multiple workers is more efficient when job times are inconsistent an immediate at this in
practice you till available Web workers they can execute jobs and 1 is processing is huge file 1 is processing little tiny file if another request comes along and use arbitrarily start queuing up the short requests behind the worker That's downloading a huge file you sure request is going to be unnecessarily blocked by the long requests 1 another worker could execute the request and faster period of time there's also another may be strained and saints that you might might feel you increase the timeout threshold on your proxy server is your higher higher so you'll decrease the error rate but he the doesn't see a web page load after a minute or 2 is going to have an equal or probably worse reaction that just seeing the sign up from your proxy server
that the but it's also not just your application that gets affected by load you'll start to see effects on your Operating System play on operating system level that actually hosting your your application and is is configurations might be in place already in your production machines but especially when you're bring on new stating server local machine you'll probably find the needed tweak them and when you get started off with a load testing a
proxy server has to keep track of each incoming fire requests and it basically does this by keeping track of the IP address and port numbers associated with each request and because each of these requests takes up a Linux file you know you're gonna start seeing errors like potentially lead to many open files so just be sure that your operating system is innately arbitrarily capping the number of file handles a follows scriptors bigger proxy server can access unlike 1024 is a common default and in proxy server will use 1 you for incoming requests and 1 for outgoing connection you actually can run up against the limit pretty quickly you can actually see on your machine what these are i for your user add that host a proxy server I'm by using limit command the freezing limits and there is a rule of thumb for calculating this number and that's given by the 2 . 6 kernel documentation and basically said that each file handle it is basically 1 K of memory don't allergy more than 10 per cent of your available memory of files by fall and so you know about 100 file descriptors per megabyte of RAM and so you can start their receiver issues go away I'm and then see 1 actually check 2 levels so 1 is the system level I and you can edit that by adding this is control configuration and that's going to be just like the global default for the whole operating system at the higher level but you also nature you adjust the user limits in fact we're proxy server is actually gonna come up against I'm to 1 a set of software in the hot limit and those need to be less than that max limit the set for the whole system and you say that you close your file you reload a changes with this this control command of but and finally the proxy server has the following configuration news 1 make sure that you just that as well I this is an example for engine acts but it'll be specific to a proxy server another issue that might run into is TCP IP port exhaustion there's a finite number of ports that are available on your machine and only a subset of those ports are actually available to your application to use and these are called ephemeral ports they're using a web request and once the process is complete there to be released back into the system so that they can be used on your next available requests I mean each week to settings to increase the number of ports are available 1 you can decrease the time we so the pore is recycled back into the system more quickly I was so even though port is not in use anymore I years dear this Celia a period of time where the system folded back and I had this prevent stray packets from leaking across requests and you can also configure your operating system to just increase the available for range altogether and the different on each operating system and I 1 other thing is when you're running your load test is only make sure that there's a few minutes between each test out because these ports will still be in using your while let them recycle back you do that you can do uh bless you and the Unicorn documentation has a really good suggestions for a operating system tuning them for this this the settings but
like at the end of the day your application is a very special snowflake if you have to think about how your application behaves in the wild and how that can affect performance in a way that isn't really been accounted for in your steril testing environment so 1 thing is the relationship
between user actions cash busting in database queries for example so if you're testing endpoint URI URL and it returns user comments from the database so important consideration is like how many rows and the with the complexity of query that you're making against that database and if there are no comments seated on your test machine or very few common seated but in an expected user behavior under high load is that people are just like coming left and right that the Justin Bieber website in such scone it's coming constantly at that's a different that's about a different real world of feeling than in your in your low testing environment so even if also here if you're returning you decided to see the million comments and that's on your load testing environment you're still gonna see a query get catch out after 1st requests I'm so all of the different something so I only if in your realize scenario is that the user is going like a thousand comets and it's continuously busting the cash you mentioned simultaneously run scripts alongside a load test which will sort of simulate this like true factor comic creation I'm another scenario to consider is actually blocking external requests i if you're experiencing heavy load in all your workers are overwhelmed any worker that's making a slow walking http request you like example came across a and it's going to add to the overall latency experience verb everyone waiting behind their requests so at this point you should be really
comfortable with sort of the life cycle of the web requests in your stack what loves to look at like where keep out for errors and you should be confident that when you're running a low tax actually load testing your infrastructure and not as they come up against the limits of a testing framework and what sort of there you can use additional
tools to sort of understand like where the actual bottlenecks they are coming up against I'm in 1 place to start is said to investigate the limits of the actual machines hosting a web server so as you increase load you can use
top really common tool when you're running a low test of you what percentage CPU and memory are being consumed overall and who's the specific culprit maybe I am and what
I keep in mind is that the person is displayed is like a percentage of a single CPU so multi-core systems your percentage can be greater than 100 % and there's also something really nice
called H of which I really like it's probably not been sullen your system but it has like a
really great visual representation of CPU consumption across costs and it just makes you look like a total that ass comparatively
and the and let me think these resources they're hosting your proxy server Web server maybe a database it's all a 0 sum game so if you recall from earlier there is like a server like you or as a single master process that runs you configure sort of an arbitrary number of sub processes to handle your web requests and this is awesome because more workers minicam process more results more request simultaneously but there also consuming the resources on your physical host machines and so you wanna make sure that you don't have so many web servers configure the Web workers configure your system is is running out of physical memory annotating swap memory I'm which is like looking down on the hard drive and it's really it's like a lot slower to access the physical memory and you'll see that slowdown as if you look at the average memory consumption for each of those like workers on your machine if you have a memory leak you should see pretty consistent Mary here and you can calculate how many workers you can reasonably run reasonably run on your box and if you're running other applications on the same box those are also going to constrain the resources that you're really application can consume so for example the databases on the same machine you actually might run on a CPU reason Greek resources as you increase your where workers long before you actually start to be able to test pressure on your database itself I'm in a real world one-sided hillbillies compromise you might find it actually pretty easy to spend more workers to handle traffic but if they're all trying to access the same database and all waiting on the database on it and it can really it can cause a huge issue is and so if you're want to investigate this scenario and hired it your databases beginning under pressure I you might wanna actually pointed to an external database i which is pretty easy and rails and if you have a database server handy I use configured your database I am all to point to an external address rather than local host I may also need to configure your firewall to accept axonal connections that'll be pretty specific to your site but as the PSA please don't use your production database in this scenario because you can bring down your website at the sentiment and responsible you so another thing
that a lot of people are probably familiar with is using application performance monitoring tools to investigate performance issues I was the most useful tools is just being able to transact to trace your transactions i which is to say to collect data on your slow as HTTP requests I
knew elegant sky later third-party tools that typically come to mind I am but ideally you should try to set up the ones the use in production on your load testing server so you can see what issues would actually show up in real life but but you can also use it
the genome rack profile in production on your load tests which is remember if you're running in speeding switch the environment to our running application production mode so that all actually profiler costs and there's a couple tool you can use
to see how Lotus impacting your database I mean
if the feel it's disabled by default but you can turn on the slow query log in my sequel to see a lot of sequel statements that take more than a certain time to execute and you can configure that time frame to be between 1 and r 0 in 10 seconds and there's also a situation where you could be calling a queries is way too often it may not be expensive enough to show up in this slow log but if you turn if you look at show process let's you'll be able to see all queries that are currently running and it 1 queries like suspiciously running frequently it could be a bottleneck for performance regression he didn't realize that you had especially at 1 of those special snowflake queries that we talked about earlier where the caches frequently busted when it's under load all the an
attachment is not always gonna be the best on the market it's very simple and it's available to you probably right now on but there are
other tools as siege is another tool and that allows you to use a configuration file the head multiple endpoints at once just can really convenient and the wrapper bombarded allows user programmatically ramp up the load on your application which is really when I say I also abuse of machine guns which is billed Austin and has the most asinine I is an open-source tool brought to life by the news application team at the Chicago Tribune actually so it easily allows you to spend up a lot of micro I E C 2 instances to low test web applications if you finally just running from 1 box is not enough flow to relate to really make an impact on your side Charlie is a lot faster and and there's supplier I which is a plate paid service but they maintain of Jimena which is a Ruby DSL for writing a test plans Virginia which is the more like Heidi I have low testing tool and your app might
look pretty different from that I've talked about today might be hosted on roku you may be using Coleman said unicorn you may be using some kind of complex fault-tolerant distributed system in which you have totally different set of problems and site in this talk I but the great thing about load testing is that it's a framework for curiosity and it gives you some tools to kind shine light interior like pretty dark and scary places in your app I'm and it's it's really it can be a lot of fun so things related I'll to not only to my slides right after this variances in taking a look at the environment we're at practice that that's and I come up after interviewed I like to ask me questions I think the process much better than my 1
Bit
Flächeninhalt
Mittelwert
Wasserdampftafel
SISP
Computeranimation
Softwaretest
Vererbungshierarchie
Gruppenoperation
Zellularer Automat
Nummerung
Ereignishorizont
Computeranimation
Spannweite <Stochastik>
Unterring
Flächeninhalt
Einheit <Mathematik>
Reelle Zahl
Randomisierung
Server
Kontrollstruktur
Datenfluss
Softwareentwickler
Ganze Funktion
Array <Informatik>
Hydrostatik
Gebäude <Mathematik>
Gruppenkeim
Codierung
Wort <Informatik>
Bitrate
Computeranimation
Homepage
Softwaretest
Resultante
Nichtlinearer Operator
Web Site
Freeware
Quader
Mathematisierung
Kartesische Koordinaten
Gesetz <Physik>
Computeranimation
Spezifisches Volumen
Übergang
Bereichsschätzung
Last
Geometrische Frustration
Diskrete Simulation
Spezifisches Volumen
Normalspannung
Einflussgröße
Fehlermeldung
Resultante
Softwaretest
Web Site
Punkt
Datenhaltung
Konfigurationsraum
Stellenring
Physikalisches System
Biprodukt
Computeranimation
Homepage
Task
Algorithmische Zahlentheorie
Last
Weg <Topologie>
Benutzerbeteiligung
Last
Server
Normalspannung
Konfigurationsraum
Softwaretest
Videospiel
Web Site
Bit
Total <Mathematik>
Datenparallelität
Browser
Konfigurationsraum
Zahlenbereich
Kartesische Koordinaten
Physikalisches System
Term
Computeranimation
Homepage
Last
Last
Fahne <Mathematik>
Caching
Mereologie
Server
Volumenvisualisierung
Skript <Programm>
Funktion <Mathematik>
Benchmark
Resultante
Datenparallelität
Hyperbelverfahren
Blackbox
Versionsverwaltung
Zellularer Automat
Zahlenbereich
Login
Mathematische Logik
Statistische Hypothese
Computeranimation
Homepage
Medianwert
Variable
Reelle Zahl
Fahne <Mathematik>
Endogene Variable
Inhalt <Mathematik>
Response-Zeit
Gerade
Funktion <Mathematik>
Softwaretest
Videospiel
Prozess <Informatik>
Graph
Diskretes System
Güte der Anpassung
Validität
Übergang
Physikalisches System
Biprodukt
Binder <Informatik>
Endogene Variable
Zufallsgenerator
Menge
Last
Datenparallelität
Server
Garbentheorie
Bitrate
Schlüsselverwaltung
Steuerwerk
Fehlermeldung
Prozess <Physik>
Gemeinsamer Speicher
Web-Applikation
Versionsverwaltung
Gleichungssystem
Kartesische Koordinaten
Computeranimation
Homepage
Last
Client
Total <Mathematik>
Gerade
Umwandlungsenthalpie
Prozess <Informatik>
Dokumentenserver
Datenhaltung
Systemaufruf
Ruhmasse
Ähnlichkeitsgeometrie
Quellcode
Bitrate
Natürliche Sprache
Frequenz
Arithmetisches Mittel
Server
Arithmetisches Mittel
Proxy Server
Server
Total <Mathematik>
Firewall
App <Programm>
Physikalismus
Zahlenbereich
Term
Physikalische Theorie
Datenhaltung
Spezifisches Volumen
Physikalisches System
Virtuelle Maschine
Benutzerbeteiligung
Multiplikation
Mittelwert
Reelle Zahl
Spieltheorie
Proxy Server
Stichprobenumfang
Thread
Spezifisches Volumen
Response-Zeit
Speicher <Informatik>
Konfigurationsraum
Hilfesystem
Beobachtungsstudie
Soundverarbeitung
Videospiel
Einfache Genauigkeit
Physikalisches System
Gerade
Endogene Variable
Last
Firewall
Serielle Schnittstelle
Bitrate
Proxy Server
Gewicht <Mathematik>
Momentenproblem
App <Programm>
Klasse <Mathematik>
Gateway
Kartesische Koordinaten
Web-Seite
Physikalische Theorie
Computeranimation
Spezifisches Volumen
Übergang
Last
Client
Multiplikation
Benutzerbeteiligung
Prozess <Informatik>
Mittelwert
Vorzeichen <Mathematik>
Proxy Server
Response-Zeit
Schwellwertverfahren
Dicke
Einfache Genauigkeit
Physikalisches System
Bitrate
Elektronische Publikation
Frequenz
Warteschlange
Last
Hypermedia
Server
Lie-Gruppe
Fehlermeldung
Offene Menge
Proxy Server
Prozess <Physik>
Thumbnail
Natürliche Zahl
Mathematisierung
Gefrieren
Zahlenbereich
Kartesische Koordinaten
ROM <Informatik>
Netzadresse
Computeranimation
Spezifisches Volumen
Kernel <Informatik>
Übergang
Physikalisches System
Virtuelle Maschine
Last
Spannweite <Stochastik>
Benutzerbeteiligung
Weg <Topologie>
Endliche Menge
Software
Proxy Server
Netzbetriebssystem
Inverser Limes
Default
Konfigurationsraum
Einfach zusammenhängender Raum
Softwaretest
Soundverarbeitung
Elektronische Publikation
Stellenring
Schlussregel
Physikalisches System
Biprodukt
Elektronische Publikation
Frequenz
Inverser Limes
Spannweite <Stochastik>
Teilmenge
Menge
Last
Zahlenbereich
Festspeicher
Server
Gamecontroller
Fehlermeldung
Caching
Softwaretest
Subtraktion
Web Site
Punkt
Datenhaltung
Gruppenoperation
Datenbank
Abfrage
Kartesische Koordinaten
Komplex <Algebra>
Teilbarkeit
Computeranimation
Spezifisches Volumen
Datensatz
Last
Reelle Zahl
Skript <Programm>
URL
Programmierumgebung
Softwaretest
Videospiel
Virtuelle Maschine
Quick-Sort
Framework <Informatik>
Computeranimation
Virtuelle Maschine
Benutzerbeteiligung
Last
Dreiecksfreier Graph
Server
Inverser Limes
Fehlermeldung
Softwaretest
Konvexe Hülle
Dämon <Informatik>
Dezimalbruch
Volumenvisualisierung
Winkel
Physikalisches System
Zentraleinheit
Extrempunkt
Computeranimation
Gesetz <Physik>
Inverser Limes
Zufallszahlen
Einheit <Mathematik>
Festspeicher
Total <Mathematik>
PERM <Computer>
Streaming <Kommunikationstechnik>
Innerer Punkt
Resultante
Proxy Server
Web Site
Gewichtete Summe
Prozess <Physik>
Total <Mathematik>
Quader
Firewall
Selbstrepräsentation
Adressraum
Physikalismus
Zahlenbereich
Kartesische Koordinaten
Zentraleinheit
Computeranimation
Datenhaltung
Festplattenlaufwerk
Leck
Virtuelle Maschine
Benutzerbeteiligung
Spieltheorie
Reelle Zahl
Mittelwert
Visualisierung
Einfach zusammenhängender Raum
Datenhaltung
Spieltheorie
Einfache Genauigkeit
Physikalisches System
Biprodukt
Quick-Sort
Inverser Limes
Druckverlauf
Wurzel <Mathematik>
Festspeicher
Server
Softwaretest
Transaktionsverwaltung
Last
Server
Ablaufverfolgung
Kartesische Koordinaten
Biprodukt
Transaktionsverwaltung
Computeranimation
Eins
Softwaretest
Retrievalsprache
ATM
Befehl <Informatik>
Prozess <Physik>
Rahmenproblem
Datenhaltung
Zwei
Profil <Aerodynamik>
Abfrage
Fortsetzung <Mathematik>
Kartesische Koordinaten
Biprodukt
Computeranimation
Datenhaltung
COM
Last
Caching
Lineare Regression
Default
Programmierumgebung
Transaktionsverwaltung
Softwaretest
App <Programm>
Videospiel
Quader
Web-Applikation
Virtuelle Maschine
Kartesische Koordinaten
Elektronische Publikation
Datenfluss
Computeranimation
Last
Dienst <Informatik>
Multiplikation
Softwaretest
Last
Meter
Wrapper <Programmierung>
Konfigurationsraum
Instantiierung
Schreib-Lese-Kopf
Rechenschieber
Softwaretest
App <Programm>
Subtraktion
Prozess <Physik>
Menge
Last
Physikalisches System
Komplex <Algebra>
Programmierumgebung
Framework <Informatik>
Innerer Punkt
Varianz
Computeranimation

Metadaten

Formale Metadaten

Titel Site Availability is for Everybody
Serientitel RailsConf 2016
Teil 35
Anzahl der Teile 89
Autor Cotton, Stella
Lizenz CC-Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben.
DOI 10.5446/31557
Herausgeber Confreaks, LLC
Erscheinungsjahr 2016
Sprache Englisch

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract Your phone rings in the middle of the night and the site is down— do you know what to do? Whether it's Black Friday or a DDoS attack, our Ruby apps and Ruby devs have to be prepared for the best and the worst. Don't let a crisis catch you off guard! Fortunately, you can sharpen your skills ahead of time with load testing. Learn tips and common pitfalls when simulating application load, as well as key metrics and graphs to understand when site availability is compromised.

Ähnliche Filme

Loading...