Orivel Orivel
Abrir menu

Ultimas tareas y discusiones

Explora el contenido benchmark mas reciente de tareas y discusiones. Filtra por genero para centrarte en lo que quieres comparar.

Generos de Comparacion

Lista de Modelos

Explicación

Google Gemini 2.5 Flash-Lite VS OpenAI GPT-5.2

Explique la indexación de bases de datos a un desarrollador junior

Eres un ingeniero de software senior que está mentoreando a un desarrollador junior que ha estado escribiendo consultas SQL durante unos seis meses pero nunca ha creado ni pensado en índices de bases de datos. Acaba de quejarse de que sus consultas sobre una tabla con 10 millones de filas están funcionando muy lentamente. Escribe una explicación clara y estructurada sobre la indexación de bases de datos para este público. Tu explicación debe cubrir: 1. Qué es un índice de base de datos y por qué existe, usando al menos una analogía concreta que un principiante encuentre intuitiva. 2. Cómo funciona conceptualmente un índice B-tree básico (no hace falta detalle algorítmico completo, pero sí lo suficiente para que el lector entienda por qué las búsquedas se vuelven más rápidas). 3. Los trade-offs de los índices: cuándo ayudan, cuándo perjudican y qué costes introducen. 4. Orientación práctica sobre cómo decidir qué columnas indexar, incluyendo al menos dos ejemplos realistas de consultas y si/cómo se beneficiarían de un índice. 5. Una nota breve sobre índices compuestos (multicolumna) y por qué el orden de las columnas importa. Procura que la explicación sea exhaustiva pero accesible: evita jerga innecesaria, pero no simplifiques hasta el punto de ser inexacto. El lector debería terminar tu explicación sintiéndose lo suficientemente seguro para crear su primer índice y razonar sobre si le será útil.

26
23 Mar 2026 16:59

Resumen

OpenAI GPT-5.2 VS Google Gemini 2.5 Pro

Resumir un pasaje sobre la historia y la ciencia de las islas de calor urbanas

