# Devkron Applications Server Servidor de aplicaciones Web de clase empresarial para ejecutar código escrito en lenguaje Devkron. Disponible para **Windows** y **Linux**. --- ## Ediciones | | Dominios | Hosts | Instancias | Conexiones concurrentes | Cómputo | Túnel inverso | |---|---:|---:|---:|---:|---|:-:| | **R5 Bridge** | 1 | 1 | 1 | 128 | 1 socket u 8 núcleos | Sí | | **Mini** | 1 | 2 | 1 | 256 | 1 socket u 8 núcleos | Sí | | **Lite** | 1 | 3 | 3 | 512 | 1 socket u 8 núcleos | Solo anual | | **Standard** | 2 | 10 | 5 | 1,024 | 2 sockets o 16 núcleos | No | | **Enterprise** | 3 | 15 | Ilimitadas | Ilimitadas | 4 sockets | No | ## Túnel inverso Publica en internet un servidor que está detrás de un NAT, **sin abrir puertos en el router ni contratar una dirección IP fija**. El servidor establece la conexión hacia afuera y el tráfico entrante viaja de regreso por ese mismo canal. Está incluido en **R5 Bridge, Mini y Lite bajo licenciamiento anual**. No lo incluyen Lite en modalidad perpetua, Standard ni Enterprise. Son ediciones pensadas para servidores que ya cuentan con dirección pública, donde el túnel no resuelve ningún problema. Y como el túnel implica un servicio de retransmisión que opera de forma continua, solo puede sostenerse bajo una licencia recurrente. ## Conceptos de límites técnicos * **Servidor:** Es cualquier equipo (hardware) o sistema informático que ofrece servicios a otros dispositivos, usuarios o programas a través de una red. Esto también incluye a los "servidores virtuales" (software) que funcionan dentro de un servidor físico. Ten en cuenta que cada servidor, ya sea físico o virtual, se cuenta de manera individual. * **Núcleo de CPU:** Es una unidad de procesamiento que puede ser física o virtual. Un núcleo físico es la pieza de hardware real que ejecuta cálculos e instrucciones. Por su parte, un núcleo virtual se crea mediante software para lograr que un solo procesador físico funcione como si tuviera varios núcleos, repartiendo mejor el trabajo. Ambos sirven para ejecutar tareas de manera independiente y hacer que el equipo sea más rápido y eficiente. * **Dominio:** Es un nombre único que usamos para identificar y acceder a sitios o servicios en Internet. Está estructurado con un nombre y una extensión (como .com, .org o .net) y su función principal es traducir las direcciones IP (que son secuencias numéricas complejas) en palabras fáciles de leer y recordar. * **Host:** Es un equipo o sistema informático que está vinculado a un nombre de dominio y que se encarga de brindar servicios a otros usuarios, dispositivos o programas dentro de una red. * **Instancia:** Es una copia de un programa que se está ejecutando en un equipo en un momento dado. Al estar activa, esta copia toma prestados los recursos del dispositivo para poder funcionar, como la memoria, el almacenamiento, la conexión a la red y el procesamiento (núcleos de CPU). * **Conexión:** Es el enlace de comunicación que se establece entre un cliente y un servidor a través de una red. * **Conexión concurrente:** Ocurre cuando hay múltiples conexiones activas exactamente al mismo tiempo hacia las instancias de un software que se está ejecutando en un mismo servidor. ## Formas de cobro **Por servidor.** El licenciamiento es por instalación del servidor, no por usuario ni por aplicación publicada. El número de personas que usen las aplicaciones no altera el precio; el techo lo ponen las conexiones concurrentes de la edición. **Dos modalidades.** | | Vigencia | Actualizaciones | |---|---|---| | **Anual** | Un año, renovable | Incluidas mientras la licencia esté vigente | | **Perpetua** | Sin caducidad | Dentro de la misma versión mayor | R5 Bridge y Mini existen únicamente en modalidad anual. **Licencias adicionales.** Amplían los límites de una licencia ya contratada, en la misma modalidad que la licencia base: - Dominio adicional - Host adicional - Socket u 8 núcleos adicionales Solo aplican **de Lite en adelante**. R5 Bridge y Mini no admiten adicionales: para crecer se cambia de edición. **Soporte técnico.** El licenciamiento no incluye soporte. Puede contratarse por separado. ## Qué son las conexiones concurrentes Es el límite que más se malinterpreta, y conviene entenderlo antes de elegir edición. **Una conexión concurrente no es un usuario, ni una sesión.** Es una petición HTTP siendo atendida por el servidor en ese instante. Cargar una sola página consume **varias conexiones al mismo tiempo**, porque el navegador no espera a que termine una petición para lanzar la siguiente: pide en paralelo el documento, las hojas de estilo, los scripts, las imágenes y los datos que la página necesite. Esa es la forma normal de operar de cualquier navegador moderno y es lo que hace que las páginas carguen rápido. Por eso el número de conexiones de una edición es mucho mayor que el número de personas que puede atender. La relación no es de uno a uno, sino de un orden de magnitud. **Cuando se alcanza la capacidad de la edición, las conexiones se ponen en cola.** No se rechazan ni se pierden: esperan su turno y se atienden en cuanto se libera capacidad. El efecto visible es que las páginas tardan más en cargar. --- ## Cómo elegir la edición La elección se resuelve en tres pasos. Los dos primeros descartan ediciones completas sin importar el tamaño del negocio; el tercero afina entre las que quedaron. ### Paso 1. ¿El servidor necesita ser accesible desde internet? Si la respuesta es sí y el servidor no cuenta con una dirección IP pública, la edición **debe incluir túnel inverso**. Eso deja disponibles únicamente **R5 Bridge**, **Mini** y **Lite en modalidad anual**. Standard y Enterprise no incluyen túnel. Son ediciones pensadas para servidores que ya son alcanzables desde internet, así que una edición mayor no resuelve este requisito: lo pierde. Si el servidor tiene dirección pública, o solo va a atender a la red local, este paso no descarta nada. ### Paso 2. ¿Cuántas aplicaciones independientes va a publicar? Cada aplicación publicada por separado consume un host. Ese número fija el piso de la edición. | Hosts requeridos | Edición mínima | |---:|---| | 1 | R5 Bridge | | 2 | Mini | | 3 | Lite | | Hasta 10 | Standard | | Hasta 15 | Enterprise | Si además se van a publicar bajo nombres de dominio distintos, hay que revisar también la columna de dominios: R5 Bridge, Mini y Lite admiten uno; Standard, dos; Enterprise, tres. ### Paso 3. ¿Cuántos usuarios transaccionales va a atender? Entre las ediciones que sobrevivieron a los dos pasos anteriores, la carga de trabajo decide. | Edición | Usuarios transaccionales | |---|---| | **R5 Bridge** | Ninguno. Solo usuarios ocasionales | | **Mini** | Hasta 5 | | **Lite** | Hasta 10 | | **Standard** | Hasta 20 | | **Enterprise** | Más de 20 | Estas cifras ya consideran que cada usuario genera varias conexiones simultáneas mientras trabaja. El margen entre las conexiones de la edición y los usuarios recomendados existe para absorber los picos: el momento en que varias personas cargan una pantalla pesada a la vez. **Los usuarios ocasionales no se cuentan para elegir.** Entran, consultan y salen, así que su carga es intermitente y cabe dentro de ese mismo margen. ### Por qué Mini y Lite se separan si comparten cómputo Ambas trabajan sobre el mismo límite de proceso, un socket u ocho núcleos. La diferencia está en cómo lo aprovechan: **Mini ejecuta una sola instancia y Lite ejecuta tres**. Repartir el trabajo entre varias instancias sobre el mismo procesador permite atender más peticiones en paralelo, y por eso Lite sostiene el doble de usuarios transaccionales sin que el tiempo de respuesta se degrade. El mismo criterio explica el resto de la escalera. Standard suma más cómputo y más instancias; Enterprise levanta ambos techos. ### Nota importante **El servidor Devkron no niega el servicio a ninguna cantidad de usuarios.** Ni los usuarios ni las conexiones tienen un candado que corte el acceso: al superar la capacidad de la edición, las peticiones se encolan y se atienden más lento. Los números de esta sección son recomendaciones de capacidad práctica. Rebasarlos no rompe nada; solo hace que la operación se sienta pesada, y esa es precisamente la señal de que conviene subir de edición. ## Conceptos de carga de trabajo * **Usuario transaccional:** Es el que procesa operaciones de forma continua durante su jornada, como capturar ventas, registrar compras o mover inventario. Mantiene una sesión activa y genera peticiones al servidor de manera sostenida. * **Usuario ocasional:** Es el que accede de forma esporádica, normalmente para consultar información o realizar una operación aislada. Su sesión es breve y no representa carga sostenida para el servidor. * **Petición:** Es cada solicitud individual que el navegador hace al servidor: el documento de la página, una hoja de estilo, una imagen o un bloque de datos. Una sola pantalla se compone de varias peticiones. * **Encolamiento:** Es lo que ocurre cuando llegan más peticiones simultáneas de las que la edición puede atender. Las que no caben esperan turno y se procesan en cuanto se libera capacidad, lo que se percibe como lentitud y no como error.