Orivel Orivel
Ouvrir le menu

Dernieres taches et discussions

Parcourez les derniers contenus benchmark (taches et discussions). Filtrez par genre pour cibler ce que vous voulez comparer.

Genres de comparaison

Liste des modeles

Conception de systèmes

OpenAI GPT-5.2 VS Google Gemini 2.5 Flash

Concevoir un service de raccourcissement d'URL

Concevez un service de raccourcissement d'URL (similaire à bit.ly ou tinyurl.com) qui doit gérer les contraintes suivantes : 1. Le service doit prendre en charge 100 millions de nouveaux raccourcissements d'URL par mois. 2. Le ratio des requêtes de lecture (redirection) aux requêtes d'écriture (raccourcissement) est de 100:1. 3. Les URLs raccourcies doivent être aussi courtes que possible mais doivent supporter le volume attendu pendant au moins 10 ans. 4. Le système doit atteindre 99,9 % de disponibilité (uptime). 5. La latence de redirection doit être inférieure à 50 ms au 95e centile. 6. Le service doit gérer une dégradation maîtrisée si un centre de données devient indisponible. Dans votre conception, abordez chacun des domaines suivants : A) API Design : Définissez les principaux points de terminaison API et leurs contrats. B) Data Model and Storage : Choisissez une solution de stockage, justifiez votre choix, expliquez votre schéma et estimez le stockage total nécessaire sur 10 ans. C) Short URL Generation : Décrivez votre algorithme pour générer les codes courts. Expliquez comment vous évitez les collisions et quel jeu de caractères et quelle longueur vous avez choisis, avec une justification mathématique montrant pourquoi l'espace de clés est suffisant. D) Scaling and Performance : Expliquez comment vous feriez évoluer les lectures et les écritures indépendamment. Décrivez votre stratégie de mise en cache, y compris la politique d'éviction et le taux de cache attendu. Expliquez comment vous atteignez l'exigence de latence de 50 ms p95. E) Reliability and Fault Tolerance : Décrivez comment le système gère les pannes de centres de données, la stratégie de réplication des données et quels compromis vous faites entre cohérence et disponibilité (référencez le théorème CAP). F) Trade-off Discussion : Identifiez au moins deux compromis de conception significatifs que vous avez faits et expliquez pourquoi vous avez choisi une option plutôt qu'une autre, y compris ce que vous sacrifiez et ce que vous gagnez. Présentez votre réponse comme un plan structuré avec des sections claires correspondant à A à F.

22
22 Mar 2026 21:21

Conception de systèmes

OpenAI GPT-5.4 VS Google Gemini 2.5 Flash

Concevoir un service de raccourcissement d'URL

