Clase de contexto de NDB

Una aplicación puede usar un Contexto para controlar su política de almacenamiento en caché. Context también ofrece API asíncronas convenientes para Memcache y recuperación de URL integradas en las instalaciones asíncronas de NDB; en particular, la API de Memcache admite el procesamiento por lotes automático.

Métodos de instancias de administración de caché

clear_cache()
Borra la caché en contexto.
flush()
Limpia todas las colas de procesamiento por lotes automático (envía su trabajo a los servidores). La limpieza ocurre de forma asíncrona.

Muestra un objeto Future. Para esperar a que finalice la limpieza, llama al método wait() de este objeto.

get_cache_policy()
Muestra la función de política de caché. Esta función de política utiliza un argumento de instancia Key y muestra un bool, que indica si la entidad con esta clave debe almacenarse en caché en contexto. Puede ser None (lo que significa usar default_cache_policy).
get_datastore_policy()
Muestra la función de política de Datastore actual en contexto. Esta función de política utiliza un argumento de instancia Key y muestra un bool, que indica si debe emplear Datastore. Puede ser None (lo que significa usar default_datastore_policy).
get_memcache_policy()
Muestra la función de política de Memcache actual. Esta función de política utiliza un argumento de instancia Key y muestra un bool, que indica si debe almacenarse en caché. Puede ser None (lo que significa usar default_memcache_policy).
get_memcache_timeout_policy()
Muestra la función de política de tiempo de espera de Memcache actual. Esta función de política utiliza un argumento de instancias Key y muestra el tiempo de espera deseado de Memcache en segundos (o muestra cero a fin de utilizar el tiempo de espera predeterminado). Puede ser None, que usa default_memcache_timeout_policy.
set_cache_policy(func)
Configura la función de política de caché.

Argumentos

func
Esta función utiliza un argumento de instancia Key y muestra un bool, que indica si la entidad con esta clave debe almacenarse en caché en contexto. Puede ser None.
set_datastore_policy(func)
Configura la función de política de Datastore.

Argumentos

func
Esta función toma un argumento de instancia Key y muestra un bool que indica si la entidad con esta clave debe almacenarse en el Datastore persistente. Puede ser None.
set_memcache_policy(func)
Configura la función de política de Memcache.

Argumentos

func
Esta función utiliza un argumento de instancia Key y muestra un bool, que indica si la entidad con esta clave debe almacenarse en caché en contexto. Puede ser None.
set_memcache_timeout_policy(func)
Configura la función de política de tiempo de espera de Memcache.

Argumentos

func
Esta función toma un argumento de instancia Key y muestra el tiempo de espera de Memcache deseado en segundos (o muestra cero para usar el tiempo de espera predeterminado). Puede ser None.

Métodos de instancias de Memcache y Urlfetch

La lista completa de métodos se encuentra en la referencia de la API de Memcache. En la lista que se muestra a continuación, se destacan algunos de los métodos que se utilizan con mayor frecuencia:

memcache_add(clave, valor, tiempo, espacio de nombres)
Memcache de procesamiento por lotes automático asíncrono add().
memcache_cas(clave, valor, tiempo, espacio de nombres)
Memcache de procesamiento por lotes automático asíncrono Client cas() (comparar e intercambiar).
memcache_decr(clave, delta, initial_value, espacio de nombres)
Memcache de procesamiento por lotes automático asíncrono decr().
memcache_delete(clave, segundos, espacio de nombres)
Memcache de procesamiento por lotes automático asíncrono delete().
memcache_get(clave, espacio de nombres, use_cache)
Memcache de procesamiento por lotes automático asíncrono get().

Muestra un Future cuyo valor de retorno es el valor recuperado de Memcache o None.

memcache_gets(clave, espacio de nombres, use_cache)
Memcache de procesamiento por lotes automático asíncrono gets().
memcache_incr(clave, delta, initial_value, espacio de nombres)
Memcache de procesamiento por lotes automático asíncrono incr()
memcache_replace(clave, valor, tiempo, espacio de nombres)
Memcache de procesamiento por lotes automático asíncrono replace().
memcache_set(clave, valor, tiempo, espacio de nombres, use_cache)
Memcache de procesamiento por lotes automático asíncrono set().
urlfetch(url, carga útil, método, encabezados, allow_truncated, follow_redirects, validate_certificate, plazo, devolución de llamada)
Urlfetch de procesamiento por lotes automático asíncrono fetch().

Métodos de administración de transacciones

call_on_commit(devolución de llamada)
Pone en espera una devolución de llamada para solicitar la confirmación exitosa de una transacción.

Si no está en una transacción, se realizará la devolución de llamada de inmediato.

En una transacción, se pueden registrar varias devoluciones de llamada, y se solicitarán una vez que la transacción se confirme en el orden en el cual se registraron. Si la transacción falla, no se realizarán las devoluciones de llamada.

Si una devolución de llamada genera una excepción, esta surgirá normalmente. Esto significa que, si la devolución de llamada se realiza de inmediato, cualquier excepción que produzca surgirá de inmediato. Si la llamada se pospone hasta la confirmación, las devoluciones de llamadas restantes se omitirán y la excepción surgirá a través de la llamada transaction(). Sin embargo, en ese momento, la transacción ya se encuentra confirmada.

Argumentos

callback
Función de devolución de llamada. Esta función de devolución de llamada no adopta parámetros ni muestra ningún resultado.
in_transaction()
Muestra True si este contexto representa una transacción; de lo contrario, False.

Métodos estáticos

default_cache_policy(clave)
Comprueba si hay una variable de clase _use_cache en la clase del modelo de la entidad; si la hay, la muestra. De lo contrario, muestra None.
default_datastore_policy(clave)
Comprueba si hay una variable de clase _use_datastore en la clase del modelo de la entidad; si la hay, la muestra. De lo contrario, muestra None.
default_memcache_policy(clave)
Comprueba si hay una variable de clase _use_memcache en la clase del modelo de la entidad; si la hay, la muestra. De lo contrario, muestra None.
default_memcache_timeout_policy(clave)
Comprueba si hay una variable de clase _memcache_timeout en la clase del modelo de la entidad; si la hay, la muestra. De lo contrario, muestra None.