Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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 AppEngine上的一个应用程序、多个域_Java_Asp.net_Google App Engine - Fatal编程技术网

Java AppEngine上的一个应用程序、多个域

Java AppEngine上的一个应用程序、多个域,java,asp.net,google-app-engine,Java,Asp.net,Google App Engine,我搜索了一下,没有找到以前问过的这个问题(与示例不同),但是如果我错了,请纠正我 我以前使用ASP.NET构建了一个web应用程序,然后被几家公司使用。我使用相同的代码库,并将其部署到相同的IIS网站,但每个公司都有自己的数据库。当收到请求时,我检查请求的hostheader并将其映射到内容数据库(映射包含在共享配置数据库中) 这给了我一个应用程序来维护、修复和部署,而不同公司的实际数据在不同的数据库中完全分离。导出一家公司的数据很容易,而且我觉得不意外地混合不同公司的数据是安全的 我现在正在考

我搜索了一下,没有找到以前问过的这个问题(与示例不同),但是如果我错了,请纠正我

我以前使用ASP.NET构建了一个web应用程序,然后被几家公司使用。我使用相同的代码库,并将其部署到相同的IIS网站,但每个公司都有自己的数据库。当收到请求时,我检查请求的hostheader并将其映射到内容数据库(映射包含在共享配置数据库中)

这给了我一个应用程序来维护、修复和部署,而不同公司的实际数据在不同的数据库中完全分离。导出一家公司的数据很容易,而且我觉得不意外地混合不同公司的数据是安全的

我现在正在考虑用Java/GWT重写这个webapp,并将其发布在AppEngine上。我的问题是:我能做什么来模仿AppEngine上的相同行为?我应该每个公司有一个应用程序吗?这意味着我需要多次部署同一个应用程序,每个公司的站点部署一次。这也意味着每个应用程序每月至少要花费9美元(我认为AppEngine的免费限制还不够)。是否可以创建一个应用程序,然后将其映射到多个自定义域(就像我现在在.NET应用程序中所做的那样)


我理解谷歌应用的想法,管理员应该能够使用AppEngine上的应用ID将一个云应用添加到他/她的域中,然后开始使用它。是否支持为已注册我的应用程序的不同Google应用程序域启用数据分离?我能否以编程方式检查hostheader,并像在.NET应用程序中那样对其进行操作?我不希望一个域的数据可以用于其他域(事实上,这在我的情况下是非常糟糕的:)。

您可以使用它在同一个应用程序实例中创建数据的逻辑分离(也称为多租户)。

有趣!因此,我可以为每家公司创建一个名称空间,而所有内容仍在同一个AppEngine应用程序中。如何检查传入请求指向哪个域?是的,您可以为每个公司创建名称空间。至于确定调用方的域,您应该使用您计划使用的任何身份验证机制。我明白了,因此所有公司都有一个共享的登录页面。持有用户的“表格”将在所有公司之间共享。当用户登录并验证密码时,我知道要映射到该用户的名称空间,并且可以显示特定于公司的数据。我更希望能够将名称空间映射到请求的URL,而不是登录用户(因此对somecompany.com和othercompany.com的请求会自动映射到不同的名称空间)。但我想我可以接受。谢谢你的回答,我想我可以从这里继续。