nhibernate或entity-framework能够支持1000个数据库吗?
场景:这将是一个Saas应用程序,*,其中每个客户端都获得自己独立的数据库*e。所以10K个客户端,就意味着10K个数据库(他们的域将映射到一个特定的数据库)。
nhibernate能支持这样的设计需求吗?
entity-framework呢?
我认为连接字符串将在begin_request期间为特定客户修改,基于他们自己的域名,将他们映射到他们的特定db。
注意请不要告诉我这是一个糟糕的设计选择,只是把它作为一个要求。
支持mysql也是一个额外的好处,我知道nhibernate有,但不确定EF
NHibernate可以处理这个问题,你需要为每个数据库创建一个会话工厂。
每个会话工厂都有不同的名称/id,每次你连接到数据库,你应该从正确的会话工厂获取nHibernate会话。
另外,构建会话工厂是一个昂贵的过程,所以应该缓存它们。SharpArch可以帮助您创建多个会话工厂和缓存会话工厂。