# Planificador de presupuesto de rendimiento y reglas de enlace WASM / WASI Preview 2 Component Model + JSPI

Planifica un despliegue de componentes WebAssembly: grafo de enlaces estilo wac con comandos plug, soporte WASI Preview 2 en cinco runtimes, avisos de JSPI y presupuestos de tamaño / arranque en frío / TTFB / memoria.

> Página canónica: https://elysiatools.com/es/tools/wasm-wasi-component-model-jspi-wasi-copilot-perf-budget-and-link-rule-planner

- **Categoría:** Validation

- **Palabras clave:** wasm, wasi, modelo de componentes, reglas de enlace, arranque en frío, streaming, presupuesto, matriz de runtimes

## Descripción general

Los componentes se analizan en un grafo de enlaces socket/plug estilo wac con orden topológico, detección de ciclos y comandos wac plug / wac targets generados; la matriz de soporte distingue el WASI 0.2 estable (wasi-cli, wasi:http/proxy) de las propuestas (keyvalue, config) entre wasmtime, Wasmer, WasmEdge, WAMR y V8; tamaño, arranque en frío p50/p95/p99, TTFB en streaming y memoria por instancia se modelan contra tus presupuestos; JSPI queda marcado como nativo de V8 pero sin estandarizar por la W3C.

## Entradas

- **Manifiesto de componentes** (textarea): One per line: name, imports, exports, size_kb (use "-" for empty lists) e.g. api-gateway, wasi:http/incoming-handler@0.2.0 wasi:keyvalue/store@0.1.0, wasi:http/outgoing-handler@0.2.0, 850 auth-plug, -, wasi:http/incoming-handler@0.2.0, 220 kv-cache, -, wasi:keyvalue/store@0.1.0, 150
- **Runtimes objetivo** (select)
- **Interfaces WASI requeridas** (select)
- **Usa JSPI (puente asíncrono↔síncrono)** (checkbox)
- **Respuestas en streaming (wasi:http)** (checkbox)
- **Instancias concurrentes previstas** (number)
- **Memoria lineal por instancia (MB)** (number)
- **Presupuesto de tamaño (KB)** (number)
- **Presupuesto de arranque en frío p99 (ms)** (number)
- **Presupuesto TTFB (ms)** (number)

## Cuándo usarlo

- Al diseñar arquitecturas modulares de microservicios o plugins en WebAssembly compuestas por múltiples componentes interconectados.
- Al evaluar la compatibilidad de interfaces WASI 0.2 estables y propuestas experimentales frente a runtimes como Wasmtime, Wasmer, WasmEdge, WAMR y V8.
- Al auditar presupuestos de latencia, memoria por instancia, arranque en frío (p50/p95/p99) y tamaño de binarios antes del despliegue en producción.

## Cómo funciona

- Introduce la lista de componentes con sus importaciones, exportaciones e interfaces requeridas junto con sus tamaños en kilobytes.
- Selecciona los runtimes de destino, las interfaces WASI necesarias (como wasi:http/proxy o wasi:keyvalue) y las opciones de streaming o JSPI.
- Configura los umbrales de presupuesto para memoria por instancia, tiempo de respuesta inicial (TTFB), arranque en frío y tamaño total.
- Obtén el análisis topológico del grafo de enlaces, los comandos wac plug resultantes, las alertas de compatibilidad y la comparación frente a los presupuestos establecidos.

## Casos de uso

- Diseño de pasarelas API edge componiendo middlewares de autenticación, caché key-value y manejadores HTTP.
- Optimización de microservicios embebidos y CLI en entornos con restricciones estrictas de memoria y tiempo de arranque en WAMR.
- Validación de interoperabilidad de código asíncrono con JavaScript mediante JSPI en plataformas basadas en Node.js o V8.

## Preguntas frecuentes

### ¿Qué runtimes WebAssembly cubre la matriz de compatibilidad?

Modela el soporte en Wasmtime (Cranelift), Wasmer, WasmEdge, WAMR (AOT/micro) e Isolates de V8.

### ¿Cómo se detectan los ciclos en el grafo de componentes?

Se ejecuta una ordenación topológica sobre las importaciones y exportaciones declaradas para identificar dependencias circulares.

### ¿Qué estado de estandarización tiene JSPI en esta herramienta?

JSPI se identifica como una funcionalidad nativa disponible en V8 pero aún en fase de propuesta no estandarizada por el W3C.

### ¿Cómo influye el streaming en la estimación del TTFB?

Al activar respuestas en streaming para wasi:http, el TTFB se calcula sobre el primer chunk emitido en lugar de esperar la respuesta completa en búfer.

### ¿Qué formato deben tener los componentes en el manifiesto de entrada?

