Nos complace anunciar la disponibilidad general de Capella App Services en Google Cloud Platform (GCP). La ampliación de la nube se produce tras el reciente lanzamiento público de Capella App Services en AWS.
Capella App Services es una totalmente gestionado que aporta la potencia de Couchbase Móvil a Capella, nuestra oferta Couchbase as-a-service totalmente gestionada. Couchbase Mobile es el líder del sector primero fuera de línea plataforma de sincronización de datos para aplicaciones móviles, de escritorio e integradas. Desde su lanzamiento en 2014, Couchbase Mobile, que incluye la. Couchbase Lite base de datos integrada y Pasarela de sincronizaciónha impulsado un gran número de aplicaciones empresariales críticas.
En este post, proporcionaremos una visión general de Capella App Services y discutiremos las características más destacadas, comparándolo con las correspondientes implementaciones autogestionadas de Couchbase Mobile.
Pruébelo gratis hoy mismo
Puedes probar Capella App Services gratis durante 30 días donde tendrás la oportunidad de evaluar todas las capacidades discutidas en este post.
App Services: Visión general
Arquitectura del sistema
Al crear un Servicio de aplicaciones y asociarlo con un cluster de Couchbase Server, estás efectivamente extendiéndolo o habilitándolo para la sincronización de datos. Un clúster de servidor Couchbase sólo puede estar vinculado a un App Service.
A alto nivel, entre bastidores, cuando se crea un App Service, se despliega un clúster de nodos Sync Gateway en la misma red de nube privada virtual que el clúster de servidores correspondiente. La comunicación entre el clúster de App Services y el clúster de servidores Couchbase se asegura mediante TLS y autenticación basada en certificados x.509. El clúster de Sync Gateway se despliega en la misma red de nube privada virtual que el clúster de servidores correspondiente. El clúster de Sync Gateway está dirigido por un equilibrador de carga que equilibra las solicitudes entrantes de los clientes entre los nodos de App Services.
Un App Service puede gestionar varias aplicaciones cliente, cada una de las cuales está representada por un Punto final de la aplicación. Conceptualmente, un App Endpoint representa la instancia de su aplicación en el App Service. Cada App Endpoint está respaldado por un bucket de servidor. Por lo tanto, si tiene varias aplicaciones, cada una de ellas tendrá su propio App Endpoint.
Las aplicaciones de clientes móviles, de escritorio y web pueden acceder a los datos y sincronizarlos conectándose al App Endpoint correspondiente.
Puntos de conexión del punto final de la aplicación
Cuando se trata de opciones para conectar clientes a un App Endpoint, existen múltiples opciones. La elección depende del tipo de aplicación y del caso de uso.
URL pública segura de websockets
La sincronización offline-first es la capacidad de las aplicaciones para ejecutarse en modo offline ante interrupciones temporales o prolongadas de la red y sincronizar los datos con los servidores backend cuando se restablece la conectividad. Aplicaciones móviles, de escritorio e integradas basadas en Couchbase Lite puede almacenar y acceder localmente a los datos en modo desconectado y sincronizarlos con App Service cuando hay conectividad. Dado que Internet es intrínsecamente poco fiable, el casos prácticos para la sincronización de datos offline-first son amplias y variadas.
API REST pública y segura
Las aplicaciones también pueden acceder a los datos de forma segura a través de un punto final REST público. Esto es útil en los casos en los que hay una conectividad de red fiable y, por tanto, no hay necesidad de almacenamiento fuera de línea o en los casos en los que las aplicaciones se ejecutan en hardware que no tiene almacenamiento local para ejecutar una base de datos local integrada como Couchbase Lite.
API REST de administración segura
Las aplicaciones de administración pueden obtener acceso autenticado a la API REST de administración para crear y gestionar usuarios, funciones y sesiones mediante programación. Las aplicaciones de administración suelen alojarse en el backend de la nube. Un ejemplo de aplicación de administración es un servicio de inicio de sesión que gestiona la autenticación personalizada y es responsable del registro de usuarios a través de la API REST de administración segura tras la autenticación correcta del usuario.
API REST de métricas seguras
Los marcos de supervisión como Prometheus pueden acceder a las estadísticas expuestas a través del punto final REST de métricas. Además, App Services también admite un panel de estadísticas operativas comunes.
Trayectoria del usuario
Requisito previo: App Services requiere un cluster de servidores Couchbase Capella. Para ello, siga las instrucciones de pasos para crear un cluster de servidores Couchbase Capella y configurar un bucket.
Prepare
Lanzar App Services
Al crear un servicio de aplicación y asociarlo a un clúster de servidores, lo habilita para la sincronización de datos. Al crear un App Service, se le da un nombre, se designa un clúster Capella asociado y, a continuación, se elige la configuración de despliegue, que incluye el número de nodos y el tipo de computación (RAM/núcleo).
Crear puntos finales de aplicación
Los App Endpoints representan la instancia de su aplicación en un App Service. Puedes crear múltiples App Endpoints en un App Service, cada uno respaldado por un único bucket en el cluster de Couchbase Server correspondiente. Por defecto, todos los documentos en el bucket correspondiente son importados por el App Endpoint.
Configurar los puntos finales de la aplicación
Cuando se crea el App Endpoint, se configura en modo offline. Esto da a los usuarios la oportunidad de completar la configuración de seguridad del App Endpoint antes de exponerlo a las aplicaciones.
Proveedor de autenticación
Los proveedores de autenticación definen cómo se autentican los usuarios con los servicios de la aplicación. Un proveedor de autenticación por defecto de autenticación básica es seleccionado para usted durante la creación del App Endpoint. Así que puede omitir esta configuración si la opción predeterminada funciona para su aplicación.
Capella admite los siguientes modos de autenticación:
-
-
-
- Autenticación básica: Aquí es donde los usuarios de la aplicación se autentican utilizando el nombre de usuario y la contraseña. Las credenciales se codifican en Base64 y se pasan como parte del encabezado de autorización de la solicitud HTTP.
- Open ID Connect(OIDC): Los usuarios de la aplicación se autentican con un proveedor de identidades de terceros registrado en App Endpoint. Esto se implementa utilizando OIDC Flujo implícito.
- Anónimo: En este modo, permitimos el acceso no autenticado de sólo lectura a los datos. Este modo puede ser útil cuando tu aplicación sólo maneja datos estáticos públicos.
-
-
Gestión de usuarios
A excepción del modo "Anónimo", todos los accesos del lado del cliente deben autenticarse con credenciales de usuario adecuadas. La elección de cómo se crean los usuarios (y las funciones) depende del proveedor de autenticación configurado.
-
-
-
- Autenticación básica: Los usuarios se crean a través de la interfaz de usuario web de Capella o a través del punto final REST de administración.
- Open ID Connect (OIDC): Activando la opción "auto-register" al configurar el proveedor OIDC, los usuarios se crearán automáticamente en App Service tras autenticarse correctamente..
-
-
Control de acceso
El control de acceso se realiza mediante la función modelo de control de acceso basado en canales de Couchbase Mobile. El control de acceso especifica quién tiene acceso a qué datos. Esto se especifica a través de una función de control de acceso Javascript. El control de acceso de lectura está en la granularidad de un documento mientras que el control de acceso de escritura está en la granularidad de un campo.
Conectar
Después de completar la configuración de seguridad para el App Endpoint, desactive el App Endpoint para ponerlo en línea. Una vez en línea, las aplicaciones pueden conectarse utilizando cualquiera de los puntos de conexión descritos anteriormente.
Operar
Una vez que su App Service esté operativo, puede administrar el App Service y los App Endpoints y cambiar la configuración para satisfacer las necesidades cambiantes de las aplicaciones.
Supervisión
Los paneles de métricas proporcionan información sobre la utilización de recursos del App Service, así como sobre el estado operativo de los App Endpoints. Incluyen estadísticas como el número de documentos leídos/escritos, recuento de errores, número de réplicas activas, etc.
Registro de actividades
Todos los eventos clave del sistema de tipo info, advertencia y error se registran en el centro de actividad. También se alerta a los usuarios de eventos clave que pueden requerir atención, como una utilización de memoria significativamente alta durante un periodo de tiempo prolongado.
Escalado a la carta
Para adaptarse a las necesidades cambiantes de la aplicación, los usuarios pueden escalar App Services horizontal y/o verticalmente cambiando el número de nodos y/o el tipo de computación.
Capella App Services y Couchbase Mobile
Si ya eres usuario de Couchbase Mobile, entonces esta hoja de trucos puede ser relevante para ti. Incluso si nunca has usado Couchbase Mobile pero tienes curiosidad sobre cómo Couchbase Mobile potencia App Services, entonces sigue leyendo.
Plazo | Descripción dentro de Capella | Couchbase Mobile Mapping |
Servicio de aplicaciones | Una instancia de Capella App Services backend. Al vincular un App Service al clúster Server, su clúster se amplía ahora para la sincronización móvil. | Clúster de nodos Sync Gateway conectados a un clúster de Couchbase Server |
Punto final de la aplicación | Una instancia de aplicación en App Service que representa el punto final al que se conecta la aplicación cliente. Cada punto final de aplicación está respaldado por un bucket de servidor. | Base de datos Sync Gateway |
Canal | Etiqueta asociada a un documento procesado por un App Service. El canal asociado al documento determina las políticas de enrutamiento y control de acceso del documento. | Canal de la pasarela de sincronización |
Usuario de la aplicación | Usuario final de la aplicación que accede o sincroniza datos a través de un punto final de URL pública. A un usuario se le concede acceso a uno o varios canales. | Usuario de Sync Gateway |
Función de la aplicación | Agrupación lógica de usuarios de aplicaciones. A un rol se le concede acceso a uno o más canales. | Función de la pasarela de sincronización |
Proveedor de autenticación | El mecanismo mediante el cual los usuarios de la aplicación se autentican con el punto final de la aplicación. Las opciones incluyen Basic (por defecto), OIDC Implicit Flows, Anonymous Read only. | Básico (por defecto), Lectura/escritura Acceso GUEST, OIDC Implícito y Flujos de Autorización |
Función de control de acceso | Función Javascript configurada en App Endpoint que especifica el acceso de lectura/escritura de documentos | Función de sincronización |
Función de filtro de importación | Javascript Función configurada en el Endpoint que especifica el subconjunto de documentos de bucket de servidor que son procesados por el App Service y están disponibles para la sincronización móvil. | Función de filtro de importación |
Próximos pasos
La prueba está en el pudín. Así que pruebe Capella App Services de forma gratuita hoy mismo. Esté atento a una breve demostración de los principales conceptos tratados en este tutorial.
He aquí algunos recursos útiles:
-
- –Documentación de Capella App Services
- Portal para desarrolladores para obtener itinerarios de aprendizaje y tutoriales sobre Capella y Couchbase Mobile
- Casos de uso y aplicaciones de App Services
Puede dejar un comentario a continuación o ponerse en contacto conmigo a través de Twitter o correo electrónico.