gpt4 book ai didi

asp.net - 需要有关多客户端和可定制 Web 应用程序架构的建议

转载 作者:行者123 更新时间:2023-12-02 09:45:29 27 4
gpt4 key购买 nike

我们的产品是一个基于网络的类(class)管理系统。我们有 10 多个客户,将来我们可能会获得更多客户。 (Asp.net、SQL Server)

目前,如果我们的客户之一需要额外的功能或自定义业务逻辑,我们将更改数据库架构和代码以满足需求。

(我们只有一个分支代码库和一个数据库架构)

为了使更改不会影响彼此的路由,我们使用在 Web 配置文件中定义的客户端标志,因此这些额外的字段和业务逻辑仅适用于特定客户的系统。

if(ClientId = 'ABC')
{
//DO ABC Stuff
}
else
{
//Normal Route
}

我们的一位资深同事说,这样,像我们这样的小公司就可以节省支持多种资源的资源。

但我的感觉是,这种策略使我们的代码和数据库更难维护。

有人遇到过类似的情况吗?你如何处理这个问题?

更新:如果这不是一个正确的问题,有人可以将此问题移至正确的 stackexchange 站点吗?

更新2:你是对的。代码现在变得很臭,我很确定迟早会成为一场噩梦。我们公司正在做产品,为了省力,后面给其他客户的产品都是在之前的产品的基础上的。我知道理想的方法是将 @e-j-brennan 开发团队分成两部分。其中一个团队致力于核心产品并使其高度可定制,第二个团队致力于为特定客户进行定制。但如果我们公司这么小,那就真的是一个两难的境地了。 :(

最佳答案

我认为您需要决定是销售为每个客户量身定制的定制软件,还是一刀切的“现成”软件(也许可以通过您提供的功能进行定制)。

当你像现在这样只有少数客户时,你可以摆脱你正在做的事情,但我几乎可以保证,如果你继续沿着这条路走下去,你的客户群就会增加,客户数量也会增加-特定的定制也随之增加,你将面临一场噩梦;我已经为多个客户经历过很多次这样的事情,而且总是以同样的方式结束。这一切都是可以管理的,直到它变得不可管理,然后它就会成为一个令人头疼的事情,可能会让你的生活变得非常困难。

如果您决定自己是一家定制公司,并且想要拥有多个版本的软件和数据库,那没问题,只需确保您收取全部费用 - 即考虑到您可能需要维护多个级别源代码和数据库的数量,并考虑到升级将需要花费数倍的努力才能推出,因为您需要测试每个客户端的代码库。

如果您决定成为“现成”类型的产品,那么您最好的选择是为每个客户提供定制体验的能力,而无需更改代码 - 即内置定制通过配置屏幕和表格来控制事物如何工作的功能 - 但每个人仍将使用相同的底层代码和数据库。前期工作较多,但可以为您节省大量时间。

关于asp.net - 需要有关多客户端和可定制 Web 应用程序架构的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12266976/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com