Usa Cloud Datastore

Puedes usar Google Cloud Datastore a fin de almacenar los datos de tu app de App Engine. Cloud Datastore es una base de datos creada para brindar ajuste de escala automático, alto rendimiento y desarrollo de aplicaciones sencillo.

En este documento, se describe cómo utilizar la biblioteca cliente de Google Cloud para almacenar y recuperar datos mediante Cloud Datastore en una app de App Engine.

Requisitos previos y configuración

Sigue las instrucciones en “Hello, World!” para PHP en App Engine a fin de configurar tu entorno y proyecto, y comprender cómo se estructuran las apps de PHP en App Engine. Anota y guarda el ID del proyecto, ya que lo necesitarás para ejecutar la aplicación de muestra que se describe en este documento.

Clona el repositorio

Descarga (clona) la muestra:

git clone https://github.com/GoogleCloudPlatform/php-docs-samples
cd php-docs-samples/appengine/flexible/datastore

Edita la configuración del proyecto y establece las dependencias

Instala las dependencias con Composer:

composer install

Código de la aplicación

La aplicación de muestra registra, recupera y muestra las IP de los visitantes.

Primero, la aplicación crea una instancia de cliente de Cloud Datastore:

$datastore = new DatastoreClient([
    'projectId' => $projectId
]);

Cada visita es una entidad con campos para la dirección IP del visitante y una marca de tiempo, y se guarda en Cloud Datastore con el comando insert:

// Create an entity to insert into datastore.
$key = $datastore->key('visit');
$entity = $datastore->entity($key, [
    'user_ip' => $user_ip,
    'timestamp' => new DateTime(),
]);
$datastore->insert($entity);

Con el comando query se recuperan las diez visitas más recientes, en orden descendente:

// Query recent visits.
$query = $datastore->query()
    ->kind('visit')
    ->order('timestamp', 'DESCENDING')
    ->limit(10);
$results = $datastore->runQuery($query);
$visits = [];
foreach ($results as $entity) {
    $visits[] = sprintf('Time: %s Addr: %s',
        $entity['timestamp']->format('Y-m-d H:i:s'),
        $entity['user_ip']);
}

Usa archivos index.yaml

La app de muestra realiza consultas sencillas. Las consultas más complejas de Datastore requieren uno o más índices, que debes especificar en un archivo index.yaml que se sube junto con tu app. Este archivo puede crearse de forma manual o generarse de manera automática cuando pruebas tu app de manera local.

Pruebas locales

Si necesitas desarrollar y probar la aplicación de forma local, puedes utilizar el emulador de Cloud Datastore.

Más información

Para obtener toda la información sobre Cloud Datastore, incluidos los conceptos y las optimizaciones, consulta la documentación de Cloud Datastore.

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

Entorno flexible de App Engine para documentos de PHP