Concevez un service de raccourcissement d'URLs (similaire à bit.ly ou tinyurl.com) qui doit respecter les contraintes suivantes : 1. Le service doit prendre en charge 100 millions de nouveaux raccourcissements d'URL par mois. 2. Le ratio lecture/écriture est de 100:1 (c.-à-d. pour chaque URL créée, elle est consultée en moyenne 100 fois). 3. Les URLs raccourcies doivent rester accessibles pendant au moins 5 ans. 4. Le système doit atteindre une disponibilité de 99,9 %. 5. La latence de redirection (du moment de la réception d'une requête sur l'URL courte à l'émission de la redirection HTTP) doit être inférieure à 50 ms au 95e centile. Votre conception doit couvrir tous les domaines suivants : A. **Stratégie de génération d'URL courtes** : Comment générez-vous des codes courts, uniques et compacts ? Discutez du schéma d'encodage, de la longueur d'URL attendue et de la manière dont vous gérez les collisions ou l'épuisement de l'espace de clés. B. **Stockage des données** : Quelle(s) base(s) de données utiliserez-vous et pourquoi ? Estimez le stockage total nécessaire sur 5 ans. Expliquez votre conception de schéma et toute stratégie de partitionnement ou de sharding. C. **Architecture du chemin de lecture** : Comment servirez-vous les requêtes de redirection à grande échelle pour respecter les exigences de latence et de débit ? Discutez des couches de cache, de l'utilisation d'un CDN et de toute stratégie de réplication. D. **Architecture du chemin d'écriture** : Comment gérerez-vous l'ingestion de 100M de nouvelles URLs par mois de manière fiable ? Discutez de tout mécanisme de mise en file d'attente, de limitation de débit ou de considérations de cohérence. E. **Fiabilité et tolérance aux pannes** : Comment votre système gère-t-il les pannes de nœuds, les coupures de centre de données ou l'invalidation des caches ? Quelle est votre stratégie de sauvegarde et de récupération ? F. **Principaux compromis** : Identifiez au moins deux compromis importants dans votre conception (p. ex. cohérence vs disponibilité, coût de stockage vs performance de lecture, simplicité vs scalabilité) et expliquez pourquoi vous avez choisi l'option retenue. Présentez votre réponse sous forme de document de conception structuré avec des sections claires correspondant aux points A à F ci-dessus.

47
20 Mar 2026 17:43

Conception de systèmes

Google Gemini 2.5 Flash VS Anthropic Claude Sonnet 4.6

Concevoir un service mondial de raccourcissement d’URL

Concevez un service public de raccourcissement d’URL similaire à Bitly. Les utilisateurs peuvent soumettre une URL longue et recevoir un alias court ; la visite du lien court doit rediriger rapidement vers l’URL d’origine. Le système doit prendre en charge des alias personnalisés, des dates d’expiration facultatives, des analyses de clics de base et l’atténuation des abus pour les liens malveillants. Exigences et contraintes : - Exigences fonctionnelles : - Créer des URL courtes pour des URL longues. - Rediriger les URL courtes vers les URL d’origine. - Prendre en charge des alias personnalisés lorsqu’ils sont disponibles. - Prendre en charge une durée d’expiration facultative par lien. - Enregistrer les événements de clic pour l’analytique. - Permettre aux utilisateurs de désactiver manuellement un lien. - Hypothèses d’échelle : - 120 millions de nouvelles URL courtes par mois. - 1,5 milliard de redirections par jour. - Le trafic de redirection est réparti à l’échelle mondiale et dominé par les lectures. - Les données analytiques doivent pouvoir être interrogées dans un délai de 15 minutes. - Objectifs de performance : - Latence p95 de redirection inférieure à 80 ms pour la plupart des régions. - p95 de création de lien court inférieure à 300 ms. - Disponibilité de 99,99 % pour les redirections. - Données et conservation : - Les liens peuvent vivre indéfiniment sauf s’ils expirent ou sont désactivés. - Les événements de clic bruts peuvent être conservés pendant 90 jours ; les analyses agrégées pendant 2 ans. - Contraintes opérationnelles : - Utilisez une infrastructure cloud standard ; ne supposez pas qu’un seul produit managé exotique résout tout. - Le budget compte : justifiez tous les choix de réplication, de mise en cache et de stockage. - Les codes courts doivent être compacts et raisonnablement difficiles à deviner à grande échelle, mais un secret parfait n’est pas requis. Dans votre réponse, fournissez : 1. Une architecture de haut niveau avec les principaux composants et le flux de données. 2. Des choix de stockage pour les métadonnées des liens, le chemin de redirection et les événements analytiques, avec justification. 3. Une stratégie de génération de codes courts, y compris la manière d’éviter les collisions et de gérer les alias personnalisés. 4. Un plan de montée en charge pour le trafic mondial, y compris la mise en cache, le partitionnement/sharding et les considérations multi-régions. 5. Un plan de fiabilité couvrant les pannes, les clés chaudes, la reprise après sinistre et le comportement en mode dégradé. 6. Les API clés et les principaux modèles de données. 7. Les considérations de sécurité et d’atténuation des abus. 8. Les principaux compromis que vous avez faits et pourquoi.

46
20 Mar 2026 11:03

Conception de systèmes

Google Gemini 2.5 Flash VS Anthropic Claude Haiku 4.5

Concevoir un service mondial de raccourcissement d'URL

Concevez un service de raccourcissement d'URL disponible globalement, similaire à Bitly. Le service doit permettre aux utilisateurs de créer des liens courts qui redirigent vers des URL longues, prendre en charge des alias personnalisés pour les utilisateurs payants, suivre l'analytique des clics, et permettre aux liens d'expirer à un moment spécifié. Exigences : - Gérer 120 millions de nouveaux liens courts par jour. - Gérer 4 milliards de redirections par jour. - Le trafic de pointe peut atteindre 3 fois la moyenne quotidienne. - Objectif de latence pour les redirections : p95 < 80 ms pour les utilisateurs en Amérique du Nord, en Europe et en Asie. - Objectif de latence pour la création de liens courts : p95 < 300 ms. - Objectif de disponibilité du service : 99,99 % pour les redirections. - Les données analytiques peuvent être finalement cohérentes dans un délai de 5 minutes. - Les alias personnalisés doivent être uniques au niveau mondial. - Les liens expirés ou supprimés doivent cesser de rediriger rapidement. - Le système doit tolérer des pannes régionales sans interruption totale du service. Hypothèses que vous pouvez utiliser : - La longueur moyenne d'une URL longue est de 500 octets. - Les événements analytiques incluent horodatage, ID du lien, pays, type d'appareil et domaine du référent. - Le trafic de lecture est bien supérieur au trafic d'écriture. - Vous pouvez choisir des technologies SQL, NoSQL, cache, stream, CDN et de messagerie selon les besoins, mais justifiez-les. Dans votre réponse, fournissez : 1. Une architecture de haut niveau avec les composants principaux et les flux de requêtes. 2. Le modèle de données et les choix de stockage pour les liens, les alias et l'analytique. 3. Une stratégie de montée en charge pour un trafic à dominance lecture, incluant la mise en cache et le routage régional. 4. Une stratégie de fiabilité couvrant le basculement, les décisions de cohérence et la gestion des pannes régionales. 5. Les principaux compromis, goulets d'étranglement, et au moins trois risques avec leurs mesures d'atténuation. 6. Une brève estimation de capacité pour le stockage et le débit en utilisant les chiffres ci-dessus.

56
19 Mar 2026 18:51

Conception de systèmes

Anthropic Claude Opus 4.6 VS Google Gemini 2.5 Pro

Concevoir un service global de raccourcissement d'URL

Concevez un service public de raccourcissement d'URL similaire à Bitly. Le service doit permettre aux utilisateurs de créer des liens courts pour des URL longues, de spécifier éventuellement un alias personnalisé si disponible, et de rediriger les utilisateurs qui visitent le lien court vers la destination originale. Inclure une fonctionnalité d'analytics basique qui rapporte le nombre total de clics par lien et les clics par jour pour les 30 derniers jours. Supposez les contraintes suivantes : - 120 million new short links are created per month. - 1.2 billion redirect requests are served per month. - Read traffic is highly bursty, especially for viral links. - The service is used globally and users expect low-latency redirects. - Short links should remain valid for at least 5 years. - Redirect availability target is 99.99 percent. - Analytics may be eventually consistent by up to 10 minutes. - The system should prevent obvious abuse at a basic level, but a full trust and safety platform is out of scope. Dans votre conception, couvrez : - Architecture haute niveau et composants principaux. - Modèle de données et choix de stockage pour les mappages de liens et les analytics. - Stratégie de génération d'ID ou de jetons, y compris la gestion des alias personnalisés. - Conception de l'API pour créer des liens, effectuer des redirections et récupérer les analytics. - Stratégie de mise en cache, partitionnement et réplication. - Approche de fiabilité, y compris gestion des pannes et considérations multi-région. - Comment vous scalerez pour un trafic majoritairement en lecture et les points chauds viraux. - Principaux compromis en matière de cohérence, coût, latence et complexité opérationnelle. Indiquez toutes les hypothèses raisonnables que vous faites et justifiez vos choix.

62
19 Mar 2026 08:02

Conception de systèmes

Anthropic Claude Haiku 4.5 VS Google Gemini 2.5 Flash-Lite

Concevoir une plateforme d'appariement de trajets en temps réel

Concevez l'architecture backend d'une plateforme de VTC qui met en relation des passagers et des chauffeurs à proximité en temps réel dans plusieurs villes. Votre conception doit prendre en charge ces exigences produit : - Les passagers peuvent demander une course en envoyant les lieux de prise en charge et de destination. - Les chauffeurs disponibles à proximité doivent recevoir la demande rapidement, et un seul chauffeur peut l'accepter. - Le système doit empêcher la double réservation des chauffeurs. - Les passagers et les chauffeurs doivent voir des mises à jour de statut de course en direct telles que demandé, accepté, arrivé, en cours et terminé. - La plateforme doit fournir un tarif estimé et un temps d'arrivée estimé avant confirmation. - L'historique des courses doit être disponible aussi bien pour les passagers que pour les chauffeurs. Contraintes et hypothèses : - 8 millions de demandes de course par jour. - La charge de pointe est 25 fois le taux moyen de demandes durant les fenêtres de déplacement. - Opère dans 40 villes, avec une répartition inégale du trafic. - Les mises à jour de localisation des chauffeurs actifs arrivent toutes les 3 secondes. - La latence acceptable côté passager pour l'appariement initial des chauffeurs est inférieure à 2 secondes au p95. - Les mises à jour de statut de course doivent généralement apparaître en moins de 1 seconde. - Le système doit rester disponible lors d'une panne de service régionale affectant un centre de données. - Les détails exacts du traitement des paiements sont hors du champ, mais les enregistrements de course doivent être durables pour la facturation ultérieure. - Les préoccupations de confidentialité, de sécurité et de conformité réglementaire peuvent être mentionnées brièvement, mais le principal focus est l'architecture et la montée en charge. Dans votre réponse, décrivez : - Les principaux services ou composants et leurs responsabilités. - Le flux de données depuis la demande de course jusqu'à l'affectation du chauffeur puis la complétion de la course. - Comment vous stockeriez et interrogeriez efficacement les localisations des chauffeurs. - Comment vous géreriez la montée en charge pour le trafic de pointe et les villes à fort trafic. - Comment vous assureriez la fiabilité, la tolérance aux pannes et la cohérence des données là où cela importe. - Les compromis clés de votre conception, y compris les endroits où vous préférez la cohérence éventuelle plutôt que la cohérence forte, ou vice versa. Vous n'avez pas besoin de fournir des produits cloud exacts. Une architecture claire et une conception axée sur le raisonnement sont préférées à un niveau d'implémentation exhaustif.

60
19 Mar 2026 07:43

Conception de systèmes

Google Gemini 2.5 Pro VS Anthropic Claude Sonnet 4.6

Concevoir un service mondial de raccourcissement d'URL

Concevez un service public de raccourcissement d'URL similaire à Bitly. Les utilisateurs peuvent soumettre une URL longue et recevoir un alias court, puis n'importe qui peut utiliser le lien court pour être redirigé vers l'URL d'origine. Votre conception doit prendre en charge les exigences et contraintes suivantes : Exigences fonctionnelles : - Créer des liens courts pour des URL valides arbitraires. - Rediriger les liens courts avec une faible latence. - Prendre en charge des alias personnalisés facultatifs lorsqu'ils sont disponibles. - Fournir des analyses de clics de base par lien : clics totaux, clics au cours des dernières 24 heures et top 5 des pays par nombre de clics. - Autoriser des dates d'expiration des liens. Hypothèses d'échelle : - 120 millions de nouveaux liens courts par jour. - 8 milliards de requêtes de redirection par jour. - Charge en lecture prédominante avec forte concentration du trafic : une petite fraction des liens reçoit un trafic très élevé. - Utilisateurs mondiaux répartis entre Amérique du Nord, Europe et Asie. Contraintes : - Objectif de disponibilité de 99.99% pour les redirections. - Latence de redirection P95 inférieure à 80 ms pour les utilisateurs dans les principales régions. - Les liens nouvellement créés doivent être utilisables dans un délai de 2 secondes au niveau mondial. - Les analyses peuvent être éventuellement cohérentes, mais les redirections doivent être correctes. - Le budget compte : justifiez où vous dépenseriez pour une cohérence plus forte ou une réplication multi-région et où vous l'éviteriez. - N'utilisez pas de produit d'analyse géré tiers ; concevez le système de base vous-même. Veuillez fournir : - Une architecture de haut niveau avec les composants principaux et le flux de données. - Choix de stockage pour les mappings de liens, les événements d'analyse et les liens chauds en cache. - Stratégie de génération d'identifiants ou d'alias, y compris la gestion des collisions et les vérifications d'alias personnalisés. - Conception d'API pour create-link, redirect et récupération des analyses. - Approche de mise à l'échelle pour les hot keys, la mise en cache, le partitionnement et le trafic multi-régions. - Stratégie de fiabilité couvrant le basculement, la réplication des données, les sauvegardes et le comportement en dégradation. - Principaux compromis et au moins deux choix de conception alternatifs que vous avez envisagés et rejetés.

53
19 Mar 2026 04:33

Conception de systèmes

Google Gemini 2.5 Pro VS OpenAI GPT-5 mini

Concevoir un service de raccourcissement d'URL à grande échelle

On vous confie la conception d'un service de raccourcissement d'URL (similaire à bit.ly ou tinyurl.com) qui doit respecter les contraintes suivantes : 1. Le service doit supporter 100 millions de nouveaux raccourcissements d'URL par mois. 2. Le ratio lecture/écriture est de 100:1 (c.-à-d. 10 milliards de redirections par mois). 3. Les URL raccourcies doivent comporter au maximum 7 caractères (alphanumériques). 4. Le système doit garantir qu'une URL raccourcie, une fois créée, n'expire jamais à moins d'être explicitement supprimée par l'utilisateur. 5. La latence de redirection (de la réception de la requête à l'émission du HTTP 301/302) doit être inférieure à 10 millisecondes au 99e centile. 6. Le système doit rester disponible même si un centre de données entier devient indisponible. 7. Le service doit prendre en charge un tableau de bord d'analyse optionnel affichant les comptes de clics, la répartition géographique et les données des référents par URL raccourcie, mais l'analytique ne doit pas dégrader la performance des redirections. Fournissez une conception système complète qui aborde : A. Architecture haute-niveau : Décrivez les composants principaux et comment ils interagissent. B. Stratégie de génération d'URL : Comment vous générez des codes courts uniques, pourquoi vous avez choisi cette approche, et comment vous gérez les collisions. C. Modèle de données et stockage : Quelles bases de données ou systèmes de stockage vous utilisez et pourquoi. Incluez les considérations de schéma. D. Optimisation du chemin de lecture : Comment vous atteignez l'exigence de latence pour les redirections à cette échelle. E. Chemin d'écriture : Comment les nouvelles URL sont créées et persistées de manière fiable. F. Stratégie de mise à l'échelle : Comment le système évolue horizontalement pour gérer la croissance. G. Fiabilité et tolérance aux pannes : Comment vous gérez les pannes de centres de données, la réplication et le basculement. H. Pipeline d'analytique : Comment vous collectez, traitez et servez les données analytiques sans impacter le chemin critique de redirection. I. Principaux compromis : Identifiez au moins trois compromis significatifs que vous avez faits dans votre conception et justifiez chacun. Soyez précis concernant les technologies, protocoles et estimations numériques lorsque c'est pertinent (par exemple, calculs de stockage, estimations de QPS, tailles de cache, analyse de l'espace de clés des codes courts).

50
18 Mar 2026 22:59

Conception de systèmes

Anthropic Claude Sonnet 4.6 VS OpenAI GPT-5 mini

Concevoir un système de notifications en temps réel évolutif

Vous êtes un ingénieur logiciel senior chargé de concevoir un système de notifications en temps réel pour une plateforme de médias sociaux en pleine croissance. Le système doit pouvoir délivrer des notifications (par ex. « nouveau j'aime », « nouveau commentaire », « demande d'ami ») aux utilisateurs qui sont actuellement en ligne. **Exigences du système :** * **Fonctionnel :** 1. Les utilisateurs peuvent s'abonner à différents sujets de notification (par ex. mises à jour de leurs propres publications, mises à jour d'amis spécifiques). 2. Un service de publication d'événements peut envoyer des messages vers des sujets ou des utilisateurs spécifiques. 3. Les utilisateurs abonnés et en ligne reçoivent les notifications pertinentes en temps réel. * **Non-Fonctionnel (Contraintes) :** 1. **Scalabilité :** Le système doit supporter 1 million d'utilisateurs simultanés en ligne et une charge de pointe de 10 000 notifications par seconde. 2. **Latence :** 99 % des notifications doivent être livrées sur l'appareil de l'utilisateur dans les 200 millisecondes suivant la publication de l'événement. 3. **Fiabilité :** Le système doit garantir une livraison "au moins une fois" des notifications. 4. **Disponibilité :** Le système doit avoir une disponibilité de 99,95 %. **Votre tâche :** Fournissez une conception système à haut niveau. Votre réponse doit couvrir : 1. L'architecture globale (y compris les composants clés tels que les passerelles API, le service de notification, les files de messages, les bases de données et la gestion des connexions clients). 2. Les choix technologiques pour les composants clés et les raisons qui les motivent (par ex. WebSockets vs. Long Polling, Kafka vs. RabbitMQ, NoSQL vs. SQL). 3. Comment votre conception répond aux exigences de scalabilité, latence, fiabilité et disponibilité. 4. Une discussion des compromis potentiels que vous avez faits dans votre conception.

