Orivel Orivel
Abrir menú

Últimas tareas y discusiones

Explora el contenido de benchmark más reciente de tareas y discusiones. Filtra por género para centrarte en lo que quieres comparar.

Géneros de comparación

Lista de modelos

Programación

Anthropic Claude Sonnet 5 VS OpenAI GPT-5.6

Analizador de registros del servidor web

Escriba una función de Python analyze_logs(log_data) que reciba una cadena multilínea que contenga entradas de registro del servidor web. La función debe analizar estos registros, realizar un análisis y devolver un diccionario que resuma los resultados. Cada línea de registro válida sigue este formato: [TIMESTAMP] LEVEL IP_ADDRESS "REQUEST_METHOD /path" RESPONSE_CODE BYTES_SENT Ejemplo de una línea válida: [2023-10-27T10:00:00Z] INFO 192.168.1.1 "GET /index.html" 200 1543 Su función debe: Analizar únicamente las líneas de registro válidas, ignorando de forma elegante cualquier línea malformada o vacía. Calcular las siguientes métricas: total_requests: El recuento total de entradas de registro válidas. error_rate: El porcentaje de solicitudes con un LEVEL de ERROR, redondeado a dos decimales. top_3_ips: Una lista de tuplas, donde cada tupla contiene una dirección IP y su recuento de solicitudes, para las 3 IP más frecuentes. La lista debe estar ordenada en orden descendente por recuento de solicitudes. busiest_hour: La hora del día (un entero de 0 a 23) que tuvo más solicitudes. La marca de tiempo está en formato ISO 8601 (UTC). Devolver un diccionario con las claves total_requests, error_rate, top_3_ips y busiest_hour que contenga los valores calculados. Maneje los siguientes casos límite: Si la cadena de entrada log_data está vacía, devuelva un diccionario con valores a cero o vacíos según corresponda (por ejemplo, total_requests: 0, top_3_ips: []). Si hay menos de 3 direcciones IP únicas, la lista top_3_ips debe contener todas las IP únicas, ordenadas por recuento. Si hay un empate por la hora con más actividad, es aceptable devolver cualquiera de las horas empatadas.

31
25 Jul 2026 01:19

Programación

OpenAI GPT-5.6 VS Google Gemini 2.5 Pro

Limitador de tasa con ventana deslizante y cuotas justas multi-tenant

Implementa una biblioteca reutilizable de limitación de tasa en un lenguaje de tu elección (Python, Go, TypeScript, Java o Rust) que haga cumplir cuotas de solicitudes por cliente usando un algoritmo de ventana deslizante, además de una política de reparto justo entre múltiples tenants. Requisitos funcionales: Proporciona una clase o módulo con un método como allow(tenant_id, client_id, now_ms) que devuelva si una solicitud está permitida y, cuando se deniegue, cuántos milisegundos faltan hasta que se permita la siguiente solicitud (retry_after_ms). Cada cliente está limitado a un número máximo de solicitudes dentro de una ventana de tiempo deslizante (por ejemplo, 100 requests per 60,000 ms). La configuración debe ser ajustable por tenant. Implementa una verdadera ventana deslizante (ponderada o basada en registro), no una ventana de cubos fijos por calendario, de modo que los picos que cruzan los límites de los cubos se manejen correctamente. Añade un límite global por tenant de modo que todos los clientes de un tenant combinados no puedan exceder un techo a nivel de tenant, y cuando el tenant esté saturado, la capacidad restante se comparta de forma justa entre los clientes activos en lugar de ser monopolizada por un solo cliente. El limitador debe ser seguro bajo acceso concurrente desde múltiples hilos o tareas async. La memoria no debe crecer de forma ilimitada: el estado obsoleto de clientes debe expulsarse o compactarse con el tiempo. Entregables: La implementación completa con una API pública clara y documentación en línea de las decisiones clave. Una breve explicación (en comentarios o una sección en prosa corta) del algoritmo de ventana deslizante que elegiste y sus concesiones de precisión/memoria. Un conjunto de pruebas que cubra los casos límite principales descritos a continuación. Casos límite a tratar explícitamente en el código y las pruebas: Solicitudes exactamente en el límite de la ventana. Un cliente que queda inactivo y luego vuelve después de que la ventana haya transcurrido por completo. Solicitudes concurrentes en carrera contra el mismo contador de cliente. Reloj que va hacia atrás o marcas de tiempo duplicadas. Saturación del tenant y redistribución justa entre clientes en competencia. Expulsión de estado obsoleto de clientes sin eliminar clientes activos. Indica cualquier suposición que hagas (single-process vs distributed, disponibilidad de reloj monotónico, etc.). Si asumes un solo proceso, describe brevemente cómo se extendería el diseño a un despliegue distribuido.

137
16 Jul 2026 09:49

Enlaces relacionados

X f L