我打算在应用层和数据库层之间再建一层以减少数据库访问。
有 20000 个应用程序服务器和一个巨大的数据库服务器。
我不希望有 200 台服务器来查询数据库服务器。因此计划在两者之间构建另一层并稍后在其中缓存数据,例如缓存场。该层中的服务器将定期查询数据库并将结果缓存在服务层中,客户端将查询 WCF 服务器。
我不是在谈论分布式缓存,我已经有了它。
我不熟悉 WCF,为此目的实现它会是一个不错的选择吗?
您会推荐 REST 吗?还是网络服务?
请您参考如下方法:
WCF 是 Microsoft 堆栈上网络(和其他)服务的新标准,它还支持构建基于 SOAP 和基于 REST 的服务。
它也非常适合处理内部(公司内部 LAN/Intranet - 使用快速高效的 TCP/IP 通信)以及面向外的服务。它与 Windows Azure 和云接口(interface),如果你需要支持的话。它可与任何 SOAP 或 REST 客户端互操作,具有高度可配置性、高度可扩展性,并且非常有用,并提供统一的编程模型。如果您需要,它可以与消息队列交互 - 所有这些都具有相同的编程体验。
基于 WCF,您可以轻松地定义您的数据库模型并将它们公开为基于 REST 的 OData 源 - 您将在几分钟内将您的数据库发布到 Web 上(如果您有冒险精神并希望这样做...... .. 但它至少是可能的!)。
所以:是!WCF 绝对是最佳选择!
至于资源:有 MSDN WCF Developer Center其中包含从初学者教程到文章和示例代码的所有内容。
另外,查看 screen cast library up on MSDN获取一些非常有用的 10-15 分钟的信息 block ,几乎与您可能感兴趣的 WCF 相关的任何主题。
