Python

Een snelle, veilige en volledig beheerde hostingomgeving voor Python-applicaties. Van API en SaaS-platform tot Django, Flask of maatwerksoftware. Wij richten de passende stack in met Python, Nginx, applicatieservers, databases, Redis, process management, security en monitoring.

Bouw je met een Python-framework? Bekijk ook onze managed hosting voor Django en Flask.

Jij bouwt de applicatie. Wij zorgen dat de infrastructuur eronder snel, veilig en stabiel blijft draaien.

thumbnail voor Python
Cover voor

Waarom Rootnet voor Python?

Python geeft developers veel vrijheid. Je kunt werken met een compleet framework als Django, een minimalistisch framework als Flask of een volledig eigen applicatie bouwen.

Die vrijheid wil je ook in de hostingomgeving.

Daarom werken we niet met één vaste Python-stack. We richten de omgeving in rondom wat jouw applicatie daadwerkelijk nodig heeft en beheren vervolgens de infrastructuur eronder.

Van Django tot maatwerk Python

Draait je applicatie op Django, Flask, FastAPI of een ander Python-framework? Of heb je een eigen API, worker of service ontwikkeld?

De Python-runtime, webserver, applicatieprocessen, database en caching kunnen als één managed omgeving worden ingericht.

WSGI of ASGI

Niet iedere Python-webapplicatie werkt hetzelfde.

Traditionele frameworks en applicaties kunnen via WSGI draaien, terwijl moderne asynchronous applicaties vaak ASGI gebruiken.

Op ons platform kan de applicatieserver worden afgestemd op de architectuur van het project, bijvoorbeeld met Gunicorn voor WSGI of Uvicorn voor een ASGI-applicatie.

Performance voor dynamische workloads

Python-applicaties worden veel ingezet voor API’s, SaaS-platformen, dataverwerking en andere toepassingen waarbij requests daadwerkelijk door de applicatie moeten worden verwerkt.

Daarom draait ons platform op snelle AMD EPYC-processors, NVMe-opslag en capaciteit die we niet overboeken.

Zo krijgt ook dynamische Python-code voldoende rekenkracht wanneer de belasting toeneemt.

Security standaard geregeld

Dagelijkse software-updates en securitypatches, een managed firewall, DDoS-protectie, botprotectie, GeoBlocking, malwarescanning en offsite back-ups zijn standaard onderdeel van het platform.

Zo hoeft je developmentteam deze infrastructuur niet naast iedere Python-applicatie zelf te onderhouden.

Haal het maximale uit je Python hosting

Laat je website, webshop of applicatie sneller presteren met een hostingplatform dat is gebouwd voor snelheid, stabiliteit en groei.

  • Met 24/7 monitoring en pro-actieve support bewaken wij de performance, bereikbaarheid en veiligheid van jouw projecten.
  • Tijd is kostbaar en soms wil je gewoon direct geholpen worden. Wij zijn tijdens kantoortijden telefonisch bereikbaar voor al je vragen.
  • Bij al onze servers is standaard een uitgebreide Service Level Agreement (SLA) inbegrepen.