Lea atentamente el siguiente pasaje y escriba un resumen de no más de 250 palabras. Su resumen debe preservar todos los puntos clave enumerados después del pasaje y debe estar escrito como un único ensayo cohesionado (no en viñetas). --- BEGIN PASSAGE --- Las islas de calor urbanas (UHI, por sus siglas en inglés) son áreas metropolitanas que experimentan temperaturas significativamente más altas que sus contrapartes rurales circundantes. Este fenómeno, documentado por primera vez por el meteorólogo aficionado Luke Howard a principios del siglo XIX cuando observó que el centro de Londres era consistentemente más cálido que sus alrededores, se ha convertido en uno de los aspectos más estudiados de la climatología urbana. Los registros pioneros de temperatura de Howard, mantenidos entre 1807 y 1830, revelaron que el centro de la ciudad podía ser hasta 3.7 grados Fahrenheit más cálido que lugares rurales cercanos. Aunque sus mediciones fueron rudimentarias según los estándares modernos, sentaron las bases para más de dos siglos de investigación científica sobre cómo las ciudades alteran sus climas locales. Las causas principales de las islas de calor urbanas son bien comprendidas por los científicos contemporáneos. Primero, la sustitución de la vegetación natural y el suelo permeable por superficies impermeables como asfalto, hormigón y materiales de techado cambia drásticamente las propiedades térmicas del paisaje. Estos materiales tienen bajo albedo, lo que significa que absorben una gran fracción de la radiación solar entrante en lugar de reflejarla de vuelta a la atmósfera. El hormigón, por ejemplo, refleja solo alrededor del 10 al 35 por ciento de la luz solar dependiendo de su edad y composición, mientras que el asfalto nuevo refleja tan solo un 5 por ciento. En contraste, las praderas y los bosques típicamente reflejan entre el 20 y el 30 por ciento de la energía solar entrante. Segundo, la disposición geométrica de los edificios en las ciudades crea lo que los científicos llaman “cañones urbanos”, corredores estrechos entre estructuras altas que atrapan el calor mediante múltiples reflexiones y reducen el flujo de viento, limitando la ventilación natural que de otro modo ayudaría a disipar el calor acumulado. Tercero, las fuentes de calor antropogénicas —incluidos los vehículos, las unidades de aire acondicionado, los procesos industriales e incluso el calor metabólico de poblaciones humanas densas— aportan energía térmica adicional al entorno urbano. En ciudades grandes como Tokio, la salida de calor antropogénico puede superar los 1,590 watts por metro cuadrado en distritos comerciales durante los meses de invierno, una cifra que rivaliza con la intensidad de la radiación solar entrante en un día despejado. Las consecuencias de las islas de calor urbanas van mucho más allá de la mera incomodidad. Los investigadores en salud pública han establecido fuertes vínculos entre las temperaturas urbanas elevadas y el aumento de tasas de enfermedades y mortalidad relacionadas con el calor. Un estudio emblemático publicado en 2014 por los Centers for Disease Control and Prevention encontró que los eventos de calor extremo en Estados Unidos causaron un promedio de 658 muertes por año entre 1999 y 2009, con los residentes urbanos desproporcionadamente afectados. Las poblaciones vulnerables —incluidos los ancianos, los niños pequeños, los trabajadores al aire libre y las personas con condiciones cardiovasculares o respiratorias preexistentes— enfrentan los mayores riesgos. Durante la catastrófica ola de calor europea de 2003, que mató a un estimado de 70,000 personas en todo el continente, las tasas de mortalidad fueron notablemente más altas en los núcleos urbanos densamente construidos que en las áreas suburbanas o rurales. Más allá de los impactos directos en la salud, las UHI también degradan la calidad del aire al acelerar la formación de ozono a nivel del suelo, un contaminante dañino creado cuando los óxidos de nitrógeno y los compuestos orgánicos volátiles reaccionan en presencia de calor y luz solar. Las ciudades que experimentan efectos intensos de isla de calor a menudo ven concentraciones de ozono que se disparan por encima de los umbrales seguros en días calurosos de verano, provocando dificultad respiratoria en personas sensibles y contribuyendo al daño pulmonar a largo plazo en poblaciones más amplias. Los patrones de consumo de energía también se ven profundamente influenciados por el efecto de isla de calor urbana. A medida que las temperaturas aumentan, la demanda de aire acondicionado se dispara, ejerciendo una enorme presión sobre las redes eléctricas y elevando los costos de energía para residentes y empresas por igual. La Agencia de Protección Ambiental de los Estados Unidos (U.S. Environmental Protection Agency) estima que por cada 1 grado Fahrenheit de aumento en la temperatura veraniega, la demanda máxima de electricidad en una ciudad aumenta entre un 1.5 y un 2 por ciento. En todo Estados Unidos, se estima que la energía adicional de enfriamiento requerida debido a las islas de calor urbanas cuesta a residentes y empresas aproximadamente 1,000 millones de dólares por año. Este aumento del consumo de energía también crea un bucle de retroalimentación: las plantas de energía queman más combustibles fósiles para satisfacer la demanda, liberando gases de efecto invernadero adicionales y calor residual que calientan aún más la atmósfera, tanto a nivel local como global. De este modo, las islas de calor urbanas no son meramente un síntoma de la urbanización, sino un contribuyente activo al desafío más amplio del cambio climático. Afortunadamente, un creciente cuerpo de investigación ha identificado estrategias de mitigación efectivas. Los techos fríos —materiales de techado diseñados para reflejar más luz solar y absorber menos calor— pueden reducir las temperaturas en azoteas hasta en 60 grados Fahrenheit en comparación con techos convencionales oscuros. Los techos verdes, que incorporan capas de vegetación sobre los edificios, proporcionan beneficios adicionales que incluyen la gestión de aguas pluviales, la mejora de la calidad del aire y hábitat para la fauna urbana. A nivel de calle, aumentar la cobertura del dosel arbóreo ha demostrado ser una de las intervenciones más rentables. Un árbol de sombra maduro puede reducir las temperaturas del aire locales entre 2 y 9 grados Fahrenheit mediante una combinación de sombra y evapotranspiración, el proceso por el cual las plantas liberan vapor de agua a la atmósfera, enfriando efectivamente el aire circundante. Ciudades como Melbourne, Australia, y Singapur han lanzado ambiciosos programas de reforestación urbana, con Melbourne apuntando a aumentar su cobertura arbórea del 22 por ciento al 40 por ciento para 2040. Las pavimentaciones frescas, que usan materiales de color más claro o reflectantes para calles y aceras, representan otro enfoque prometedor, con programas piloto en Los Ángeles que muestran reducciones de temperatura superficial de hasta 10 grados Fahrenheit en calles tratadas. Los marcos de políticas están comenzando a ponerse al día con la ciencia. En 2022, la ciudad de París adoptó un plan integral de enfriamiento urbano que exige techos verdes en todos los nuevos edificios comerciales, requiere superficies permeables en al menos el 30 por ciento de los nuevos desarrollos y se compromete a plantar 170,000 árboles nuevos para 2030. El programa CoolRoofs de la ciudad de Nueva York, lanzado en 2009, ha recubierto más de 10 millones de pies cuadrados de azoteas con material reflectante, y la ciudad estima que la iniciativa ha reducido la demanda máxima de energía de enfriamiento entre un 10 y un 30 por ciento en los edificios participantes. Mientras tanto, Medellín, Colombia, ha ganado reconocimiento internacional por su proyecto “Green Corridors”, que transformó 18 carreteras y 12 vías fluviales en corredores frondosos bordeados de árboles, reduciendo las temperaturas locales hasta en 3.6 grados Fahrenheit y otorgándole a la ciudad un Ashden Award en 2019 por su enfoque innovador de adaptación climática. Estos ejemplos demuestran que con voluntad política y planificación informada, las ciudades pueden reducir significativamente la intensidad de sus islas de calor y mejorar la calidad de vida de millones de habitantes. --- END PASSAGE --- Puntos clave que su resumen DEBE incluir: 1. Definición de islas de calor urbanas y su descubrimiento histórico por Luke Howard. 2. Al menos tres causas de las UHI (superficies impermeables con bajo albedo, geometría de cañones urbanos y fuentes de calor antropogénicas). 3. Consecuencias para la salud, incluida la mención de poblaciones vulnerables y la ola de calor europea de 2003. 4. Impacto en el consumo de energía y el bucle de retroalimentación con las emisiones de gases de efecto invernadero. 5. Al menos tres estrategias de mitigación (por ejemplo, techos fríos, techos verdes, aumento del dosel arbóreo, pavimentos frescos). 6. Al menos un ejemplo específico de política a nivel de ciudad (París, New York City o Medellín). Restricciones: - Máximo 250 palabras. - Escrito como un ensayo cohesionado, no en viñetas. - No introducir información que no esté presente en el pasaje.

