2017-10-04 33 views
0

我试图找出我正在使用的用例的最佳解决方案。不过,我很欣赏从你们那里得到一些建筑建议。合并与单独的后端调用

我有一个用例,其中前端应显示分配给任务的用户列表以及未分配但可分配给相同任务的用户列表。

我不知道更好的解决方案是什么:

  • 有一个后端调用,它收集用户的两份名单,并将其发送 回前端含有列出了新的数据类中。

  • 有两个后端调用,分别收集两个列表中的一个并将它们分别发回 。

第一个解决方案的pro是单个后端呼叫,而第二溶液的亲是在后端的单独的方法的可重用性。

有关哪种解决方案更喜欢的原因和原因的任何建议?

有没有我应该熟悉的任何模式或标准?

在此先感谢

+0

REST风格的设计可能会更喜欢两个调用,因为这些列表可能作为独立资源有意义。更直接的考虑是,如果你的服务器是多线程的,或者你有多个服务器,两个调用可以很容易并行执行,这可能会加快速度。 – Gene

回答

1

,当我遇到的要求,从我开始做的只是一个单一的号召服务器获取数据绊倒,或多或少(取决于问题域),一个单一的功能(这是我会打电话给你的任务用户列表)。

该方法节省了客户端的实现复杂性,并节省了事务(TCP头等)的协议开销。

如果性能分析显示由于请求太多数据(用户体验受到影响)而导致调用速度太慢,那么我会使用第二种解决方案。

总结我会从第一种方法开始。在必要时优化(使用更复杂的解决方案)。

0

由于可重用性,我倾向于这两个调用。也许有一天,您需要为一个案例添加第三个用户列表,然后如果您只使用一种方法,则需要更改该方法。但是,可能有其他用例只需要两个列表,但不是三个,所以您需要在那里更改代码。你也需要改变你所有的测试方法。如果您的项目变大,这会使您的项目难以更新或修复。所有的修改也增加了引入新bug的机会。

看到可以通过后端前端调用的方法就像一个接口有所帮助。 一般而言,一个接口应该打开进行扩展,但关闭方法的返回和要求。否则,稍作修改会导致各种更改。