google-app-engine


How to integrate user quotas?


I would like to develop an app engine application where users can store data. The problem is that the user data can get really large in size. So I would like to set quotas on single users or check how much space in datastore they use.
I there an easy way to do that? Or do I have to count the bytes of stored strings by myself?
The most efficient way is to keep track of how many bytes are stored for each user, and store it in an entity in the datastore.
Alternatively, and if you are storing the data (or at least a reference) in the datastore, you could also fetch all that are belonging to a user from the datastore and calculate how much is used.
So yeah, you have to do it yourself. The total datastore size as reported by statistics is only for the entire datastore, as well as each entity kind. Besides, it's only updated every ~24 hours, so even if it could be used, it isn't as useful as coding it by hand.

Related Links

Using URL-safe keys in Google Cloud Datastore
AttributeError on google cloud datastore entity object
Is there any way to handle Google Datastore Kind Property names with spaces in Golang?
Google App Engine: Disable favicon.ico
Google Cloud DataStore. How to serve data?
How to access a cloud storage bucket from app engine without getting the 403 FORBIDDEN error?
Google App Engine Custom Domain - Routing in Go
Best approach for caching lists of objects in memcache
com.google.gcloud.datastore vs com.google.appengine.api.datastore
Google App Engine - Issue with creating a bulkloading config
Solr Timeout error even data is instered
Why does BigQuery fail to parse an Avro file that is accepted by avro-tools?
Insufficient Permission with Appengine Flex service account to access Drive folder
Getting Invalid Key message thrown when creating child records
Where do I find the pricing for the different frontend instance types?
Missing index on specific entities in app engine

Categories

HOME
azure-stream-analytics
design-patterns
formal-languages
retrofit2
boto3
augeas
mel
heap
appcelerator-studio
line
opengl-es-3.0
rtf
comsol
frequency-distribution
capistrano3
imessage
gmm
object-storage
dapper-extensions
custom-post-type
bulletphysics
android-sharedpreferences
jasmine-node
oculus
cppreference
alm
magento-1.8
eviews
paragraph
instantiation
activexobject
raft
hivemq
parse-tree
xcode7.3
openalpr
metaprogramming
opensmpp
escpos
http-request
android-exoplayer
file-sharing
wc
snapchat
xbmc
jquery-ui-draggable
activeperl
tf
mongotemplate
css-transforms
oozie-coordinator
vibrate
renaming
restore
latin
google-cloud-console
udpclient
blitline
character-replacement
boomerang
toran-proxy
oracle-spatial
text-search
visual-sourcesafe-2005
avahi
keyup
snackbar
entity-framework-4.3
grouping-sets
mruby
with-statement
named-parameters
kissfft
alternate
dsym
menubar
gwt-openlayers
ie8-compatibility-mode
beaker-testing
route-provider
time.h
cascadingdropdown
pstack
qtconcurrent
josql
node-redis
xcelsius
update-statement
listactivity
http-daemon
ie-compatibility-mode
ajax-polling
build-environment
sifr3
dsoframer
leader
blind
commercial-application

Resources

Encrypt Message