De juiste stack voor Python

  • Python en virtual environments

    Iedere Python-applicatie heeft zijn eigen dependencies. Daarom werken Python-projecten met geïsoleerde virtual environments. Libraries en packages van het ene project staan daarmee los van andere applicaties op dezelfde managed server. Je kunt gewoon werken met de gebruikelijke Python-tooling en dependencybestanden zoals requirements.txt of pyproject.toml. Zo blijven Python-versies en dependencies per project beheersbaar zonder dat verschillende applicaties elkaar in de weg zitten.
  • Nginx als reverse proxy

    Voor Python-webapplicaties staat Nginx als webserver en reverse proxy. Nginx handelt onder andere TLS, inkomende verbindingen en statische bestanden af en stuurt dynamische requests door naar de Python-applicatieserver. Daardoor hoeft de Python-applicatie niet rechtstreeks vanaf internet bereikbaar te zijn en kan deze zich richten op de applicatielogica. De Nginx-configuratie wordt door ons ingericht en beheerd.
  • Gunicorn voor WSGI

    Voor WSGI-applicaties kan Gunicorn worden ingezet als productie-applicatieserver. Gunicorn start meerdere workers die requests verwerken en wordt veel gebruikt in combinatie met frameworks als Django en Flask. Het aantal workers en de configuratie kunnen worden afgestemd op de beschikbare resources en workload van de applicatie.
  • Uvicorn voor ASGI

    Voor asynchronous Python-applicaties kan een ASGI-server zoals Uvicorn worden gebruikt. Dat past bijvoorbeeld bij FastAPI, Starlette en andere applicaties die gebruikmaken van asyncio, WebSockets of veel gelijktijdige I/O. Zo kan de productieomgeving worden afgestemd op het type Python-applicatie in plaats van één standaard applicatieserver voor ieder project te gebruiken.
  • Supervisor voor applicaties en workers

    Een Python-applicatie of worker moet in productie blijven draaien. Met managed Supervisor kunnen Gunicorn-, Uvicorn-, Celery- en andere Python-processen actief worden gehouden en opnieuw worden gestart wanneer ze onverwacht stoppen. Ook aparte achtergrondprocessen kunnen op dezelfde manier worden beheerd. Zo wordt process management onderdeel van de hostingomgeving in plaats van iets waar developers zelf continu naar moeten kijken.
  • Kies zelf je database

    Python schrijft geen specifieke database voor. Op ons platform kun je daarom de backend kiezen die bij de applicatie en het datamodel past. Denk aan PostgreSQL, MySQL, MariaDB of MongoDB. PostgreSQL is bijvoorbeeld een populaire keuze voor grotere Python- en SaaS-applicaties dankzij ondersteuning voor complexe relationele modellen, JSONB, geavanceerde indexen en extensies. Welke database je ook kiest, deze is volledig managed. Wij onderhouden de databasesoftware, monitoren de beschikbaarheid 24/7 en maken dagelijks een back-up naar een fysiek ander datacentrum.
  • Redis

    Redis kan binnen Python-applicaties voor verschillende doeleinden worden gebruikt. Denk aan applicatiecache, sessions, rate limiting, tijdelijke data, locks en queues voor achtergrondtaken. Veelgebruikte informatie kan vanuit het geheugen worden opgehaald, waardoor niet iedere request opnieuw dezelfde berekening of databasequery hoeft uit te voeren. Redis is als volledig managed onderdeel van onze hostingstack beschikbaar.
  • Background jobs en workers

    Niet ieder proces hoort onderdeel te zijn van een normale HTTP-request. Denk aan imports, exports, rapportages, e-mail, dataverwerking, image processing of synchronisaties met externe API’s. Python-applicaties kunnen hiervoor bijvoorbeeld Celery, RQ of eigen workerprocessen gebruiken. Deze processen kunnen met Supervisor continu actief worden gehouden, zodat achtergrondwerk onafhankelijk van normale webrequests wordt uitgevoerd.
  • Scheduled tasks en cron

    Python wordt ook veel gebruikt voor processen die periodiek moeten worden uitgevoerd. Denk aan synchronisaties, onderhoudstaken, rapportages of data-imports. Deze scripts kunnen via cron worden ingepland en daarmee automatisch op het gewenste moment worden uitgevoerd. Zo kan dezelfde managed omgeving zowel de webapplicatie als bijbehorende achtergrond- en scheduled processes draaien.
  • Deployments

    Een Python-deployment bestaat vaak uit meer dan alleen nieuwe broncode uploaden. Dependencies moeten worden geïnstalleerd, virtual environments bijgewerkt, database migrations uitgevoerd en applicatie- en workerprocessen opnieuw gestart. Via SSH en deploymentintegraties kun je dit aansluiten op jullie bestaande CI/CD-flow. Zo bepalen developers hoe releases plaatsvinden, terwijl wij verantwoordelijk blijven voor de productieomgeving waarop ze draaien.

