我从未使用过Google App Engine后端,因为缺乏样本和详细的文档,我感到非常困惑。
假设我有投票应用。我想在常规无状态GAE servlet中收集投票,然后将数据传递给驻留的后端实例并处理我的数据。如何将数据从常规servlet传递到后端servlet?如何指定哪个servlet类是普通的servlet,以及应该只在后端实例中处理哪个servlet?我没有看到如何在config xml中将servlet分配给后端。
或者如果我有两个后端怎么办 - B1级和B2级。如何在无状态servlet的代码中选择现在有哪些后端处于活动状态?我听说我应该使用URL Fetch与后端交谈,但是如何?我没有找到如何迭代后端实例。
请告知:)
答案 0 :(得分:3)
您应该首先阅读the documentation on backends
如何将数据从常规servlet传递到后端servlet?
您有几个选项 - 通过在memcache或数据存储区中粘贴数据来间接传递它。或者通过使用URLFetch直接传递它来向后端发出请求(请参阅下面的地址信息)
如何指定哪个servlet类是普通的servlet,以及应该只在后端实例中处理哪个servlet?
Backend Configuration上的文档解释了您尚未执行此操作,但您可以将它们标记为仅限管理员,以便公众无法使用它们:
后端与您的主应用程序版本共享web.xml中定义的servlet集。目前无法为每个后端配置一组单独的servlet。
“寻址后端”部分包含有关如何连接到特定后端的信息:
后端实例的目标是HTTP请求到http:// [instance]。[backend]。[app] .appspot.com,或者在应用程序的自定义域中。如果您使用http:// [backend]。[app] .appspot.com定位后端而不定位实例,则App Engine会选择后端的第一个可用实例。
配置后端时,为它们指定名称,这些名称将进入上述url方案中的[backend]插槽。如果您想向第一个可用的B1实例发送http请求,您可以使用类似 http://B1.ruslansapp.appspot.com/dosomething/
的内容