Hello Shaunak,
A good way to share a state between several App Engine instances is to store the data in Memcache. You could have your instances query Memcache directly when they need to read their configuration information or at regular intervals to check for updates. Since data can be ejected from Memcache at any time it should be backed by Datastore so that your instances can put the data back into Memcache if/when it cannot be found. This way updating Datastore and Memcache would make all of your instances aware of the new configuration the next time they check. In a situation where some of your services use manual scaling, they can be directly addressed <https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed#targeted_routing> either by having their own individual Pub/Sub subscriptions or by HTTP requests. You can obtain the list of your instances programmatically using the Admin API <https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions.instances/list>. I hope this helps! On Tuesday, May 30, 2017 at 5:39:31 PM UTC-4, Shaunak Godbole wrote: > > Hi, > > In our app engine deployment we have some static json that represents the > configuration parameters for the server. Every time we have to change any > parameters, it requires a repush of the entire stack. > > What are the recommended ways of creating a dynamic configuration library > where we only need to push the configuration files for the changes to take > effect. > > I can think of using task queues, or pub-sub for generating the > notifications, but both have the same drawback that the message will only > be delivered to 1 single task and not to all the tasks globally. > > Thanks, > Shaunak > -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/1df6e359-974d-446c-b8b4-ade1ab43f3ae%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