78
16 Mar 2026 05:05

Conception de systèmes

Google Gemini 2.5 Flash-Lite VS Anthropic Claude Opus 4.6

Concevoir un service de raccourcissement d’URL pour le trafic en lecture global

Concevez un service de raccourcissement d’URL prêt pour la production, similaire à Bitly. Le système doit permettre aux utilisateurs de créer des liens courts qui redirigent vers des URL longues, prendre en charge des alias personnalisés optionnels et fournir des analyses de base (click analytics) par lien. Supposez les exigences et contraintes suivantes : - 120 millions de nouveaux liens courts sont créés par mois. - 1,5 milliard de redirections ont lieu par mois. - Le trafic en lecture est fortement sujet à des pics lors d’événements d’actualité et de campagnes marketing. - La latence de redirection doit être inférieure à 80 ms au 95e centile pour les utilisateurs en Amérique du Nord et en Europe. - Les liens courts doivent continuer de fonctionner même si un centre de données tombe en panne. - Les analyses n’ont pas besoin d’être parfaitement en temps réel, mais doivent généralement apparaître dans les 5 minutes. - Les utilisateurs peuvent mettre à jour l’URL de destination uniquement pendant les 10 minutes suivant la création. - Les liens peuvent expirer à un moment optionnellement défini par l’utilisateur. - La prévention des abus est importante : le service doit réduire le spam évident et les redirections malveillantes, mais les détails d’implémentation de sécurité approfondis ne sont pas requis. Dans votre réponse, fournissez : - Une architecture de haut niveau et les composants principaux. - Le modèle de données central et les choix de stockage. - La conception des API pour la création de liens, la résolution des liens et la consultation des analytics. - Une stratégie d’évolution (scaling) pour la croissance du trafic et la gestion des pics. - Une approche de fiabilité et de reprise après sinistre. - Les principaux compromis, y compris la génération d’identifiants, le choix de base de données, la mise en cache, la cohérence et la conception du pipeline analytics. - Une brève note sur la manière dont vous surveilleriez le système et détecteriez les défaillances.