40
23 Mar 2026 09:20

Programación

Anthropic Claude Haiku 4.5 VS OpenAI GPT-5.2

Analizador avanzado de archivos de registro para un formato personalizado

Escribe una función de Python `parse_log(log_content: str) -> list` que analice un archivo de registro con un formato personalizado. La función debe recibir el contenido del registro como una única cadena multilínea y devolver una lista de diccionarios, donde cada diccionario representa una transacción completada con éxito. **Reglas del formato de registro:** 1. **`START <transaction_id> <timestamp>`**: Marca el inicio de una transacción. `transaction_id` es una cadena sin espacios. `timestamp` es una cadena con formato ISO 8601. 2. **`END <transaction_id> <status> <timestamp>`**: Marca el final de una transacción. El `transaction_id` debe coincidir con una transacción abierta. `status` es una sola palabra (p. ej., `SUCCESS`, `FAIL`). 3. **`EVENT <key1>=<value1> <key2>="<value with spaces>" ...`**: Representa un evento dentro de la transacción activa actual. Consiste en uno o más pares clave-valor. Los valores que contienen espacios deben ir entre comillas dobles. 4. **`COMMENT # <any text>`**: Una línea de comentario que debe ser ignorada. **Lógica de procesamiento:** * La función debe procesar las líneas secuencialmente. * Una línea `EVENT` se asocia con la transacción iniciada más recientemente que aún no ha terminado. * Una transacción sólo se considera completa y válida si tiene una línea `START` y una línea `END` que coincidan en el mismo `transaction_id`. * La salida debe ser una lista de diccionarios. Cada diccionario representa una transacción completada y debe tener las siguientes claves: * `transaction_id` (cadena) * `start_time` (cadena) * `end_time` (cadena) * `status` (cadena) * `events` (una lista de diccionarios, donde cada diccionario interno representa los pares clave-valor de una línea `EVENT`). **Manejo de errores y casos límite:** * Ignorar cualquier línea `COMMENT`, líneas en blanco o líneas malformadas que no coincidan con los formatos especificados. * Ignorar cualquier `EVENT` que ocurra fuera de una transacción activa (es decir, antes del primer `START` o después de que una transacción se haya cerrado). * Si aparece una nueva línea `START` antes de que la transacción anterior se haya cerrado con un `END`, la transacción anterior se considera "abandonada" y debe descartarse. La nueva línea `START` inicia una nueva transacción. * Cualquier transacción que permanezca abierta al final del archivo de registro también se considera "abandonada" y no debe incluirse en la salida final.

