How Dark deploys code in 50ms - Darklang - Medium


41 bookmarks. First posted by gnat 8 days ago.


A different way to think of code artifacts
programming  software  dark  darklang  deployment  tootme 
yesterday by nelson
Versioning of Functions and Variables
Feature flag used also for branching
Migration with on the fly migrate and rollback for one entry depending which version is used
Delete old versions when not used anymore

Old process

Make the changes

Create a new branch in git
Make the changes behind a feature flag
Run unit tests to validate your changes with the feature flag both on and off

Pull request

Commit the changes
Push the changes to a remote on github
Make a pull request
CI build runs automatically in the background
Code review
Repeat this step a few times perhaps
Merge the changes into git master

CI runs on master

Install frontend dependencies via npm
Build/optimize HTML+CSS+JS assets
Run frontend unit/functional tests
Install Python dependencies from PyPI
Run backend unit/functional tests
Run integration tests against both assets
Push frontend assets to a CDN
Build a container for the Python program
Push container to registry
Update kubernetes manifest

Replace old code with new code

Kubernetes spins up some instances of the new container
Kubernetes waits for those instances to become healthy
Kubernetes add those instances to the HTTP load balancer
Kubernetes waits for old instances to become unused
Kubernetes spins down old instances
Kubernetes repeats until all old instances have been replaced with new ones

Enable new feature flag

Enable the new code for just yourself, gain confidence
Enable the new code for 10% of your users, watch operational and business metrics
Enable the new code for 50% of your users, watch operational and business metrics
Enable the new code for 100% of your users, watch operational and business metrics
Finally, go through the entire process again to remove the old code and the feature flag
programming  devops  concept  dark  deployment  via:popular 
2 days ago by rauschen
(Article link:
)
from twitter
4 days ago by purcell
Dark is a holistic programming language, editor and infrastructure that’s designed from the ground up for Continuous Delivery, and every aspect of Dark, including the language itself, was built around safe, instant deploys.
devops  programming 
5 days ago by dagh
Speed of developer iteration is the single most important factor in how quickly a technology company can move. Unfortunately, modern applications work against us: our systems are required to be live updated, silently and without downtime or maintenance windows.
Pocket  ops 
5 days ago by neverminding
RT : Dark is built from the ground up for continuous delivery. Here's how we help you deploy code in 50 milliseconds:
from twitter
6 days ago by kejadlen
Speed of developer iteration is the single most important factor in how quickly a technology company can move. Unfortunately, modern applications work against us: our systems are required to be live…
continuous-integration 
6 days ago by danhorst
Speed of developer iteration is the single most important factor in how quickly a technology company can move. Unfortunately, modern applications work against us: our systems are required to be live updated, silently and without downtime or maintenance windows. via Pocket
6 days ago by goeran
Mind... Blown... If they can pull this off, it's revolutionary
from twitter
6 days ago by davidvc
RT : Technology to watch. It’s time to squash the CD pipeline.
from twitter_favs
7 days ago by chrismdp
RT : In , deploys take 50ms, and we designed the language, editor, and infra for continuous delivery.
from twitter
7 days ago by etorreborre
deployment that saves delta diffs from changes to code automatically & ships to prd instantly!?
code 
7 days ago by saranrapjs
Speed of developer iteration is the single most important factor in how quickly a technology company can move.

Unfortunately, modern applications work against us: our systems are required to be live updated, silently and without downtime or maintenance windows. Deploying into these live systems is tough, requiring complex Continuous Delivery pipelines, even for small teams.

These pipelines are typically ad-hoc, brittle, and slow. They need engineering time to build and manage, and companies often hire entire Devops teams to maintain them.

The speed of these pipelines dictate the speed of developer iteration. The best teams manage deploy times around 5–10 minutes, but most take considerably longer, in many cases hours for a single deploy.

In Dark, deploys take 50ms. Fifty! Milliseconds! Dark is a holistic programming language, editor and infrastructure that’s designed from the ground up for Continuous Delivery, and every aspect of Dark, including the language itself, was built around safe, instant deploys.
7 days ago by xyzzyb
How Dark deploys code in 50ms Paul Biggar in Darklang Jul 9 · 12 min read Speed of developer iteration is the single most important factor in how quickly a…
from instapaper
7 days ago by aviflax
How Dark deploys code in 50ms Paul Biggar in Darklang Jul 9 · 12 min read Speed of developer iteration is the single most important factor in how quickly a…
from instapaper
8 days ago by marcinignac
Speed of developer iteration is the single most important factor in how quickly a technology company can move. Unfortunately, modern applications work against us: our systems are required to be live updated, silently and without downtime or maintenance windows. via Pocket
IFTTT  Pocket 
8 days ago by domingogallardo
Published! Thank you all for the help 🙏
from twitter_favs
8 days ago by gnat