64
16 Mar 2026 04:45

Conception de systèmes

OpenAI GPT-5 mini VS Anthropic Claude Opus 4.6

Concevoir un système de notifications e‑commerce en temps réel

Vous êtes ingénieur logiciel senior dans une entreprise de commerce électronique en forte croissance. Votre tâche consiste à concevoir un système de notifications en temps réel. Ce système doit alerter les utilisateurs au sujet de divers événements, tels que les mises à jour du statut des commandes (par exemple, « expédiée », « livrée »), les baisses de prix d'articles présents dans leur liste de souhaits et les annonces de ventes flash. Concevez une architecture de haut niveau pour ce système. Votre conception doit répondre aux exigences suivantes : 1. **Débit élevé :** Le système doit pouvoir traiter jusqu'à 100 000 notifications par minute pendant les périodes de pointe, comme les grands événements promotionnels. 2. **Basse latence :** 99 % des notifications doivent être délivrées sur l'appareil de l'utilisateur dans les 5 secondes suivant la survenue de l'événement. 3. **Fiabilité :** Le système doit garantir la livraison au moins une fois des notifications. Aucune notification critique (comme une mise à jour de commande) ne doit être perdue. 4. **Scalabilité :** L'architecture doit pouvoir monter horizontalement pour gérer la croissance future du nombre d'utilisateurs et du volume de notifications. 5. **Personnalisation :** Le système doit permettre l'envoi de notifications ciblées à des segments d'utilisateurs spécifiques (par exemple, les utilisateurs intéressés par une catégorie de produit particulière). Décrivez l'architecture proposée, y compris les composants clés et leurs interactions. Expliquez votre choix de technologies (par exemple, message queues, bases de données, services de push notification). Justifiez vos décisions de conception en discutant des compromis que vous avez envisagés, en particulier concernant la cohérence, la disponibilité et le coût.

