|
|
1
4
因此,长话短说,我建议构建一个中间件应用程序,专门处理来自用户应用程序的传入请求,然后将它们路由到适当的目的地。这将从后端存储解决方案中充分提取前端用户应用程序,以便在可伸缩性确实成为问题时,只需要更新中间件应用程序。 |
|
|
2
2
这很简单。将应用程序写入接口,使用某种工厂机制提供该接口,并根据需要实现该接口。
在界面设计上想一想,但做一件非常愚蠢的事,“它很简单,在这里可以工作,现在就可以工作”的实现提供了一个很好的平衡,既能证明系统的未来性,又不必过度设计它。 很容易争辩说,此时您甚至不需要接口,而只需要实例化一个简单的类。但是,如果您的契约定义良好(即接口或类签名),那么这就是保护您不受更改(例如重做后端实现)影响的原因。如果有必要,您可以在以后使用接口替换该类。 就可伸缩性而言,测试它。然后,您不仅知道是否需要扩展,还可能知道何时需要扩展。“对于100个用户来说,效果很好,200的问题,如果我们达到150,我们可能会考虑再看后端,但现在是好的。”
|
|
|
3
1
我同意加布里埃尔的观点。然而,另一个好处是,您可以在一段时间内运行一个混合系统,因为您不会在一夜之间将1400万个文档从专有系统转换为您自己开发的系统。 此外,我强烈建议您将文档存储在数据库之外。将它们存储在一个文件系统(本地、SAN、NAS都不重要)上,并将指向文档的指针存储在数据库中。 我想知道你们现在使用的是什么文件管理系统。 另外,不要低估替换由专有系统提供的捕获(扫描和导入)的工作。 |