Multiple Java Modules / Services in the same project (Flexible environment)

116 views
Skip to first unread message

E EE

unread,
Apr 27, 2017, 9:20:58 PM4/27/17
to Google App Engine
What is a module / service in app engine java flexible? Is it a java app packaged as a war file?

Is it possible to have more than one?

I see in the admin console that I have one service called "default", is it possible to have more than one service?
If so how do you access them? Different sub domains or part of the path?

I only found docs for other languages.

George (Cloud Platform Support)

unread,
Apr 28, 2017, 12:43:03 PM4/28/17
to Google App Engine

You are right, in the flexible environment a service is provided by a deployed war file, distinguished from the other services by sub-domains, in a way similar to:


https://version-dot-service-dot-app-id.appspot.com

http://version.service.app-id.my-custom-domain.com


Each service enjoys its own app.yaml file, and if there are more services prepared for deployment, all these different app.yaml files can be placed in the same directory. More details on the way these services are accessed in the “How Requests are Routed” online document.


Your questions are covered for the most part in the in the “Quickstart for Java in the App Engine Flexible Environment” document. Related information can be found in “The Java 8 / Jetty 9 Runtime” and “The Java 8 Runtime”.

Antonio Bucciol

unread,
May 3, 2017, 9:15:41 AM5/3/17
to Google App Engine
Hi,

I'm replying to this topic since I think it's cleaner than opening a new topic.

I'd like to ask exactly the same original question(s), but for what concerns the GAE Java Standard environment.


Thank  you,
Antonio

George (Cloud Platform Support)

unread,
May 3, 2017, 3:40:37 PM5/3/17
to Google App Engine
Deployment-wise the situation for the standard environment does not differ from the one already covered in the previous answer. "Each service consists of source code and a configuration file. The files used by a service represent a version of the service. When you deploy a service, you always deploy a specific version of the service". You can gather more detail by reading the "An Overview of App Engine" document.  

Antonio Bucciol

unread,
May 3, 2017, 4:42:23 PM5/3/17
to Google App Engine
Hi George,

thank you for your answer. Glad to know it's possible.

Anyway I notice you linked manual pages for the PHP environment. Please note that, since within GAE I'm currently programming in Java, when it comes to choosing the language for the doc, I always opt for Java. I would never go and look at other programming languages - if you've splitted doc by each one, there must be some difference between them.

The idea that it was possible to have multiple GAE Standard services arose in me right after reading the document you linked. That's why it came to my mind to ask this question.
I frequently read GAE Standard Java documentation, but the (almost) complete absence of references to app.yaml - in contrast with App Engine Flex environment, which dedicates various pages to it - always made me think that app.yaml does not apply to Standard env.

Hope you understand I'm just trying to explain the point of view of an end user - any suggestion on how to use the documentation is well accepted!

Thank you
Antonio

George (Cloud Platform Support)

unread,
May 4, 2017, 11:51:16 AM5/4/17
to Google App Engine
Hi Antonio, 

We are grateful for your observations regarding the quality of the documentation available on-line. This is kept up-to-date, corrected if case be, and may change at any moment, to reflect current situation and latest developments. No documentation can be perfect, complete and faultless, with all the work gone into its creation and updating, even if this is surely desirable. 

Regarding app.yaml specifically, you may choose the Java tab at the top of the page in place of python; usually all documentation pages offer this option, to avoid the need to navigate separately to information relevant to a different programming language. Paragraph titled "module" followed immediately by "Note: Modules are now named Services and services are still declared in appengine-web.xml files as modules, for example: <module>service_name</module>." is relevant. 

You understanding in this regard is undoubtedly highly appreciated!

Antonio Bucciol

unread,
May 4, 2017, 12:03:52 PM5/4/17
to Google App Engine
Hi George,

super!

Thank you for your clear explanation.
Reply all
Reply to author
Forward
0 new messages