30
23 Mar 2026 08:42

Diseño de sistemas

OpenAI GPT-5.2 VS Google Gemini 2.5 Flash

Diseñar un servicio de acortamiento de URL

Diseña un servicio de acortamiento de URL (similar a bit.ly o tinyurl.com) que debe manejar las siguientes restricciones: 1. El servicio debe soportar 100 millones de nuevos acortamientos de URL por mes. 2. La proporción de solicitudes de lectura (redirección) a solicitudes de escritura (acortamiento) es de 100:1. 3. Las URLs acortadas deben ser lo más cortas posible pero deben soportar el volumen esperado durante al menos 10 años. 4. El sistema debe alcanzar una disponibilidad de tiempo de actividad del 99,9%. 5. La latencia de redirección debe ser inferior a 50 ms en el percentil 95. 6. El servicio debe manejar una degradación gradual si un centro de datos se queda sin servicio. En tu diseño, aborda cada una de las siguientes áreas: A) Diseño de la API: Define los endpoints clave de la API y sus contratos. B) Modelo de datos y almacenamiento: Elige una solución de almacenamiento, justifica tu elección, explica tu esquema y estima el almacenamiento total necesario durante 10 años. C) Generación de URL corta: Describe tu algoritmo para generar códigos cortos. Explica cómo evitas colisiones y qué conjunto de caracteres y longitud elegiste, con una justificación matemática de por qué el espacio de claves es suficiente. D) Escalado y rendimiento: Explica cómo escalarías lecturas y escrituras de forma independiente. Describe tu estrategia de caché, incluida la política de expulsión y la tasa de aciertos esperada. Explica cómo cumples con el requisito de latencia de 50 ms p95. E) Confiabilidad y tolerancia a fallos: Describe cómo maneja el sistema las caídas de centros de datos, la estrategia de replicación de datos y qué compensaciones haces entre consistencia y disponibilidad (referencia el teorema CAP). F) Discusión de compensaciones: Identifica al menos dos compromisos de diseño significativos que hayas tomado y explica por qué elegiste una opción sobre la otra, incluyendo qué sacrificarías y qué ganarías. Presenta tu respuesta como un plan estructurado con secciones claras correspondientes a A hasta F.

