Você Tem Curisidade e Coragem. Mas Não Basta.
Parabéns, jovem padawan da nuvem! Reconstruir a AWS é como tentar escalar o Everest. Mas você esta de chinelos.
Seu “S3” atual? Um hello world glorificado. Um NGINX com autoindex on; e um formulário HTML de upload é mais robusto, escalável e seguro que seu código. Mas reconheço sua ambição. Você está no caminho certo… se aguentar a porrada que vem a seguir. Mas no final:
- Seu "S3" terá mais fundamento que 99% dos projetos no GitHub.
- Você vai rir de termos como "serverless" e "cloud-native".
- Recrutadores da AWS vão te mandar DM no LinkedIn.
Aula 1: C ou Morte – Onde a Infra Nasce (e Seus Sonhos Morrem?)
Verdade Cruel: Actix é um playground para crianças. Enquanto você brinca de route("/upload"), o kernel śo entende epoll.h sockets.h, pthreads.h para lidar com milhões de conexões. Seu código Rust é um disfarce bonito para a ignorância.
Lição: C te ensina o que Rust esconde: alocação de memória, syscalls, e o gosto amargo do fracasso.
Exercícios de Humilhação:
-
Desafio Fácil: Escreva um servidor HTTP em C que responde 'Hello World'. Use socket(), bind(), listen(), accept().
Vai travar na primeira conexão. Bem-vindo à vida real. -
Desafio Médio: Adicione suporte centenas de concorrentes com pthreads.h.
-
Desafio Dificl: Suporte a milhares conexões concorrentes com um thread pool
-
Desafio Hardcore: Escalone para dezenas de milhares de conexoes usando epoll e threads
Aula 2: Filesystems – Onde Seus Dados Choram (e Você Também)
Verdade Cruel: Seu “S3” salva arquivos em pastas como um estagiário bêbado. Você está usando uma vassoura para cavar um buraco.
Lição: Dados são sagrados. Se você não trata eles como tal, seu S3 é um sacrilégio.
Exercícios de Sadismo Criativo :
- Desafio Fácil: Configure ZFS numa VM. Crie um snapshot, corrompa um arquivo, e restaure.
- Desafio Médio: Crie um filesystem FUSE em Rust que representa arquivos e pastas como blobs e metadata no SQLite.
- Desafio Hardcore: Implemente Merkle Trees para detectar corrupção de arquivos. Divida um arquivo em chunks, gere hashes, e reconstrua como um quebra-cabeça.
Aula 3: Redes – Onde Pacotes Viram Pesadelos (e Você Vira Engenheiro de Infra)
Verdade Cruel: Seu S3 não sabe o que é uma ameaça. Enquanto isso, a AWS usa eBPF/XDP para filtrar ataques no kernel.
Lição: Rede é guerra. Se você não domina o kernel, é só um soldado de brinquedo.
Exercícios de Tortura Kerneliana:
- Desafio Fácil: Bloqueie IPs com mais de 100 reqs/segundo usando iptables.
- Desafio Hardcore: Use eBPF para medir o tempo entre accept() e write() no disco.
- Desafio Insano: Redirecione tráfego entre VMs com XDP.
Aula Final: Formatura do Jardim de Infância da Infra.
Você é um Diamante. Enquanto outros brincam de Kubernetes, você está cavando as camadas mais profundas.
A AWS começou com um servidor PHP e um sonho. Você começou com Rust e arrogância. Mas daqui a 10 anos, talvez eu trabalhe para você.
Projeto Final: Reescreva seu S3 com
- hyper.rs
- Rate limiting via eBPF
- Sistema de arquivos em ZFS
Depois, volte aqui. Vou te ensinar como construir um hipervisor do zero.
Um abraço e bons estudos!