¿SQL Server Standard + CAL o Per Core? Caso practico
¿SQL Server Standard + CAL o Per Core? La verdad sobre el licenciamiento en aplicaciones web
La respuesta corta es sí puedes usar SQL Server Standard con CALs, pero existe una condición técnica muy importante que muchos desarrolladores pasan por alto.
No se trata de si la base de datos funciona (porque técnicamente lo hará sin problemas), sino de si estás cumpliendo correctamente con los términos de licenciamiento de Microsoft.
🔍 El punto clave: no es técnico, es legal
En el modelo Server + CAL (Client Access License), cada usuario o dispositivo que accede a los datos necesita una licencia.
Aquí es donde aparece el problema más común en aplicaciones modernas.
⚠️ El problema del “Multiplexing”
Cuando desarrollas una aplicación web, los usuarios no se conectan directamente a SQL Server. En su lugar:
Se conectan a un servidor web (IIS, Node.js, etc.)
Ese servidor hace una única conexión a la base de datos
A simple vista, parece que solo necesitas una conexión… pero no es así.
Regla de oro de Microsoft:
El uso de software o hardware que reduzca el número de conexiones directas al servidor no reduce el número de licencias CAL necesarias.
💡 En la práctica
Si tienes:
Una app web pública
O una intranet con 500 usuarios
👉 Necesitarías 500 CALs, aunque todos entren a través de una sola conexión desde el servidor web.
🧠 ¿Cuándo conviene cada modelo?
Aquí tienes una comparación clara para tomar una decisión:
Característica
Server + CAL
Per Core
Ideal para
Apps internas con pocos usuarios conocidos
Apps web públicas o con muchos usuarios
Costo inicial
Más económico
Más costoso
Usuarios
Limitados (una CAL por usuario/dispositivo)
Ilimitados
Escalabilidad
Difícil de auditar al crecer
Muy fácil (pagas por potencia)
📌 Escenarios reales
✅ 1. App de Intranet (usuarios controlados)
Si tu aplicación es para:
10, 20 o 50 empleados
Usuarios bien definidos
👉 Puedes usar Server + CAL sin problema (si ya tienes las licencias).
🌐 2. App Web Pública (B2C)
Si tu sistema:
Está disponible en internet
No sabes cuántos usuarios entrarán
❌ No es viable usar CALs
👉 Aquí debes usar el modelo Per Core
🆓 3. Usar SQL Server Express
Si tu proyecto es pequeño:
Base de datos menor a 10 GB
Sin necesidad de funciones avanzadas
👉 Puedes usar SQL Server Express, que es:
Gratis
Sin necesidad de CALs
Ideal para proyectos pequeños o MVP
⚠️ Nota importante sobre Per Core
El modelo Per Core tiene una regla mínima:
👉 Debes licenciar al menos 4 núcleos por procesador (físico o virtual)
🎯 Conclusión
Server + CAL → Ideal para entornos controlados
Per Core → Obligatorio para apps web públicas
Express → Perfecto para proyectos pequeños o en desarrollo
💡 Si tu aplicación puede crecer o será pública, lo más seguro y escalable es optar por Per Core desde el inicio.
🚀 Recomendación final
Muchos proyectos comienzan pequeños y luego escalan rápidamente. Si tienes dudas, evalúa:
¿Cuántos usuarios reales tendrás?
¿Tu sistema será público?
¿Puedes controlar el acceso?
Responder esas preguntas te ahorrará problemas legales… y dinero 💸
Comentarios
Publicar un comentario