Skip to content

Latest commit

 

History

History
660 lines (429 loc) · 25.8 KB

LINKS.md

File metadata and controls

660 lines (429 loc) · 25.8 KB

Usefull links

Python

multiple env

Docker

Dockerfile

secrets

custom .dockerignore

busybox

compose environments

As a service

general

PaaS

PaaS systems: Heroku, DigitalOcean Apps, Google App Engine, AWS Elastic Beanstalk, etc.

Wordpress on PaaS

Dokku

Serverless

general

serverless vs paas

scaling

framework

Devpod

Compared to hosted services such as Github Codespaces, JetBrains Spaces, or Google Cloud Workstations, DevPod (self hosted alternative to codespaces) has the following advantages: Cost savings: DevPod is usually around 5-10 times cheaper than existing services with comparable feature sets because it can use bare virtual machines.

Strapi

Strapi is not well suited for serverless environments due to how the application is structured. Several actions happen while Strapi is booting that can take several seconds. Serverless deployment usually requires an application to cold boot very quickly. Strapi is designed to run as an always-on service, and we don't plan to decrease the cold boot time for the foreseeable future. Therefore, running Strapi in serverless environments is not a great experience, as every request will take seconds to respond to instead of milliseconds. Choosing between a cold boot or a warm boot is an architectural decision that many software developers need to take from a very early stage, so please consider this when choosing to use Strapi.

Laravel

WordPress

Wordpress w/ Google storage

Wordpress on AWS Lambda

Invocation Payload limit for AWS Lambda is 6 MB The integration timeout for API Gateway is 29,000ms. Requests that are longer than 29 seconds will be terminated No FTP / SSH access — you’ll need to manage an EC2 instance if you need command line or direct file access.

Logging

Google Cloud Logging vs Google Cloud Monitoring

comparison

App Engine

free tier

installation

quotas and limits

File predefiniti per app: 10.000

Python support

local development

local development (standard)

local development (flexible)

app.yaml

PHP application

Wordpress

Laravel

Strapi

Cold boot

errors

TypeError: not expecting type '<class 'NoneType'>'

standard vs flexible

GCP offers two flavors of GAE: Standard and Flexible environment. In brief, the standard environment (https://cloud.google.com/appengine/docs/standard) has limitations that make it more suitable to host stateless Web applications that respond to HTTP requests quickly. The flexible environment (https://cloud.google.com/appengine/docs/flexible) runs your applications in Docker containers on Google Compute Engine virtual machines (VMs) (https://cloud.google.com/compute/docs/instances). It offers more flexibility and freedom to host any kind of Web application on Docker containers.

App Engine vs K8s

PaaS alternatives

Cloud Run

local develop

Cloud Run vs App Engine

App Engine runs 24/7 for the entire month whereas Cloud Run only runs when serving requests, and the difference is startling.

Cloud Run vs Cloud Functions

Cloud Run and Google Cloud Functions are two prominent serverless computing options Cloud Run is centred around containerization, allowing you to run entire containers, while Cloud Functions are based on the Function as a Service (FaaS) model, executing individual functions.

Cloud Run vs AWS Fargate

Strapi

Wordpress

Minikube

install

Minikube, K3S/K3D, MicroK8S, KinD, etc.

K8s

providers

LAMP

Laravel

stateful

Kustomize

configmap and secrets

YAML

service, loadbalancer and ingress

A ClusterIP service is a good default choice for internal Services that don't need to be accessed outside the cluster. For Services that you'd like to expose externally, a LoadBalancer is a good choice unless you specifically need layer 7 functionality that only an Ingress allows.

SSL certificates

volumes, subpath

IPs

hooks, commands

initContainer

debug

hosting

serverless (OpenFaas, OpenWhisk, Kubeless, Knative, Fission, Fn)

monitoring

GKE

free tier

Autopilot

AWS

general

framework

local development w/ LocalStack

To use the LocalStack Community image, you don't need to sign-up for an account on LocalStack Web Application. The Community image is free to use and does not require any API key to run.

AWS w/ Terraform

AWS w/ Serverless Stack

Amazon Lightsail

AWS Lambda vs ec2

AWS Lambda vs Cloudflare workers

Elastic Beanstalk

Laravel on Elastic Beanstalk

AWS rekognition

Strapi

  • Aws App Runner
  • Elastic Container Service
  • Elastic Beanstalk

App runner is the simplest. You can set up and run the container without doing many tasks, but it is not available in all regions. Elastic Container Service(ECS) is a service with a low-level abstraction to run and manage multiple containers(cluster). In our case, we just need to run one container, so Elastic Beanstalk is a perfect choice and is available in all regions.

SLA

Cloudflare

Edge

Workers

Wordpress

HTMX

speed comparison

CloudFront vs S3 Bucket

CloudFront and S3 Bucket is not the same. In layman's terms: CloudFront enables you to accelerate content delivery of your web contents via Content Delivery Network (CDN) in edge locations, whereas S3 Buckets are where you store your actual files. CloudFront sources may not necessarily be from S3 but for easier visualization of S3 integration with CloudFront

Miscellaneous

Tools

Tailwind

Redis, Varnish

Git

IaC, CI/CD

SRE

Microservices

DevOps

Agile, tdd, bdd, atdd

Stateless vs Stateful

Laravel nova

CRUD (create, read, update, delete)
BREAD (browse, read, edit, add, delete)

Opinionated Software Design

Headless CMS

PWA vs Native Apps

Deno js

AI images