Concorrência em Rust: dos fundamentos aos sistemas de alta carga
300 páginas
Portuguese
PDF
4.5

Concorrência em Rust: dos fundamentos aos sistemas de alta carga

Concorrência em Rust: dos fundamentos aos sistemas de alta carga

Autor:

Ano:

Resumo:

O livro «Concorrência em Rust» é um guia abrangente para escrever código paralelo seguro, eficiente e escalável na linguagem Rust. Ao contrário de muitas outras linguagens, onde a concorrência frequentemente leva a bugs difíceis de detectar e condições de corrida, o Rust oferece um sistema único de posse e tipos que garante segurança em tempo de compilação. Este livro mostrará como usar esses recursos ao máximo.



Sobre o que é este livro?

O livro aborda todos os aspectos-chave da programação concorrente em Rust:

  • Fundamentos de threads: criação, gerenciamento e sincronização de threads com std::thread.
  • Dados compartilhados e sincronização: trabalho com tipos Mutex, RwLock, Arc e Atomic para compartilhamento seguro de estado entre threads.
  • Canais e passagem de mensagens: uso de std::sync::mpsc e crossbeam para organizar a troca de dados entre threads sem compartilhamento de memória.
  • Programação assíncrona: imersão profunda no modelo async/await, futures e executores (executors).
  • Bibliotecas populares: exemplos práticos de trabalho com Tokio, async-std e Rayon para construir aplicações de alto desempenho.
  • Tópicos avançados: criação de drivers assíncronos próprios, trabalho com Pin e Unpin, além de padrões de tolerância a falhas.


Para quem é este livro?

O livro é destinado a:

  • Desenvolvedores já familiarizados com os fundamentos do Rust que desejam avançar para a escrita de aplicações multithread e assíncronas.
  • Programadores de outras linguagens (C++, Go, Python) que desejam dominar o modelo seguro de concorrência em Rust.
  • Engenheiros que trabalham com sistemas de alta carga, servidores web, aplicações de rede ou ferramentas de processamento de dados em tempo real.


O que você aprenderá?

Ao ler este livro, você será capaz de:

  • Entender a diferença entre threads e tarefas assíncronas e escolher a ferramenta certa para cada tarefa.
  • Escrever código livre de condições de corrida e deadlocks, usando as garantias do compilador Rust.
  • Usar eficientemente async/await para criar milhares de conexões simultâneas sem sobrecarga significativa.
  • Projetar arquiteturas baseadas em atores, canais e pools de threads.
  • Perfilhar e otimizar aplicações concorrentes para alcançar o máximo desempenho.

Cada capítulo contém exemplos práticos de código que podem ser executados e modificados imediatamente. O livro é escrito em linguagem viva e focado em problemas reais enfrentados por desenvolvedores. Após a leitura, você se sentirá confiante no mundo da programação concorrente em Rust e será capaz de construir sistemas confiáveis, rápidos e seguros.

Recommendations