23
22 Mar 2026 21:21

Persuasión

Google Gemini 2.5 Flash-Lite VS OpenAI GPT-5.2

Persuadir a una junta escolar escéptica de que adopte un horario de inicio más tarde para las escuelas secundarias

Usted es un padre/madre y defensor/a de la salud comunitaria que se dirige a la junta escolar local en una reunión pública. La junta es escéptica respecto a cambiar el horario actual de inicio de las escuelas secundarias de las 7:30 a. m. a las 8:30 a. m., principalmente debido a preocupaciones sobre los costos de programación de los autobuses, conflictos con actividades extracurriculares y los horarios laborales de los padres. Escriba un discurso persuasivo (600–900 palabras) dirigido a convencer a la junta de que adopte el horario de inicio más tarde. Su discurso debe: 1. Reconocer y abordar directamente al menos tres objeciones específicas que la junta probablemente plantee (coste, logística y otra de su elección). 2. Utilizar al menos dos referencias a hallazgos de investigación reales y bien conocidos sobre el sueño adolescente y los resultados académicos o de salud (puede parafrasear hallazgos generales de organizaciones como American Academy of Pediatrics o CDC sin necesidad de citas exactas). 3. Incluir al menos un ejemplo concreto o una analogía que haga que el tema sea emocionalmente convincente para los miembros de la junta. 4. Mantener un tono respetuoso y colaborativo en todo momento — usted está pidiendo colaboración, no imponiendo exigencias. 5. Terminar con un siguiente paso específico y accionable que solicita a la junta que tome. Su objetivo es ser genuinamente persuasivo: equilibre eficazmente logos (evidencia y lógica), ethos (credibilidad y respeto) y pathos (resonancia emocional).

36
22 Mar 2026 20:56

Análisis

Google Gemini 2.5 Pro VS OpenAI GPT-5.2

Evaluación de la evidencia en una decisión de retirada de producto

Una empresa de electrónica de consumo, VoltTech, fabrica un popular cargador de teléfono portátil llamado PowerPak 3000. En los últimos seis meses, la empresa ha recibido los siguientes informes y datos: 1. Quejas de clientes: 47 informes de que el dispositivo se sobrecalentó durante su uso, de aproximadamente 820.000 unidades vendidas. De estos, 12 clientes informaron quemaduras leves y 3 informaron pequeños incendios que fueron rápidamente contenidos. 2. Pruebas internas: el equipo de aseguramiento de calidad de VoltTech probó 500 unidades de lotes de producción recientes. Encontraron que el 2,4% de las unidades mostró una salida térmica más alta de lo normal bajo carga máxima sostenida, pero todas se mantuvieron dentro del umbral de seguridad técnica definido por la norma de certificación UL correspondiente. 3. El mes pasado se retiró del mercado un producto similar de un competidor por un problema de sobrecalentamiento comparable, lo que generó una cobertura mediática significativa y preocupación pública sobre la seguridad de los cargadores portátiles en general. 4. Un blog independiente de seguridad del consumidor publicó un artículo afirmando que el PowerPak 3000 tiene un "defecto de diseño peligroso", basado en el análisis de desmontaje de una sola unidad comprada a un revendedor tercero. VoltTech no ha verificado si esa unidad era genuina o una falsificación. 5. El equipo legal de VoltTech estima que una retirada voluntaria costaría aproximadamente 14 millones de dólares, mientras que continuar las ventas sin tomar medidas y enfrentarse a posibles litigios futuros podría costar entre 2 millones de dólares (si no ocurren incidentes graves) y 40 millones de dólares (si una demanda por lesiones graves o daños a la propiedad prospera). Analice la evidencia anterior y recomiende si VoltTech debe emitir una retirada voluntaria, implementar una acción correctiva menor (como una actualización de firmware, la adición de una etiqueta de advertencia o un programa de sustitución), o no tomar medidas. Justifique su recomendación evaluando la solidez y las limitaciones de cada elemento de evidencia, sopesando los riesgos y explicando claramente su razonamiento.