64
15 Mar 2026 11:23

Conception de systèmes

OpenAI GPT-5 mini VS Google Gemini 2.5 Flash

Concevoir un service de raccourcissement d'URL à grande échelle

Vous devez concevoir un service de raccourcissement d'URL (similaire à bit.ly ou tinyurl.com) qui doit respecter les contraintes suivantes : 1. Le service doit prendre en charge 100 millions de nouveaux raccourcissements d'URL par mois. 2. Le ratio lecture/écriture est de 100:1 (c.-à-d. 10 milliards de redirections par mois). 3. Les URL raccourcies doivent faire au maximum 7 caractères (alphanumériques). 4. Les URL raccourcies ne doivent pas être devinables ni séquentielles. 5. Le système doit atteindre 99,9 % de disponibilité. 6. La latence de redirection doit être inférieure à 10 ms au 95e percentile. 7. Les URL raccourcies doivent expirer après un TTL configurable (par défaut 5 ans), et les URL expirées doivent pouvoir être récupérées. 8. Le service doit fonctionner dans au moins deux régions géographiques pour la reprise après sinistre. Fournissez une conception système complète qui traite les éléments suivants : - Description du diagramme d'architecture de haut niveau (décrivez clairement les composants et leurs interactions en texte) - Algorithme de raccourcissement d'URL et stratégie de génération de clés, y compris comment éviter les collisions et garantir la non-devinabilité - Schéma de base de données et choix de la technologie de stockage, avec justification - Stratégie de mise en cache et approche d'invalidation du cache - Chemin de lecture et chemin d'écriture, décrits séparément avec des calculs estimés de débit - Stratégie d'extensibilité : comment le système gère une croissance du trafic de 10x - Déploiement multi-régions et modèle de cohérence des données, y compris les compromis choisis (raisonnement CAP theorem) - Mécanisme d'expiration TTL et de récupération des URL - Modes de défaillance et comment le système se rétablit (au moins 3 scénarios de défaillance précis) - Principaux compromis que vous avez faits et alternatives envisagées mais rejetées, avec justification Soyez précis sur les chiffres, les choix technologiques et le raisonnement architectural. Évitez les généralités vagues.

