Explique le concept de commit manuel dans Kafka
Golang
Comment les données sont-elles stockées dans la base de données?
Pourquoi devons-nous interrompre le contexte dans la structure ? Pourquoi terminer les travailleurs ? Nous voulons interrompre la méthode Stop.
As-tu des questions pour moi?
Quelle est la différence entre HAVING et WHERE?
Que se passait-il si le service plantait et ne lisait pas les messages de Kafka?
Écrivez-vous beaucoup de code asynchrone dans votre travail actuel?
Que se passe-t-il avec le tampon lorsque les goroutines qui écrivent sont bloquées?
Tu ajoutes WaitGroup, pour quoi faire?
Comment l'offset engagé du consommateur fonctionne-t-il dans différents modes?
Comment rendre une structure de données générique (fonctionnant avec n'importe quel type de valeur) en Go?
Index composés : que doit-on mettre en premier : égalité ou plage ?
Différence entre une machine virtuelle et un conteneur
Quelle est la différence entre RIGHT JOIN et les autres JOIN ? Qu'est-ce que CROSS JOIN ?
Parle-moi de CQRS
Pourquoi avoir choisi Kafka plutôt que d'autres bus (RabbitMQ, NATS) ?
Comment implémenter une carte ordonnée en Go qui garantit l'ordre des clés lors de l'itération?
Comment ajouter un contexte à la méthode Stop pour pouvoir interrompre l'attente de l'exécution des tâches avec un délai d'expiration?
Quels autres percentiles avez-vous utilisés?
// Écrire un gestionnaire de tâches asynchrone comme une bibliothèque // Le client transmet un objet (Task) avec des données pour exécuter la tâche, // dans notre exemple, nous utiliserons une structure vide. // Le gestionnaire peut traiter simultanément pas plus de N tâches, // et pas plus de X tâches peuvent être mises en file d'attente pour traitement. // S'il n'y a pas de place dans la file, une erreur est renvoyée immédiatement au client. // La tâche est prise en charge si des gestionnaires libres sont disponibles. // Nous simulons la durée du traitement avec time.Sleep(5*time.Second). // Dès qu'une tâche est terminée, nous prenons la suivante dans la file. // Si la file est vide, nous attendons de nouvelles tâches des clients. // Avec une étoile : compléter la structure Task et obtenir les statuts des tâches via une requête séparée.