Caixa de ferramentas da Arquitetura de Software Como tornar suas aplicações mais escaláveis, confiáveis e seguras
Eduardo Felipe Zambom SantanaConteúdo
No desenvolvimento de qualquer aplicação, a Arquitetura de Software emerge como a pedra fundamental que sustenta o edifício digital. Enquanto muitos desenvolvedores focam exclusivamente no código, a verdadeira maestria está na compreensão e implementação de estruturas arquiteturais sólidas. À medida que uma aplicação se expande, enfrentando desafios como a gestão de grandes volumes de dados, a proteção contra ataques cibernéticos e a demanda por escalabilidade, a importância da Arquitetura de Software se torna cada vez mais evidente.
Neste livro, Eduardo Zambom equipará você com as ferramentas e conhecimentos essenciais para enfrentar os desafios da Arquitetura de Software moderna, abordando desde os conceitos fundamentais da área até as complexidades de requisitos não funcionais como desempenho, confiabilidade e segurança. Você descobrirá como fazer as melhores escolhas para otimizar a sua aplicação, fortalecê-la contra falhas e implementar medidas sólidas para torná-la segura. Seja você uma pessoa iniciante ou veterana no desenvolvimento de software, este livro constitui um recurso prático para que você aprenda a desenvolver aplicações mais robustas e eficazes.
Sumário
Parte 1: Introdução à Arquitetura de Software
- 1 Arquitetura de software
- 2 Modelos de Arquitetura de Software
- 2.1 Monólito
- 2.2 Arquiteturas distribuídas
Parte 2: Desempenho
- 3 Desempenho
- 3.1 Escalabilidade
- 3.2 Elasticidade
- 4 Desempenho e escalabilidade no código
- 4.1 Melhorias na implementação
- 4.2 Cache
- 4.3 Índices
- 4.4 Comunicação assíncrona
- 5 Desempenho e escalabilidade na infraestrutura
- 5.1 Melhoria de hardware
- 5.2 Balanceamento de carga
- 5.3 Cache na infraestrutura
Parte 3: Confiabilidade
- 6 Confiabilidade
- 6.1 Tolerância a falhas
- 6.2 Disponibilidade
- 6.3 Monitoramento
- 6.4 Recuperabilidade
- 7 Confiabilidade no código
- 7.1 Tratamento de exceções
- 7.2 Timeouts
- 7.3 Limitação de taxa (Rate limiting)
- 7.4 Monitoramento
- 8 Confiabilidade na infraestrutura
- 8.1 Balanceamento de carga
- 8.2 Recuperabilidade
- 8.3 Deployability
Parte 4: Segurança
- 9 Segurança
- 9.1 Controle de acesso
- 9.2 Confidencialidade
- 9.3 Monitoramento
- 9.4 Certificações de segurança
- 10 Segurança no código
- 10.1 Confidencialidade
- 10.2 Monitoramento na segurança
- 10.3 Outros problemas de segurança
- 11 Segurança na infraestrutura
- 11.1 Confidencialidade na infraestrutura
- 11.2 Monitoramento
- 11.3 Auditoria
- 11.4 Integridade
- 11.5 Tipos de ataques
Parte 5: Outros requisitos não funcionais
- 12 Outros requisitos
- 12.1 Usabilidade
- 12.2 Portabilidade
- 12.3 Corretude
- 12.4 Testabilidade
- 12.5 Manutenibilidade
- 12.6 Reprodutibilidade
- 12.7 Documentação
- 12.8 Custo e tempo
Autor
Eduardo Felipe Zambom Santana
Eduardo Felipe Zambom Santana tem mais de 15 anos de experiência em Engenharia de Software. Trabalha principalmente como Java, já tendo trabalhado com os principais frameworks da linguagem como Struts, JSF e Spring. Também tem bastante experiência em outras linguagens como Python e Erlang. Formou-se em Ciência da Computação na UFSCar (2007), fez mestrado também na UFSCar (2010) e doutorado na USP (2019) trabalhando na área de sistemas distribuídos.
Dados do produto
- Número de páginas:
- 191
- ISBN:
- 978-85-5519-367-5
- Data publicação:
- 03/2024