42
21 Mar 2026 08:06

Redacción empresarial

OpenAI GPT-5.2 VS Google Gemini 2.5 Pro

Redactar un correo electrónico dirigido al cliente que explique un retraso importante del proyecto

Eres un gestor de proyectos en una empresa consultora de software de tamaño mediano. Tu equipo ha estado desarrollando un sistema personalizado de gestión de inventario para un cliente minorista, GreenLeaf Stores. El proyecto estaba programado originalmente para entregar su primera versión lista para producción el 15 de agosto, pero debido a complicaciones técnicas inesperadas con la integración de la base de datos heredada del cliente y la salida de un desarrollador senior, la entrega se retrasará aproximadamente seis semanas (nuevo objetivo: 26 de septiembre). Tu contacto en el cliente es Dana Morales, vicepresidenta de Operaciones en GreenLeaf Stores. Dana ha sido comprensiva pero está bajo presión por parte de su propia dirección para que el sistema esté operativo antes de que comience la temporada de compras navideñas a mediados de octubre. Redacta un correo electrónico profesional a Dana que logre todo lo siguiente: 1. Comunicar de forma clara el retraso y la nueva fecha de entrega prevista. 2. Explicar brevemente las razones del retraso sin poner excusas ni asignar culpas. 3. Reconocer el impacto en el calendario comercial de GreenLeaf y mostrar empatía. 4. Proponer al menos dos medidas concretas de mitigación que tomará tu empresa para minimizar riesgos adicionales y proteger la fecha operativa de octubre. 5. Mantener un tono honesto, seguro y que preserve la relación. El correo debe incluir una línea de asunto y tener entre 250 y 400 palabras (excluyendo la línea de asunto). No uses texto de marcador como "[insert name here]". Escribe el correo completo, listo para enviar.

63
20 Mar 2026 15:18

Preguntas educativas

OpenAI GPT-5.2 VS Google Gemini 2.5 Flash-Lite

Explicar la paradoja del Barco de Teseo en la filosofía de la identidad

El Barco de Teseo es uno de los experimentos mentales más antiguos de la filosofía occidental. Supongamos que un barco de madera se mantiene reemplazando gradualmente cada tablón de madera a medida que se deteriora. Después de que cada tablón original haya sido reemplazado, ¿sigue siendo el barco resultante el Barco de Teseo? Ahora supongamos que alguien recoge todos los tablones originales desechados y los vuelve a ensamblar en un barco. ¿Cuál de los dos barcos, si acaso alguno, es el "real" Barco de Teseo? En un ensayo estructurado, aborde todo lo siguiente: 1. Exponga con precisión la paradoja central y explique por qué plantea un problema filosófico genuino para las teorías de la identidad. 2. Presente y evalúe críticamente al menos tres posiciones filosóficas distintas que intenten resolver la paradoja (p. ej., esencialismo mereológico, teoría de la continuidad espacio-temporal, cuatro-dimensionalismo/perdurantismo, esencialismo nominal, etc.). Para cada posición, explique su resolución e identifique al menos una objeción significativa. 3. Explique cómo se conecta esta paradoja con al menos dos ámbitos del mundo real (p. ej., identidad personal a lo largo del tiempo, identidad legal de las corporaciones, reemplazo celular biológico, copia de archivos digitales, restauración de artefactos históricos). Para cada ámbito, muestre específicamente cómo se manifiesta la paradoja y qué consecuencias prácticas se derivan. 4. Tome y defienda su propia posición razonada sobre qué resolución resulta más satisfactoria filosóficamente, reconociendo sus limitaciones.

48
20 Mar 2026 10:48

Programación

Google Gemini 2.5 Pro VS OpenAI GPT-5.2

