Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 谷歌应用程序引擎如何运行;什么是负载均衡器工作?_Java_Google App Engine - Fatal编程技术网

Java 谷歌应用程序引擎如何运行;什么是负载均衡器工作?

Java 谷歌应用程序引擎如何运行;什么是负载均衡器工作?,java,google-app-engine,Java,Google App Engine,我计划在GAE上构建一个web服务,我预计它将不得不处理大量的负载。因此,我希望充分利用memcache,希望大多数请求不需要进入数据存储 此web服务将有多个不同的用户,每个用户可能需要来自数据存储的不同且不重叠的数据。我希望GAE的负载平衡将倾向于将来自同一用户的请求发送到同一个Google应用程序引擎实例,这将提高memcache命中率 负载平衡器是这样工作的吗?无论调度算法是这样工作的,都是memcached作业,用于向所有实例显示相同的数据,因此,如果将数据缓存在实例A上,则可以从实例

我计划在GAE上构建一个web服务,我预计它将不得不处理大量的负载。因此,我希望充分利用memcache,希望大多数请求不需要进入数据存储

此web服务将有多个不同的用户,每个用户可能需要来自数据存储的不同且不重叠的数据。我希望GAE的负载平衡将倾向于将来自同一用户的请求发送到同一个Google应用程序引擎实例,这将提高memcache命中率


负载平衡器是这样工作的吗?

无论调度算法是这样工作的,都是memcached作业,用于向所有实例显示相同的数据,因此,如果将数据缓存在实例A上,则可以从实例B获得数据


这就是memcached与仅将数据存储在应用程序内存中的区别。

啊,很有趣-memcached是否将所有缓存数据推送到所有实例?在我的情况下,这可能并不理想,因为如果不同的实例可以“专门化”,这将非常有用。考虑这一点的方式是,所有实例共享一个memcache服务器(实际上,这并不是那么简单,但你可以这样想)。对,但这并不能真正回答我的问题。我需要知道应用程序引擎实例是否能够根据用户进行“专门化”。我知道在很多应用程序中,负载均衡器会尝试将同一用户发送到同一个webnode,因为它可能已经缓存了该用户所需的内容;没有GAE将不允许您控制流量路由的位置,并且您不应该假设用户A将由于任何原因重复路由到同一实例。您应该能够轻松地将应用程序设计为允许任何实例有效地服务于缓存内容,这正是分布式memcache服务的目标。问题不在于任何实例是否可以服务于缓存内容,而是通过允许不同WebNode上的memcached实例为不同的用户“专门化”。