We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

How we switched our 800+ projects from Apache to uWSGI

00:00

Formal Metadata

Title
How we switched our 800+ projects from Apache to uWSGI
Title of Series
Part Number
16
Number of Parts
119
Author
License
CC Attribution 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 purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language
Production PlaceBerlin

Content Metadata

Subject Area
Genre
Abstract
Max Tepkeev - How we switched our 800+ projects from Apache to uWSGI During the last 7 years the company I am working for developed more than 800 projects in PHP and Python. All this time we were using Apache+nginx for hosting this projects. In this talk I will explain why we decided to switch all our projects from Apache+nginx to uWSGI+nginx and how we did that. ----- The talk will start from describing the setup we had for the last 7 years, i.e. Apache with mod_wsgi for Python projects and mod_php4/5 for PHP projects + nginx. I will explain why we used this setup for so long time, what problems we faced with this setup and what solutions we tried to solve them before switching to uWSGI. Then I will tell about uWSGI, what it is, how it works and what features it has. I will show the comparison of configuration files, how simple it is to configure uWSGI compared to Apache. Lastly I will explain how we managed to switch all our 800+ projects developed over the years in 2 different languages with 2 major versions changed (PHP4/5 and Python2/3), how this switch simplified our development and administration of this projects, the improvements we got in memory management and other areas.
Keywords
Maxima and minimaGoodness of fitWeb-DesignerProjective planeMatching (graph theory)Computer animationLecture/Conference
Berlin (carriage)Maxima and minimaLocal GroupComa BerenicesPointer (computer programming)Magneto-optical driveStack (abstract data type)3 (number)DebuggerCartesian coordinate systemProjective planeFormal languageTable (information)Asynchronous Transfer ModeAuthorizationWeb 2.0Flow separationMereologyGroup actionMultiplication signIntegrated development environmentMusical ensembleRational numberComputer iconGenderWebsiteComplete metric spaceVideo gameComputer animation
Revision controlDifferent (Kate Ryan album)Flow separationScripting languageLine (geometry)Ring (mathematics)CodeAuthorizationCartesian coordinate systemAsynchronous Transfer ModeFlow separationDemonDerivation (linguistics)WeightProduct (business)SummierbarkeitMappingPoint (geometry)Projective planeView (database)Service (economics)Group actionWebsiteSoftware developerSource codeMoment (mathematics)Scripting languageParameter (computer programming)Reading (process)WordRevision controlInstance (computer science)Descriptive statisticsBuildingArithmetic meanInclusion mapMathematicsDifferent (Kate Ryan album)Web 2.0CodeTouch typingLine (geometry)Computer animation
Line (geometry)Scripting languageRing (mathematics)CodeMagneto-optical driveAsynchronous Transfer ModeLine (geometry)MereologyMathematicsMemory managementCartesian coordinate systemScripting languageComputer animation
Coma BerenicesAerodynamicsProcess (computing)Electronic meeting systemBit rateCAN busDemonMagneto-optical driveBranch (computer science)Branch (computer science)Process (computing)Software developerFlow separationComa BerenicesDifferent (Kate Ryan album)Projective planeDemonUniform resource locatorComputer animation
Computer fileConfiguration spaceBranch (computer science)Flow separationComputer animation
Coma BerenicesProcess (computing)Bit rateCAN busDemonMagneto-optical driveBranch (computer science)Branch (computer science)View (database)Computer fileConfiguration spaceSimilarity (geometry)Absolute valueDemonProcess (computing)Different (Kate Ryan album)Projective planeMultiplication signComputer animation
Configuration spaceStructural loadMultiplication signError message2 (number)Web 2.0Dependent and independent variablesServer (computing)Software testingComputer fileDivisorPlotterLecture/Conference
Error messageCrash (computing)Total S.A.Fault-tolerant systemStructural loadConfiguration spaceElectronic meeting systemSimplex algorithmSemantics (computer science)Configuration spaceSign (mathematics)Level (video gaming)Computer fileINTEGRALEndliche ModelltheorieLogicBranch (computer science)Multiplication signServer (computing)1 (number)Proper mapComputer animation
Configuration spaceProper mapNP-hardExpert systemSystem administratorRevision controlSemiconductor memoryAreaWeb serviceBefehlsprozessorPhysical systemUtility softwareBranch (computer science)Memory managementCuboidBuildingBasis <Mathematik>Computer animation
NP-hardConfiguration spaceMagneto-optical drivePointer (computer programming)Cycle (graph theory)Revision controlCycle (graph theory)Memory managementSoftware developerBitDeclarative programmingComputer fileMultiplication signProjective planeLimit (category theory)Configuration spaceVariable (mathematics)Object (grammar)Computer animation
Cycle (graph theory)Formal languageMultiplicationJava appletErlang distributionCartesian coordinate systemJava appletApplication service providerFormal languageSpeech synthesisSurvival analysisField (computer science)SummierbarkeitSubject indexingComputer animationLecture/Conference
Cycle (graph theory)Execution unit3 (number)Communications protocolCausalityMultilaterationSource codeRevision controlMaxima and minimaPlug-in (computing)Repository (publishing)Point (geometry)Endliche ModelltheorieComputer animationLecture/Conference
3 (number)MathematicsInstallation artCore dumpExecution unitLocal ringBinary fileBuildingComputer fileObject (grammar)1 (number)CompilerMomentumDirectory serviceDirection (geometry)Core dumpUniform resource locatorPlug-in (computing)Computer animationLecture/Conference
Core dumpPlug-in (computing)Local ringLoginMultiplicationRevision controlRing (mathematics)CodePoint (geometry)Multiplication signPlug-in (computing)WeightMathematics2 (number)Touch typingProjective planeLine (geometry)Online helpScripting languageCodeTerm (mathematics)Normal (geometry)Process (computing)Endliche ModelltheorieSlide ruleSystem callComputer animation
Directory serviceEvent horizonAsynchronous Transfer ModeAerodynamicsConfiguration spaceInstance (computer science)DemonData storage deviceDynamical systemAsynchronous Transfer ModeComputer fileEvent horizonProcess (computing)Flow separationBranch (computer science)Similarity (geometry)Direction (geometry)Directory serviceForm (programming)Single-precision floating-point formatDefault (computer science)Assembly languageInferenceComputer animation
Directory serviceComputer filePattern languagePlug-in (computing)Directory serviceInstance (computer science)Computer animation
Mobile appLocal ringTemplate (C++)Touch typingNetwork socketComputer fileSoftware repositoryBlogBranch (computer science)Computer fileInstance (computer science)Configuration spaceDirectory serviceProjective planeTemplate (C++)Flow separationError messageProcess (computing)Asynchronous Transfer ModeExtension (kinesiology)Dynamical systemBranch (computer science)DemonComplete metric spaceStapeldateiMathematical analysisSubject indexingINTEGRALArithmetic meanBitLink (knot theory)Computer animation
Cartesian coordinate systemLecture/Conference
Local ringTemplate (C++)Branch (computer science)3 (number)Asynchronous Transfer ModeLogarithmLetterpress printingConfiguration spaceExponential functionModul <Datentyp>AliasingMagneto-optical driveCombinational logicPhysical systemMultiplication signJava appletModule (mathematics)Flow separationEndliche ModelltheorieoutputINTEGRALSystem administratorWater vaporSoftware developerMultiplicationWordCycle (graph theory)Revision controlDifferent (Kate Ryan album)Structural loadVideo gameTask (computing)BlogWeb serviceComputer fileMathematicsCondition numberIntegrated development environmentInternational Date LineAsynchronous Transfer ModeDampingString (computer science)Plug-in (computing)Data loggerCodeLastteilungWebsiteVirtualizationThread (computing)Computer animation
DisintegrationKnowledge-based configurationFunctional (mathematics)Query languageSoftware developerCache (computing)Configuration spaceComputer filePower (physics)QuicksortVariable (mathematics)Scripting languageStatement (computer science)Integrated development environmentFree variables and bound variablesCycle (graph theory)Content (media)Reading (process)MathematicsDivision (mathematics)WritingComputer animationLecture/Conference
Scripting languageWaveWritingRight angleProcess (computing)BenchmarkServer (computing)World Wide Web ConsortiumProjective planeService (economics)RepetitionFunctional (mathematics)Scripting languageConfiguration spaceVideo gameGroup actionProduct (business)Flow separation1 (number)Web 2.0Equaliser (mathematics)AnalogyServer (computing)Similarity (geometry)Stability theoryComputer fileComputer animationLecture/Conference
Mobile appPressureServer (computing)BenchmarkMemory managementWeb 2.0Cartesian coordinate systemAdditionCASE <Informatik>Computer animation
WeightSlide ruleComa BerenicesEmailMaxima and minimaMultiplication signMaxima and minimaComputer animationLecture/Conference
Front and back endsReverse engineeringPairwise comparisonWeb serviceCartesian coordinate systemCASE <Informatik>TrailMaxima and minimaDataflowType theoryServer (computing)Proxy serverAsynchronous Transfer ModeDebuggerPatch (Unix)Dynamical systemSpacetimeWeb pageFormal languageBasis <Mathematik>MereologyLecture/Conference
WeightSlide ruleComa BerenicesEmailMaxima and minimaGoogolComputer animation
Transcript: English(auto-generated)