【发布时间】:2012-09-07 11:07:53
【问题描述】:
我有许多网站和基于 Web 的应用程序在专用 Web 服务器上运行。同一个盒子目前也在运行数据库(这不太可能改变。)
我注意到我在不同项目中遇到的需求经常相互重复。因此,虽然我很安静,但我正在尝试重新规划各个站点的架构。
理想情况下,我想将重复的功能(登录、一些用户报告、错误报告等)提取到核心库中,这让我开始思考。
如果我制作了一个核心程序集,并将其添加到每个网站的 bin 中,那么它将与应用程序配置文件中的任何数据库进行通信。但是当事情发生变化时,这让我对版本控制/维护感到头疼。
我可以将这个核心库放在 GAC 中,这意味着我需要注册/取消注册它,但所有应用都可以根据需要包含和使用它。
或者我可以看到的第三种方法是使用 WCF Web 服务并向我的应用程序添加另一个内部层,在那里他们将核心工作移交给一组单独的 Web 服务。这样做的好处是,如果/当我们扩展时,所有接口都可以保留为一组 web 服务,让我的应用程序只进行 http 或 tcp 调用,而不必担心移动 bin 文件或 gac'ed 程序集。
基本上,我来这里是想看看是否有人对这两种方法有任何想法/cmets/批评,因为我不想开始走一条路,然后不得不重新走另一条路,就像墨菲定律所说的那样当我们有一项主要工作进入时就会出错:)
【问题讨论】:
标签: asp.net asp.net-mvc computer-architecture