![]() |
1
17
我建议使用NHibernate或实体框架。对于大型站点,我将使用ADO.NET数据服务。我不会用Linq to SQL做任何大的事情。我认为堆栈溢出可能最终会导致一些有趣的规模问题,即2层而不是3层,而且随着数据库物理方面的变化和这些变化在整个代码中波动,重构它们也会遇到一些困难。只是一个想法。 |
![]() |
2
15
我认为ADO.NET数据服务(以前称为Astoria)有很大的作用。它非常适合Web的REST风格架构。 因为Web是可伸缩的,所以我猜遵循其架构的任何东西也可以伸缩。 另外,您可能还需要注意SQL Server数据服务。 |
![]() |
3
4
如果您谈论的是关系数据库,那么我的选择是将您的所有数据操作封装到存储过程中,而不管您如何从其他层访问它们。 如果禁用对数据库的所有读/写访问(通过存储过程除外),则可以在定义良好的协定后面隐藏数据模型。数据模型是可以自由更改的,因此存储过程仍然遵循其输入和输出。 这使DBA可以完全自由地调整应用程序并使其具有规模。当SQL由数据库外部的工具生成时,这是一项非常非常困难的任务。 |
![]() |
4
4
锁定到存储过程似乎是最近一种衰落的思考方式,至少这是我目前的观察结果。这种思维方式确实适合ORM世界,因为他们通常更喜欢直接与桌子对抗,但任何值得他们盐分的ORM也会允许在你别无选择的时候使用PROC。 关于英孚有很多意见,不管别人怎么说,不管好坏,它是一个v1产品,根据经验法则,微软需要大约3转,以使它正确,可能是谨慎的等待下一个版本至少。 在这个领域,似乎最大的玩家是NHibernate,并且在社区中有很多人支持它。语言特性linq在进入nhibernate堆栈时不应该太远。 |
![]() |
5
1
用任何对你有用的东西。如果您已经有了一个相当规范化的数据库(即,对主键和外键的良好定义),那么这些都是最容易设置的。但是,如果您有不容易规范化的数据,那么实体框架比Linq to SQL更灵活,但是配置它确实需要更多的工作。 |
![]() |
6
1
我们已经在集群环境中对LINQ进行了试验,它在单个机器和集群中的伸缩性似乎很好。在您提供的3个选项中,我认为Linq是更好的选择,尽管每个选项的目标受众略有不同,因此在决定Acesss范式之前,您应该定义将如何处理数据。 |
![]() |
7
1
我建议Linq。它在我们的网站上具有很好的扩展性,并且使用起来非常简单。 |
![]() |
8
1
对LINQ使用存储过程…但不要让存储过程变成数据访问层! |
![]() |
9
0
这篇文章是在2008年云真正起飞之前发表的。似乎需要更新答案。我只提供一些链接和概述。我确信这个网站上有更多关于这个主题的最新文章,如果我找到了,我会在这里添加链接。 在数据可伸缩性和事务处理可伸缩性方面,2017年我们需要讨论云和云服务提供商。 我认为目前排名前三的云提供商是: 成本 使用云服务的一个好处是没有预付费用,没有终止费,而且您只为您使用的内容付费。(引用Alba先生2016年的文章) A Side-by-Side Comparison of AWS, Google Cloud and Azure “” 我们自己使用AWS。我们只在安装和运行了虚拟机的情况下付款,所以这可能是一种廉价的启动方式。通常情况下,服务提供商按分钟或小时收费,但保证您在整个时间内都能享受到。 一个更便宜的方法是尽最大努力的现货定价。现货价格表示为确保满足单个现货请求而必须投标的价格。当你的出价高于现货价格时,亚马逊EC2会启动你的现货实例,当现货价格高于你的出价时,亚马逊EC2会终止你的现货实例。(无耻地引用了亚马逊的用户指南 here ) A Side-by-Side Comparison of AWS, Google Cloud and Azure 是否有一篇好文章对这三个服务提供商进行了并列比较? here . 欲了解更多关于云服务的学术观点,请阅读Yu、Wang、Ren和Lou于2010年发表的论文。” Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing " 在2010年信息通信会议记录中 here ,但您可能需要成为IEEE成员才能访问它。虽然它有点过时,但它非常好,你可以把它作为一个起点。 云计算中的扩展一直在爆炸,直到最近,扩展是通过启动新的虚拟机来完成的,这个虚拟机只需几秒钟,但是通过容器,人们可以在几毫秒内启动新的实例。有关更多信息,请查看Docker和Docker容器 here . 我很抱歉这个答案只是一堆链接来获取更多信息,但我认为这个问题的答案应该有更新。我希望这能激励人们提供更多的第一手资料。如果你已经发布了一些相关信息,请考虑提供链接到你自己的帖子。谢谢! |
![]() |
Drago · Linq通过比较Id和具有Id的对象列表来查询获取列表 2 年前 |
![]() |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
![]() |
Murat Güzel · EF存储库模式错误{'Id'}已被跟踪 2 年前 |
![]() |
dotnetdevcsharp · 减少基于数据类型获取设置的方法数量 2 年前 |
![]() |
saravanan049 · 在实体框架中回滚Azure SQL数据库 2 年前 |