← Voltar para a lista de provas Tribunal de Justiça do Estado do Pará (TJPA) · Analista Judiciário – Especialidade: Análise de Sistemas 70 questões nesta prova · página 2 de 4 · 65 com gabarito Gabarito disponível PDB com maxUnavailable: 0 não impede drain por completo nem garante 'nenhuma interrupção'. Um PodDisruptionBudget protege apenas contra desocupações voluntárias que usam a Eviction API, como o drain. Com maxUnavailable: 0, as evicções ficam bloqueadas e o drain trava. Mas ele não protege contra falhas involuntárias nem contra remoção forçada. Assim, a afirmativa de que garante que nenhum pod seja interrompido é incorreta. A (Certo) está incorreta, pois o PDB só atua em disrupções voluntárias via eviction. B (Errado) está correta. Referência: Documentação do Kubernetes — Pod Disruption Budgets. Resolução comentada do VaiConcursos. Gabarito disponível ImageStream e triggers de atualização automática (gabarito: Certo). No OpenShift, o ImageStream monitora imagens e, com triggers de imagem, permite que Deployments/DeploymentConfigs e BuildConfigs sejam atualizados automaticamente quando uma nova imagem é publicada. Por isso é o mecanismo central para essas atualizações, e pode referenciar imagens entre namespaces e registros externos. Conforme o gabarito, a afirmativa é considerada correta. A (Certo) está correta conforme o gabarito. B (Errado) está incorreta segundo a banca, que considerou o ImageStream o mecanismo-chave de atualização automática. Referência: Documentação Red Hat OpenShift — Image Streams e image triggers. Resolução comentada do VaiConcursos. Questão anulada Gabarito disponível MapStruct permite mapear propriedades de nomes diferentes. O MapStruct mapeia automaticamente propriedades de mesmo nome, mas permite configurar nomes diferentes com @Mapping(source, target). Propriedades de destino sem origem geram apenas aviso, por padrão, e não erro. Logo, não é exigido o mesmo nome. A (Certo) está incorreta, pois há o @Mapping para nomes distintos. B (Errado) está correta. Referência: Documentação do MapStruct (@Mapping). Resolução comentada do VaiConcursos. Questão anulada Gabarito disponível Clientes Eureka se registram automaticamente na inicialização. No Spring Cloud Netflix Eureka, o cliente se registra no servidor ao iniciar, enviando metadados como nome da aplicação, IP/hostname e porta, e depois envia heartbeats para renovar o registro. A (Certo) está correta. B (Errado) está incorreta, pois descreve o comportamento padrão do cliente Eureka. Referência: Documentação Spring Cloud Netflix Eureka. Resolução comentada do VaiConcursos. Gabarito disponível format não é obrigatório em JSON Schema/OpenAPI. O atributo format é opcional e refina a semântica de um tipo (ex.: string com date ou email). Sua ausência não invalida o esquema. A assertiva erra ao dizer que é obrigatório. A (Certo) está incorreta, pois format é opcional. B (Errado) está correta. Referência: Especificação OpenAPI (Data Types); JSON Schema (format). Resolução comentada do VaiConcursos. Gabarito disponível No DDD, as responsabilidades das camadas estão invertidas. A domain layer contém a lógica de negócio e as regras de domínio. A infrastructure layer fornece suporte técnico, como persistência, conexões com banco e chamadas a APIs externas. A assertiva troca os papéis das camadas. A (Certo) está incorreta por inverter as camadas. B (Errado) está correta. Referência: Eric Evans, Domain-Driven Design (arquitetura em camadas). Resolução comentada do VaiConcursos. Gabarito disponível YAML não precisa seguir a sintaxe JSON. YAML pode ser escrito em sua sintaxe própria (indentação, listas com hífen etc.). Para validação por esquema, basta que o conteúdo seja convertível ao modelo de dados compatível com JSON, não que a sintaxe seja de JSON. Exigir sintaxe JSON é incorreto. A (Certo) está incorreta, pois confunde modelo de dados com sintaxe. B (Errado) está correta. Referência: Especificação OpenAPI (formato YAML/JSON); YAML 1.2. Resolução comentada do VaiConcursos. Gabarito disponível format é opcional, não valida por padrão e varia entre ferramentas. No JSON Schema, format é uma anotação opcional e, por padrão, não é validada (validação de format é opcional para implementações). A OpenAPI define formatos como int32, int64, float, double, byte, binary, date, date-time e password, mas o suporte depende da ferramenta. A (Certo) está correta. B (Errado) está incorreta, pois a assertiva corresponde à especificação. Referência: Especificação OpenAPI (Data Types) e JSON Schema (format). Resolução comentada do VaiConcursos. Gabarito disponível Strategy favorece o OCP, não o viola. O Strategy encapsula algoritmos intercambiáveis atrás de uma interface, e o contexto usa composição, não herança entre algoritmos. Novas estratégias são adicionadas criando novas classes, sem modificar o contexto, o que está de acordo com o OCP. A (Certo) está incorreta, pois inverte o efeito do padrão: ele favorece composição e o OCP. B (Errado) está correta. Referência: Gamma et al., Design Patterns (Strategy); princípio Open/Closed. Resolução comentada do VaiConcursos. Gabarito disponível Cifra de fluxo não exige chave nova enviada junto a cada pacote. Em cifras de fluxo, o essencial é nunca reutilizar o par chave/nonce (IV). O usual é usar uma chave de sessão e um nonce distinto por pacote. Enviar uma nova chave simétrica junto com cada pacote seria inseguro, pois o atacante a interceptaria, e é inviável com baixa largura de banda e baixa latência. Portanto, não é necessário. A (Certo) está incorreta: a chave não deve trafegar com o dado e a variação por pacote é feita pelo nonce. B (Errado) está correta. Referência: Boas práticas de criptografia simétrica (cifras de fluxo, nonce/IV, ex.: ChaCha20). Resolução comentada do VaiConcursos. Gabarito disponível Clean code: legibilidade e comentários só quando necessários. O clean code prega código autoexplicativo, com bons nomes e baixo ruído. Comentários devem ser exceção, usados quando a intenção não pode ser expressa pelo próprio código. A afirmativa reflete essa diretriz. A (Certo) está correta. B (Errado) está incorreta, pois a assertiva está alinhada às ideias de Robert C. Martin. Referência: Robert C. Martin, Clean Code, cap. 4 (Comentários). Resolução comentada do VaiConcursos. Gabarito disponível Extract superclass não esconde delegações; é para eliminar duplicação. Extract Superclass é aplicado quando duas classes têm características semelhantes: cria-se uma superclasse e sobem-se os membros comuns, reduzindo duplicação. Esconder dependências indiretas e encapsular delegações corresponde ao Hide Delegate, não ao Extract Superclass. A (Certo) está incorreta, pois confunde a técnica com Hide Delegate. B (Errado) está correta. Referência: Fowler, Refactoring; Refactoring.Guru (Extract Superclass, Hide Delegate). Resolução comentada do VaiConcursos. Gabarito disponível Karma: browserDisconnectTolerance tem padrão 0. No Karma, browserDisconnectTolerance define quantas vezes o navegador pode se desconectar e reconectar durante a execução dos testes, tolerando falhas temporárias. O valor padrão é 0, ou seja, nenhuma tolerância: a desconexão faz a execução falhar. A afirmativa descreve isso corretamente. A (Certo) está correta. B (Errado) está incorreta, pois a descrição e o valor padrão correspondem à documentação do Karma. Referência: Documentação do Karma — configuração browserDisconnectTolerance (padrão 0). Resolução comentada do VaiConcursos. Gabarito disponível O SonarQube não exige compilação para linguagens interpretadas. O item é errado. A análise estática do SonarQube de Python e JavaScript é feita diretamente sobre o código-fonte, sem compilação. A compilação é necessária apenas em algumas linguagens compiladas, como Java (bytecode), C# e C/C++, para análises mais completas. A) Errada, pois generaliza uma exigência que existe só para algumas linguagens. B) Certa, pois nega essa exigência universal. Referência: Documentação SonarQube (análise de linguagens e scanners). Resolução comentada do VaiConcursos. Gabarito disponível RabbitMQ permite comunicação assíncrona por filas com entrega confiável. O item está correto conforme o gabarito. O RabbitMQ é um message broker em que producers enviam mensagens para filas e consumers as recebem de forma assíncrona. Com confirmações (acks), persistência e filas duráveis, oferece entrega confiável em sistemas distribuídos. A) Certa, pois descreve o funcionamento básico e a confiabilidade do RabbitMQ. B) Errada, pois nega essas características. Referência: Documentação RabbitMQ (AMQP, queues, acknowledgements). Resolução comentada do VaiConcursos. Gabarito disponível No Kafka, producer e consumer usam kafka-clients, com serializadores e desserializadores distintos. O item está correto. Ambos usam a dependência Maven kafka-clients. O producer configura key.serializer e value.serializer, enquanto o consumer configura key.deserializer, value.deserializer e, em geral, group.id. A) Certa, pois descreve corretamente a dependência comum e as configurações distintas. B) Errada, pois nega fatos corretos. Referência: Documentação Apache Kafka (Producer Configs e Consumer Configs). Resolução comentada do VaiConcursos. Gabarito disponível WebSockets não dispensam filas nem retentativas em webhooks/API reversa. O item é errado. Webhooks (API reversa) funcionam por chamadas HTTP do provedor ao consumidor, e a entrega confiável exige filas, retentativas e confirmação. Os WebSockets não garantem entrega se o destinatário estiver indisponível. Por isso, não dispensam esses mecanismos. A) Errada, pois confunde o mecanismo e dispensa indevidamente filas e retentativas. B) Certa, pois nega essa dispensa. Referência: Boas práticas de webhooks (HTTP callbacks, retry e idempotência). Resolução comentada do VaiConcursos. Gabarito disponível O JSON apresentado tem problemas de formato e de boas práticas. O item é errado. Há aspas tipográficas (“ ”) no lugar de aspas duplas retas, o que torna o JSON inválido. O campo "ativo" está como string "true" em vez do booleano true. A chave "$ schema" é malformada e a URL aparece quebrada. Por isso o código não pode ser usado diretamente, sem adaptações. A) Errada, pois o código não é válido nem segue boas práticas. B) Certa, pois reconhece esses problemas. Referência: RFC 8259 (JSON); boas práticas de modelagem de dados em JSON. Resolução comentada do VaiConcursos.TJPA 2025 — Analista Judiciário – Especialidade: Análise de Sistemas — Prova Objetiva — Conhecimentos Específicos
Ao usar, em um StatefulSet com volume persistente, um PodDisruptionBudget com maxUnavailable: 0, o Kubernetes garantirá que nenhum pod seja interrompido durante operações de manutenção, mesmo que isso impeça a atualização de nós do cluster ou a aplicação de patches de segurança críticos.Resolução comentada
Análise das alternativas
No Openshift, o uso de ImageStream para gerenciar imagens de contêineres é essencial para garantir atualizações automáticas de deployments quando novas versões de uma imagem são construídas, mesmo em ambientes com múltiplos namespaces ou clusters.Resolução comentada
Análise das alternativas
No trecho de código a seguir, se config.name estiver definido como Spring em algum arquivo de configuração da aplicação, o Spring Boot injetará o valor na variável name, exibindo Hello Spring ao acessar a rota “/”.
@Configuration
@EnableAutoConfiguration
@RestController
public class Application {
@Value(“$ {config.name}”)
String name = “World”;
@RequestMapping(“/”)
public String home() {
return “Hello “ + name;
}
public static void main(String[] args) {
SpringApplication.run(Application.class,
args);
}
}
O MapStruct exige que todas as propriedades dos objetos de origem e destino tenham exatamente o mesmo nome; caso contrário, o mapeamento falhará durante a compilação.Resolução comentada
Análise das alternativas
Considere que o arquivo application.yml contenha as instruções a seguir.
zuul :
ignoredServices : '*'
rotas :
usuarios : /myusers*
Nesse caso, a configuração ignoredServices : '*' faz que o Zuul ignore todos os serviços automaticamente, enquanto a rota personalizada usuarios : /myusers* define um caminho específico para redirecionamento, o que garante que apenas as rotas explicitamente mapeadas sejam atendidas pelo gateway.
Durante a inicialização, microsserviços configurados como clientes Eureka registram-se automaticamente no servidor Eureka, fornecendo metadados, como nome do serviço, endereço IP ou hostname, e porta.Resolução comentada
Análise das alternativas
No Swagger/OpenAPI, o atributo format em JSON Schema é obrigatório — de modo que sua ausência invalida o esquema — e serve para refinar a semântica de validação de um tipo primitivo, como no caso de strings formatadas como date ou email.Resolução comentada
Análise das alternativas
Em domain‐driven design, a infrastructure layer deve conter a lógica de negócios central e coordenar as regras de domínio, enquanto a domain layer é responsável apenas por implementar detalhes técnicos, como conexões com bancos de dados e chamadas a APIs externas.Resolução comentada
Análise das alternativas
Em arquivos de configuração baseados em esquema, dados YAML devem adotar estrutura e sintaxe compatíveis com o formato JSON, para garantir validação adequada.Resolução comentada
Análise das alternativas
Em JSON Schema, o formato format é opcional e não valida dados por padrão, sendo alguns tipos, como int32 e password, definidos pela OpenAPI, mas seu suporte varia entre ferramentas.Resolução comentada
Análise das alternativas
Em design patterns, o padrão strategy introduz forte hierarquia de herança entre algoritmos, violando o OCP (open/closed principle) ao exigir modificações no contexto sempre que uma nova estratégia é adicionada.Resolução comentada
Análise das alternativas
Considere que um tribunal necessite transmitir dados de processos sensíveis para outras varas remotas, mas esteja enfrentando restrições de largura de banda e requisitos de baixa latência. Considere, ainda, que, a fim de proteger os dados, a equipe pretenda usar criptografia simétrica de fluxo, sem impactar o desempenho da transmissão. Nessa situação, para máxima segurança, será necessário gerar uma nova chave simétrica para cada pacote de dados, que deverá ser enviada junto com o pacote criptografado.Resolução comentada
Análise das alternativas
Um código limpo ou clean code deve priorizar legibilidade semântica e baixo ruído de manutenção, devendo comentários ser usados apenas quando a intenção da lógica não puder ser claramente expressa pelo código em si.Resolução comentada
Análise das alternativas
O refactoring extract superclass é utilizado para esconder dependências indiretas entre objetos, promovendo encapsulamento de delegações e reduzindo o acoplamento estrutural do sistema.Resolução comentada
Análise das alternativas
O parâmetro browserDisconnectTolerance do Karma Runner especifica quantas reconexões são permitidas entre servidor e navegadores durante falhas temporárias de rede, com valor padrão zero (sem tentativas de reconexão).Resolução comentada
Análise das alternativas
O SonarQube exige que todo código analisado seja compilado antes da execução da análise estática, mesmo para linguagens interpretadas como Python ou JavaScript.Resolução comentada
Análise das alternativas
O RabbitMQ permite a comunicação assíncrona entre aplicações por meio de filas, em que producers enviam mensagens e consumers as recebem, o que garante entrega confiável em sistemas distribuídos.Resolução comentada
Análise das alternativas
No Kafka, embora producer e consumer utilizem a mesma dependência Maven (kafka-clients), cada um exige configurações distintas: o producer requer, por exemplo, serializadores (key.serializer), enquanto o consumer utiliza desserializadores (key.deserializer).Resolução comentada
Análise das alternativas
Provedores de API reversa devem usar WebSockets para enviar notificações em tempo real, dispensando filas ou mecanismos de retentativa com sistemas externos.Resolução comentada
Análise das alternativas
O código JSON a seguir está de acordo com boas práticas de representação de dados de usuários, e pode ser utilizado diretamente, sem adaptações na integração entre front-end e banco de dados.
{
“usuario”: {
“id”: 12345,
“nome”: “Maria Oliveira”,
“ativo”: “true”,
“permissoes”: [“admin”, “leitura”],
“$ schema”:
“http://meuesquema.com/schema”
},
“status”: true
}Resolução comentada
Análise das alternativas
Em relação a Kubernetes e Openshift, julgue os próximos itens.
Em relação a Kubernetes e Openshift, julgue os próximos itens.
A respeito de arquiteturas de microsserviços, julgue os itens que se seguem.
A respeito de arquiteturas de microsserviços, julgue os itens que se seguem.
A respeito de arquiteturas de microsserviços, julgue os itens que se seguem.
A respeito de arquiteturas de microsserviços, julgue os itens que se seguem.
A respeito de arquiteturas de microsserviços, julgue os itens que se seguem.
Acerca de domain‐driven design, de especificação OpenAPI e de design patterns, julgue os itens a seguir.
Acerca de domain‐driven design, de especificação OpenAPI e de design patterns, julgue os itens a seguir.
Acerca de domain‐driven design, de especificação OpenAPI e de design patterns, julgue os itens a seguir.
Acerca de domain‐driven design, de especificação OpenAPI e de design patterns, julgue os itens a seguir.
A respeito de criptografia, do clean code e das técnicas de refactoring, julgue os itens seguintes.
A respeito de criptografia, do clean code e das técnicas de refactoring, julgue os itens seguintes.
A respeito de criptografia, do clean code e das técnicas de refactoring, julgue os itens seguintes.
Acerca das ferramentas Karma e SonarQube, julgue os itens que se seguem.
Acerca das ferramentas Karma e SonarQube, julgue os itens que se seguem.
Julgue os itens a seguir, em relação aos serviços de mensageria, webhooks e JSON.
Julgue os itens a seguir, em relação aos serviços de mensageria, webhooks e JSON.
Julgue os itens a seguir, em relação aos serviços de mensageria, webhooks e JSON.
Julgue os itens a seguir, em relação aos serviços de mensageria, webhooks e JSON.