Sobes.tech

Java

No exemplo de criação de um pedido. Existe uma solicitação para o serviço e uma resposta, entre essas duas ações há uma troca de produtos entre os serviços e externos que são descritos (por exemplo, para contar a popularidade dos produtos). O serviço é executado várias vezes, funciona lentamente ou até mesmo dá timeout e não conseguimos responder, perdemos o pedido. O que fazer para deixar de perder pedidos e, consequentemente, dinheiro?

217

Escreva uma consulta SQL: selecione os nomes dos três autores mais lidos neste momento (que têm mais livros em mãos).

198

Avalie a complexidade algorítmica da solução para o problema do palíndromo. Em termos de tempo e memória. Se o alfabeto for fixo (letras inglesas, 26 caracteres), qual é a complexidade em memória?

190

Para um array de números arr e um número k É necessário devolver um novo array, cujo número de elementos repetidos não seja > k Exemplo: Entrada: arr=[1,1,1,2,3,3,3,4,4], k=3 Saída: res=[1,3,4]

174

É necessário descrever o modelo da biblioteca. Existem 3 entidades: "Autor", "Livro", "Leitor". Fisicamente, há apenas um livro e ele pode estar apenas com um leitor. É necessário criar tabelas para a biblioteca que levem isso em consideração.

169

/** * Implementar a transferência de fundos entre duas contas. Tendo em conta que esta é uma solução de produção * Parâmetros de entrada: * @param fromAccountId identificador único do utilizador que transfere fundos * @param toAccountId identificador único do utilizador para quem os fundos são transferidos * @param amount valor da transferência. Número positivo */ public void transferMoney(Long fromAccountId, Long toAccountId, BigDecimal amount) { }

155

Escreva uma consulta SQL: selecionar os títulos de todos os livros com mais de três autores.

151

/** * chars = ['a', 'a', 'a', 'b', 'b', 'c', 'a'] * return: a3b2ca2 */ class JavaTask3Solution { public String compress(char[] chars) { } }

147

Como escalar o serviço com o crescimento linear da carga? O que fazer quando a escalabilidade horizontal atinge os limites do banco de dados?

146

Padrão Outbox: como garantir a atomicidade da gravação no banco de dados e o envio do evento para a fila?

139

Escreva uma consulta SQL: selecionar os títulos de todos os livros que estão atualmente nas mãos dos leitores.

135

Condições Existem 3 entidades - utilizador, chat, mensagem - O utilizador tem nome e data de registo - O chat tem nome e data de criação - A mensagem tem texto, autor e data de criação - O utilizador pode estar em vários chats ao mesmo tempo - A mensagem deve pertencer a um chat, e não pode pertencer a mais de um chat ao mesmo tempo - Deve-se descrever o domínio em forma de tabelas

134

Como implementar o rate limiting para uma API externa com restrição de RPS? Em que os fluxos virtuais/corrotinas diferem dos threads do sistema?

132

Que tipos de sharding existem? Fale sobre as abordagens principais.

131

Qual é a diferença entre Cassandra e PostgreSQL? Fale sobre as principais diferenças.

129

Existem 3 entidades: utilizador, chat, mensagem - O utilizador tem nome e data de registo - O chat tem nome e data de criação - A mensagem tem texto, autor e data de criação - O utilizador pode estar em vários chats ao mesmo tempo - A mensagem deve pertencer a um chat, e não pode pertencer a mais de um chat ao mesmo tempo - Deve-se descrever o domínio na forma de tabelas

125

Para uma string dada, é necessário determinar o comprimento do maior palíndromo que pode ser formado a partir dos seus caracteres. Um palíndromo é uma palavra que é lida da mesma forma de trás para frente, por exemplo "arara" ou "rever". Exemplo: Entrada: aaabbbcccddd Saída: 11 (palíndromo dccbbaaabbccd)

123

Qual é a complexidade algorítmica da solução com PriorityQueue para o problema Top K Frequent? Qual é a complexidade das operações offer e poll?

122
/2