24/7 beschikbaarheid voor je Python-applicatie

Een SaaS-platform, API of bedrijfskritische applicatie moet ook buiten kantooruren beschikbaar blijven.

Daarom monitoren we onze managed servers en belangrijke onderdelen van de softwarestack 24/7. We houden onder andere zicht op serverbelasting, beschikbare opslag, databases en processen die nodig zijn om je Python-applicatie te laten draaien.

Detecteert onze monitoring een verstoring, dan krijgen onze engineers automatisch een melding en kunnen zij ingrijpen.

Applicatie- en workerprocessen blijven draaien

Bij Python kan de server zelf beschikbaar zijn terwijl een belangrijk applicatie- of workerproces niet meer functioneert.

Met Supervisor kunnen belangrijke applicatie- en achtergrondprocessen actief worden gehouden en opnieuw worden gestart wanneer ze onverwacht stoppen. Daarmee kijken we verder dan alleen de vraag of de server zelf online is.

Alles beheren vanuit myRootnet

Managed hosting betekent niet dat je voor iedere aanpassing bij ons moet aankloppen. Vanuit myRootnet houd je zelf controle over het dagelijkse beheer van je Python-projecten.

Bekijk realtime servermetrics, beheer projecten en domeinen, regel DNS en geef developers toegang via Role Based Access en persoonlijke SSH-keys.

Ook deployments, back-ups en servercapaciteit beheer je vanuit hetzelfde platform.

Meer resources nodig doordat een applicatie groeit, meer achtergrondprocessen uitvoert of tijdelijk veel verkeer verwacht? Dan kun je de managed server vanuit myRootnet vergroten en later eventueel weer afschalen.

Zo blijft het beheer van de infrastructuur onze verantwoordelijkheid, terwijl developers controle houden over de Python-applicatie.

Wat kost managed Python hosting?

Je betaalt per managed server en niet per Python-applicatie.

Daardoor kun je meerdere Python-projecten op dezelfde server draaien zolang de beschikbare capaciteit dat toelaat. Ook Django-, Flask-, Node.js- en andere projecten kunnen op dezelfde managed server worden gehost.

Iedere managed server is inclusief onze 24/7 SLA, monitoring, securityfeatures, Redis, Supervisor, managed databases, offsite back-ups en het beheer van de onderliggende softwarestack.

Bekijk het actuele overzicht met servercapaciteit, specificaties en prijzen.

Je Python-applicatie naar Rootnet verhuizen

Een Python-applicatie bestaat vaak uit meer dan alleen .py-bestanden en een database.

Denk aan Python-versies, virtual environments, dependencies, environment variables, uploads, databases, Redis, applicatieservers, workers, scheduled tasks en externe koppelingen.

Daarom kijken onze engineers vooraf mee naar de bestaande omgeving.

We zetten de nieuwe hostingstack klaar, installeren de benodigde dependencies, verhuizen applicatie en data en zorgen dat web- en achtergrondprocessen op de nieuwe omgeving draaien.

Waar nodig stemmen we een laatste databasesynchronisatie en omschakelmoment af om downtime en dataverlies te beperken.

Heb je meerdere Python-projecten? Dan kunnen migraties ook in batches of bulk worden uitgevoerd. Waar nodig helpen we bovendien met domeinnamen en DNS.

Tijdens de migratie betaal je geen dubbele serverkosten.

Danny Feskens | Rootnet Managed Hosting

Ervaar het zelf!

Haal het beste uit jouw projecten dankzij de ideale managed hosting setup.
Heb je vragen of wil je onze managed hosting 14 dagen vrijblijvend proberen? Neem gerust contact met Danny op!

Veelgestelde vragen