Implementar un limitador de tasa concurrente con ventana deslizante y colas de prioridad

Diseña e implementa un limitador de tasa (rate limiter) en Python que sea seguro para hilos (thread-safe) y que admita las siguientes características: 1. **Limitación de tasa con ventana deslizante**: En lugar de usar ventanas de tiempo fijas, implementa un algoritmo de ventana deslizante real. Cada cliente (identificado por una clave de tipo cadena) puede realizar como máximo `max_requests` solicitudes dentro de cualquier ventana móvil de `window_seconds` segundos. 2. **Niveles de prioridad**: Cada solicitud tiene un nivel de prioridad (entero 1-5, donde 1 es la prioridad más alta). Cuando se alcanza el límite de tasa para un cliente, las solicitudes de menor prioridad (número mayor) deben rechazarse primero. Específicamente, si llega una nueva solicitud con prioridad P y la ventana está llena, el limitador debe comprobar si existe alguna solicitud en la ventana actual con prioridad estrictamente menor (número mayor) que P. Si es así, se "revoca" la solicitud de prioridad más baja (mayor número) y se admite la nueva solicitud de mayor prioridad. La solicitud revocada debe registrarse para que pueda informarse. Si no existe ninguna solicitud de menor prioridad para revocar, la nueva solicitud se rechaza. 3. **Permiso de ráfaga (Burst Allowance)**: Cada cliente puede opcionalmente tener una asignación de ráfaga `burst` (por defecto 0). Esto permite hasta `burst` solicitudes adicionales por encima de `max_requests` en una ventana, pero sólo si al menos la mitad de la duración de la ventana ha transcurrido desde la primera solicitud del cliente en la ventana actual. 4. **Seguridad para hilos (Thread Safety)**: El limitador de tasa debe ser seguro para uso concurrente desde múltiples hilos. Demuestra esto con un escenario de prueba. 5. **Estadísticas**: El limitador debe rastrear estadísticas por cliente: total de solicitudes admitidas, total rechazadas, total revocadas (removidas por solicitudes de mayor prioridad) y utilización actual de la ventana (como un float de 0.0 a 1.0). Implementa la siguiente interfaz: ```python class RateLimiter: def __init__(self, max_requests: int, window_seconds: float, default_burst: int = 0): ... def set_client_burst(self, client_id: str, burst: int) -> None: """Override burst allowance for a specific client.""" ... def allow(self, client_id: str, priority: int = 3, timestamp: float = None) -> bool: """ Check if a request is allowed. If timestamp is None, use current time. Returns True if the request is admitted, False if rejected. """ ... def get_stats(self, client_id: str) -> dict: """ Return a dict with keys: 'admitted', 'rejected', 'revoked', 'utilization' """ ... def get_revoked_log(self, client_id: str) -> list: """ Return a list of (timestamp, priority) tuples for revoked requests for the given client, in chronological order. """ ... ``` Proporciona una implementación completa y ejecutable junto con un script de demostración que: - Cree un limitador con max_requests=5, window_seconds=10.0, default_burst=2 - Simule una secuencia de solicitudes de dos clientes con prioridades y marcas de tiempo variables que ejerciten todas las características (expiración por ventana deslizante, revocación por prioridad, activación de ráfaga y rechazo) - Imprima las estadísticas y los registros de revocación para cada cliente al final - Incluya una breve prueba multihilo con al menos 4 hilos realizando solicitudes concurrentes Asegúrate de manejar casos límite tales como: - Validación del valor de prioridad (debe ser 1-5) - Solicitudes que llegan exactamente en los límites de la ventana - Múltiples revocaciones en secuencia - Activación de la asignación de ráfaga exactamente en el punto de la mitad de la ventana - IDs de cliente vacíos o desconocidos en consultas de estadísticas

46
19 Mar 2026 14:46

Mostrando 1 a 20 de 74 resultados

Enlaces relacionados

X f L