Deben ingresarse separados por líneas con el formato: nombre, interfaces importadas, interfaces exportadas y tamaño en KB.

## Herramientas relacionadas

- [Verificador de citas de códigos municipales de EE. UU. (Municode) con detección de renumeración](https://elysiatools.com/es/tools/us-state-county-municode-code-of-ordinances-section-subsection-citation-link-checker): Analiza citas de códigos municipales en cinco niveles (Title/Chapter/Article/Section/Subsection/Appendix), genera citas legales Bluebook (Regla 12.9.2), detecta renumeraciones tras ordenanzas recientes (huecos, duplicados, desorden) y verifica opcionalmente enlaces alojados en Municode / American Legal / eCode360.
- [Calculadora de suma de comprobación Mod-11](https://elysiatools.com/es/tools/mod11-checksum): Valida o genera números con el algoritmo de dígito de control Módulo 11 (ISO 7064) con esquemas de peso ISBN-10 (10..2), ID noruega (3,7,6,1,8,9,4,5,2) y genérico 2-7.
- [Generador de ideas de dominios con IA](https://elysiatools.com/es/tools/ai-domain-name-idea-generator): Introduce palabras clave de marca y la IA genera hasta 10 ideas de dominio, filtrando los ya registrados con DNS + RDAP. Para emprendedores y desarrolladores.
- [Explicador de Expresiones Cron](https://elysiatools.com/es/tools/cron-expression-explainer): Analiza una expresión cron de 5/6 campos o Quartz en una descripción en lenguaje natural, desglosa los campos y lista las próximas N ejecuciones en cualquier zona IANA, con una explicación natural generada por IA
- [Coach de cycle time y throughput Kanban](https://elysiatools.com/es/tools/kanban-cycle-time-throughput-coach): Importa marcas de creado→iniciado→resuelto desde CSV (estilo Jira o simple) y obtén métricas de flujo como las leen los agile coaches: percentiles de lead/cycle time, edad del WIP, throughput por día/semana/mes, un diagrama de flujo acumulado y una verificación de la Ley de Little.
- [Probador de par de claves y encapsulación ML-KEM / Kyber](https://elysiatools.com/es/tools/ml-kem-kyber-keypair-and-encapsulation-tester): Genera pares de claves ML-KEM-512/768/1024 (FIPS 203 / CRYSTALS-Kyber), encapsula un secreto compartido aleatorio con la clave pública, lo descapsula con la clave privada y verifica que coincidan — comprobando en vivo los tamaños exactos de los tres conjuntos de parámetros.
- [Generador de PKCE Code Verifier y Challenge](https://elysiatools.com/es/tools/pkce-code-verifier-generator): Genera, valida y verifica pares code_verifier / code_challenge PKCE (RFC 7636) de OAuth2 / OIDC. Tres modos: (1) generar un par nuevo a partir de bytes aleatorios criptográficos (256/384/512/768 bits), (2) auditar un verifier existente frente al RFC — longitud (43–128), charset \[A-Za-z0-9-._~\] y ≥256 bits de entropía, y (3) verificar un par recomputando BASE64URL(SHA256(verifier)). Opcionalmente construye la URL completa de autorización y el cuerpo del intercambio de token. Complementa al nonce-genérico (que solo emite el par) con auditoría de cumplimiento RFC y verificación de pares.
- [Comprobador de cabeceras de seguridad](https://elysiatools.com/es/tools/security-headers-checker): Audita las cabeceras de respuesta HTTP para cumplimiento de seguridad — analiza las cabeceras sin procesar que pegas (sin red) y las califica frente al conjunto de cabeceras seguras OWASP con comprobaciones a nivel de valor: HSTS max-age, CSP unsafe-inline/eval, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, COOP/COEP/CORP y más. Devuelve una nota (A+ a F) más hallazgos por cabecera con recomendaciones listas para copiar.

## Ejemplos

- [WebAssembly (WASM) Computación de Alto Rendimiento](https://elysiatools.com/es/samples/webassembly): WebAssembly para computación de alto rendimiento en el navegador con velocidad casi nativa
- [Ejemplos de Procesamiento de Imágenes Web Python](https://elysiatools.com/es/samples/web-image-processing-python): Ejemplos de procesamiento de imágenes Web Python usando PIL/Pillow incluyendo lectura, guardado, redimensionamiento y conversión de formato
- [Muestras del Visor WASM](https://elysiatools.com/es/samples/wasm-viewer-samples): Una muestra WASM para vista previa en el navegador
- [Ejemplos de Procesamiento de Imágenes Android Java](https://elysiatools.com/es/samples/android-image-processing-java): Ejemplos de procesamiento de imágenes Android Java incluyendo lectura/escritura, escalado y conversión de formato
