Skip to content

Instantly share code, notes, and snippets.

@thisismana
Last active February 20, 2020 14:51
Show Gist options
  • Save thisismana/d2f7b0043c515ee097a24c4981aee5b8 to your computer and use it in GitHub Desktop.
Save thisismana/d2f7b0043c515ee097a24c4981aee5b8 to your computer and use it in GitHub Desktop.
infra.md

Infrstructure

State of the union

  • Data transfer costs due to many hops
  • Costs/Complexity due to many apps
  • consistend naming, tagging
  • consistent auth
  • consistent rate-limiting + retries
  • staging
  • health-check-proxy + pingdom
  • load-testing
  • autoscaling
  • Varnish + dynamic backend routing + redirects
  • consistent event mechanisms (request/response, sns/sqs, streams)
  • Flexible Sampling
  • Alerting (cloudwatch/pagerduty)
  • root assets suck
  • CDN
    • Akamai
    • AMP
    • Invalidations
    • E-Tags
    • Cache-Tags
    • TTL
  • Single-Region

Ideas

  • moar monolithic apps
  • ECS service discovery to avoid ALBs
  • Deployment of pull requests
  • embrace trace ids
  • consistent use of SSM-Parameter-Store for credentials
  • consistent use of ENV/Secrets within apps (SSM vs ENV)
  • Central Account for CDN / DNS
  • Reserved Instances ⇨ Savings plan

Applications

State of the union

  • diverse builds
  • crappy deployment
  • Logging + Logstash
  • Metrics (datadog)
  • diverse app setup (http-libs, async, event-driven, ...)

Ideas

  • unified builds (one source set, multi-stage-docker, Makefile)
  • Github ⇨ CI ⇨ ECR █ ECR ⇨ CD ⇨ ECS
  • Deploy PRs, route/test via HDRs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment