2013-04-10 33 views
-1

我要为我的ASP.NET MVC 4应用程序部署IIS 7 Web服务器。我的Web服务器部署是否正常?

Windows Server 2008的

IIS 7

SQL Server 2008中

我要做到这一点: Deployment schema

在我的应用程序:

*每个客户必须使用两个数据库

  • 首先DB:他们自己的数据库(每个客户有一个)
  • 二DB:该全局数据库(所有的客户具有相同的一个)

第一个DB可以加入到第二个DB

(我将使用Server Binding

而且有关Web服务器

  • 每个客户都有自己自己的Web站点(相同的IIS Web服务器上)以获得查看/ UI

  • 所有客户都有相同API Web Server(此Ë将尽一切:从数据库中获取数据,添加/删除数据,...)

  • 每个客户有一个搜索引擎(建议工具),使用这个工具,我不得不负载的所有相关数据到内存(重新加载此数据每4小时)

这是我第一次有部署这样的服务器,所以我不知道该怎么做最好...

如果有任何建议,建议,参考,书籍,...请发送给我。 任何帮助表示赞赏!

回答

1

如果有足够的内存并且编程允许,IIS和SQL Server已经将性能缓存在内存中。你不需要写一个特殊的模块来做到这一点。

您不需要Server Binding跨SQL Server中的数据库连接。你刚刚加入翻过你的SQL数据库(只要它们是在同一台服务器上)

SELECT D1.F1, D2.F2 
FROM 
ClientDatabase.dbo.Table1 D1 
INNER JOIN 
GlobalDatabase.dbo.Table2 D2 
ON D1.Key = D2.Key 

的SQL Server已经自带了一个文本搜索引擎http://msdn.microsoft.com/en-us/library/ms142571.aspx

请问你的数据库记录内搜索文本,或将你在外部文件中搜索文本(即Word,PDF)

看起来你正在重新发明轮子。如果您使用预构建的久经验证的组件,您更有可能取得成功!

+0

非常感谢,在同一台服务器上使用“跨数据库连接”而不是“服务器绑定”很有帮助。 关于“搜索文本”我无法在SQL Server 2008中使用文本搜索引擎,因为性能不佳。 我的搜索工具在响应时间内需要<200 ms。 (它看起来像谷歌中的关键字建议),我必须联合至少6个表来进行搜索。 我打算构建一个API Web服务器,因为我必须在将来为智能手机编写相同的应用程序/新版本... – hungdoan 2013-04-10 04:24:28

+1

文本搜索从现有数据构建目录,并且您搜索的目录不是表格。你的内存API将和内置的文本搜索一样 - 将六个表连接起来,以便将数据导入缓存/目录。在这两种情况下,搜索都将很快但过时。你可能还想考虑它。 – 2013-04-10 04:38:10

+0

hey @ElectricLlama你有什么解决方案''索引视图'交叉数据库连接' - 在SQL服务器中,我们不能创建一个与SCHEMABINDING'视图... – hungdoan 2013-04-11 04:02:38