Entradas

Mostrando las entradas de julio, 2014

Pensando en servicios escalables, Cloud Endpoints

Imagen
En este ejemplo vamos presentar una estructura inicial que proponga la construcción  de un servicio para poder consumirlo desde diversos ambientes. El caso tradicional, es consumirlo desde escenarios móviles y tomando el modelo arquitectural que propone Google Cloud Endpoints . Vamos a iniciar con simples pasos. Crearemos un servicio que reciba un id y en base a esto el retorno sea una cadena . Para este ejemplo emplearemos Python en App Engine  y aplicaremos conceptos de Google Protocol RPC library. Lo que buscamos es este mismo mecanismo que muestra la Fig. 1. Utilizaron Google API Explorer? Bueno vamos a trabajar el mismo escenario. Fig.1 Google APIs explorer A crear el servicio! Fig.2 Imports y representación del modelo para el servicio Como pueden observar en la Fig.2 estamos implementando Google Protocol RPC library. Luego tenemos  la clase Mensaje y el manejo de la colección de mensajes. Ahora vamos a crear la clase que maneje el servicio y su marcado.

Dashboard-Bigquery, explicación paso a paso del main.py

Imagen
Luego de la publicación Integrando un panel con soporte escalable de consultas, BigQuery llegaron muchas preguntas y solicitudes sobre el paso a paso del código implementado,  ahora les comparto este análisis sobre la implementación. Pueden encontrar actualizada una parte de la wiki del proyecto con esta información ampliada aquí . También los invito  a quienes quieran pueden colaborar en el proyecto de github trabajando un fork y demostrar el talento comunitario. Siempre es bienvenido.  Fig.1 importaciones Para trabajar la integración con BigQuery es necesario autorizarse mediante OAuth2.0. El siguiente decorador Fig.2, me permite obtener el archivo json con la información de seguridad y su ámbito. Fig.2 El decorador Vamos a construir el servicio de integración utilizando apiclient.discovery, en concreto con el método  build . Fig.3 Construcción del servicio de integración con BigQuery Ahora vamos a trabajar algunas variables del proyecto Fig.4. Esto depende