How to modify an application from Automatic scaling to Manual or Basic scaling? how to integrate Modules?

86 views
Skip to first unread message

Juan de Dios Becerra

unread,
Jul 17, 2014, 12:09:53 PM7/17/14
to google-a...@googlegroups.com
I have developed my app with all default, this imply Automatic scaling, lastly some processes are getting longer and I wanted to use Backends, but right now are deprecated, so I need to use Modules, reading the Modules documentation I realized that modifying the file appengine-web.xml I can modify the scaling and in consequence the way that the requests are managed. But when I tried to modify this file and make it manual scaling, when I deploy to App Engine I don't get errors but I get this warning:
"WARNING: Performance settings included in this update are being ignored because your application is not using the Modules feature"
after that my app is working but it generates a Backend, so all time since my version is deployed is consuming backend instance hours, somebody knows how I can modify my actual Automatic scaling app to one app that can use Modules?? thank you in advance.

Robert Gutierrez

unread,
Feb 27, 2015, 7:36:34 PM2/27/15
to google-a...@googlegroups.com
I realize this is an old thread, and that the OP may not be tracking this anymore, but I wanted to help nonetheless.

I'm not sure how to do this in the Java version, but in the python version, what I ended up doing was creating a "fake" module and deploying this along with the normal app.yaml/appengine-web.xml.
What I did was:
    1) create a file called fake.yaml (or something similar for the Java version; basically a copy of your appengine-web.xml but renamed to the name of your new module)
    2) paste in the stuff from the top of your XML file, the stuff about 'runtime' and 'threadsafe'
    3) within those entries at the top, write in a line that says 'module: fake' (or something equivalent in XML). I also included a handler entry for the favicon, just so that there's something that the fake module can route to.
    4) now, back in your appengine-web.xml file, write in the scaling code, for manual or basic scaling
    5) now open a Terminal/Command Prompt window and traverse to your app's directory
    6) run the 'appcfg' command with the word 'update' followed by 'appengine-web.xml' and then the name of the XML file for your fake module.
        In the python version, this looks like 'appcfg.py update app.yaml fake.yaml'
    7) enter your email/password, then your application will deploy both the default module (configured from appengine-web.xml) and the fake module (configured from fake.xml or whatever the filename is)

This should enable the default module and enable any scaling you set. The configuration for the fake module doesn't matter, just so long as it doesn't error out when it updates. Feel free to delete it later.

Of course, if anyone knows of a better way to do this, please reply. After the research I did on this topic, this was the only method I could find.
Reply all
Reply to author
Forward
0 new messages