Sobes.tech

Java

Como tornar uma pilha universal para trabalhar não apenas com Integer, mas também com String e objetos personalizados?

179

O que deve ser considerado ao criar um índice em uma tabela grande em produção?

172

Escreva a sua própria classe que implemente uma pilha, com métodos push, pop e peekMax, que retorne o elemento máximo na pilha em O(1).

161

Por que é necessário SELECT FOR UPDATE em vez de synchronized? E por que bloqueio pessimista em vez de otimista?

156

Por que ocorrerá um StackOverflowError se não houver variáveis locais? Como a memória será preenchida?

153

O que fazer se processFile não conseguir ser executado após confirmar a transação?

152

Por que não é possível simplesmente usar uma variável max em vez da segunda pilha?

147

Existe um sistema que permite aos utilizadores trabalhar com ficheiros no navegador. A stack padrão: Java, Spring, React, Postgres. Os ficheiros são armazenados no sistema de ficheiros no backend, os metadados dos ficheiros na base de dados. A equipa implementou uma funcionalidade: @Transactional public void process(String oldName, String newName) { Long id = exec("select id from file where name='" + oldName + "'"); // execução de uma consulta à base de dados processFile(oldName, newName); // renomear o ficheiro no disco exec("update file set name='" + newName + "' where id = " + id); // execução de uma consulta à base de dados }

141

É possível otimizar a pilha em memória para que não haja consumo x2?

135

Há um backend, há uma interface de utilizador. A pilha tecnológica é padrão: Java, Spring, React, Postgres. Tarefa: Projetar um endpoint REST que deve obter dados de 3 fontes e entregá-los à UI, garantindo a maior capacidade possível e o menor tempo de resposta possível (critérios máximos/mínimos de acordo com as nossas condições específicas, pois na prática não há uma solução mágica e é preciso encontrar um compromisso). Sabe-se que o pico esperado de RPS neste endpoint será de 200. Detalhes conhecidos sobre as fontes: 1. Fonte - nossa base de dados, consulta cerca de 15 segundos. 2. Fonte - serviço REST relacionado, degrada até 2 minutos sob 100 RPS, responde em 5 segundos em modo normal. Não podemos alterar seu comportamento. 3. Fonte - serviço REST relacionado, responde aleatoriamente (não foram identificados padrões específicos) com erros 503, responde em 10 segundos em modo normal. Não podemos alterar seu comportamento.

124

Que tipo de índice usar para procurar no meio ou no final de uma string (LIKE '%texto%')?

123

Escreva um método muito simples que, ao ser executado, lance um StackOverflowError.

120