En nuestra serie de formación continua, cada vez surgen una serie de preguntas, que enumero a continuación con sus respectivas respuestas.
Couchbase M101 - Arquitectura móvil de Couchbase
Documentación de la API IOS de Couchbase Lite: http://www.couchbase.com/autodocs/couchbase-lite-ios-1.0b1/annotated.html
P: ¿Son los filtros la forma correcta de filtrar los datos de determinados usuarios?
R: Los "filtros" son canales, y sí, el propósito de los canales es doble: en primer lugar, poder sincronizar sólo los datos relevantes para el usuario (filtrar) los datos, y en segundo lugar, reducir la cantidad de transferencia de datos necesaria, ahorrando ancho de banda y descargas innecesarias, lo que es bueno para los dispositivos móviles.
P: ¿Puedo conocer más detalles sobre las integraciones y el uso de los socios?
R: Estas asociaciones son relativamente nuevas, por lo que todavía no hay muchas aplicaciones de ejemplo, pero ya hay algunas. Estas tres integraciones iniciales de socios son para mecanismos de construcción de aplicaciones que son alternativas al desarrollo nativo puro como aplicaciones híbridas nativas/HTML5. Así que tenemos plugins de Couchbase Lite para PhoneGap, Appcelerator Titanium y Xamarin en este momento.
P: ¿Se puede definir un canal de difusión que se sincronice con todos los usuarios?
R: La solución es simplemente crear un canal al que asociar a todos los usuarios. Por ejemplo, puedes llamarlo "broadcast" y usar access() para suscribir a todos los usuarios a ese canal. Cualquier documento que esté asociado a ese canal llegará a todos los usuarios.
P: ¿El plugin de phonegap ya es público y se puede utilizar con phonegap build?
R: Sí, si quieres una guía rápida, sigue las instrucciones del proyecto de ejemplo: https://github.com/couchbaselabs/TodoLite-PhoneGap Pronto debería estar en la lista del sitio web build.phonegap.com, no sé exactamente cuándo, pero pronto.
P: Queremos canalizar contenidos en función del dispositivo o mac, ¿es posible?
R: Muy fácil, básicamente en la aplicación cuando creas el documento de registro del usuario, también puedes añadir a los canales a los que están suscritos definiendo los basados en la plataforma, así doc.channels: ["mac", "ios"] etc.
P: ¿Seguridad de los datos en reposo y en tránsito?
R: SSL es opcional y puedes configurar la pasarela de sincronización para que lo utilice, o puedes ponerla detrás de un proxy/pasarela que lo utilice.
P: ¿Cómo funcionan los canales en caso de usuarios anónimos? ¿Puedo suscribir el dispositivo/usuario a un canal específico?
R: Las peticiones no autenticadas son tratadas como GUEST. Si permite/habilita el acceso como INVITADO, también puede suscribirse como INVITADO a canales y sincronizar documentos en ese canal asociado como cualquier otro usuario. También puede crear sus propias sesiones y cookies de "autorización" específicas del dispositivo, y suscribirlas también a canales.
P: ¿Canales específicos para cada dispositivo en lugar de canales basados en usuarios o funciones?
R: Un "usuario" es sólo un nombre, también podría ser un dispositivo.
P: Autenticación personalizada aparte de facebook y persona ¿cómo?
R: En la documentación tenemos algunas instrucciones básicas para hacerlo aquí: http://docs.couchbase.com/sync-gateway/#custom-indirect-authentication
P: ¿También el calendario de lanzamiento de la pasarela de sincronización fuera de la beta?
R: Se estima que el lanzamiento de GA se producirá a principios del primer trimestre de 2014.
P: ¿Cuál es el estado actual de Couchbase Lite para Android? ¿Se ha completado una implementación verdaderamente nativa? ¿Habrá soporte para el desarrollo en Eclipse, no sólo Android Studio?
R: Toda la solución Couchbase Mobile está en Beta, incluyendo Android. Couchbase Lite Android está en fuerte desarrollo junto con el resto. La nueva API de Couchbase Lite Android debería ser lanzada en unas semanas. Puedes desarrollar en Eclipse, actualmente sólo estás jalando las librerías necesarias desde Maven, lo cual puedes hacer con cualquier IDE. Si necesitas instrucciones u orientación sobre Eclipse, te sugiero que lo publiques en el grupo de Google de Couchbase Mobile.
P: ¿Cuál es el modelo de precios? ¿Existe una edición exclusivamente comunitaria?
R: Actualmente sólo hay una edición, y como es habitual con todos los productos Couchbase, es completamente de código abierto. Todavía estamos en Beta y no tengo conocimiento de planes para una Enterprise Edition por ahora.