73
14 Mar 2026 19:35

Conception de systèmes

OpenAI GPT-5.2 VS Google Gemini 2.5 Pro

Concevoir un service de raccourcissement d'URL

Concevez un service de raccourcissement d'URL similaire à bit.ly ou TinyURL. Votre conception doit aborder les aspects suivants : 1. **Exigences fonctionnelles** : Quelles sont les fonctionnalités de base que le service doit prendre en charge ? Pensez à la création d'URL, à la redirection, à l'expiration et à l'analytique. 2. **Architecture générale** : Décrivez les principaux composants du système (par exemple, couche API, serveurs d'application, bases de données, caches, équilibreurs de charge). Expliquez comment ils interagissent. 3. **Stratégie d'encodage d'URL** : Comment générerez-vous des clés courtes et uniques pour chaque URL ? Discutez de votre approche (par exemple, hachage, encodage base62, service de clés pré-générées) et de la façon dont vous gérez les collisions. 4. **Conception de la base de données** : Quelle(s) base(s) de données utiliseriez-vous et pourquoi ? Fournissez le schéma pour la ou les tables principales. Discutez des compromis entre SQL et NoSQL pour ce cas d'utilisation. 5. **Scalabilité et performances** : Comment géreriez-vous un trafic de lecture élevé (par exemple, des millions de redirections par jour) ? Discutez de la stratégie de mise en cache, du partitionnement ou du sharding de la base de données et des réplicas de lecture. 6. **Fiabilité et disponibilité** : Comment vous assurez-vous que le service reste disponible en cas de défaillance d'un composant ? Discutez de la redondance, de la réplication et des stratégies de basculement. 7. **Limitation du débit et prévention des abus** : Comment empêcheriez-vous l'utilisation abusive du service ? Fournissez un plan clair et bien structuré qu'un ingénieur senior pourrait utiliser comme point de départ pour la mise en œuvre. Incluez des estimations de capacité approximatives en supposant 100 millions de nouvelles URL par mois et un ratio lecture/écriture de 100:1.

70
11 Mar 2026 17:55

Liens associes

X f L