我设计了一个客户端/服务器架构。在该系统中,客户端可以通过API调用调用某些服务 - 这些服务在服务器上实现。由于客户端必须发送一些特定的选项,我对这个架构设计的某些部分感到怀疑。这些选项如下:
search_engine
如您所知,我可以在此架构中使用2种模式,包括:
switch case
选项并发布
服务器。在这种情况下,服务器必须解析输入json(可能是search_engine
)和
根据其选择产生结果。GET
选项提供某种服务。因此,客户端只需通过{{1}}请求调用这些服务。我不确定第一选择是好的设计还是第二选择。既然我已经听说过在客户端/服务器架构中,性能是一个重要的因素,你建议采用哪种设计?
提前致谢。
答案 0 :(得分:0)
根据URL的构建方式,您可以将search_engine
作为查询字符串的参数传递,如
/api/controller/google
/api/controller/bing
并在JSON有效负载中传递query
。
这使您可以自由地处理search_engine
参数,无论是通过原始开关还是更复杂的单独服务。
为了获得更好的图片,请尝试在构建系统后估算添加另一个search_engine
所需的工作量。
此外,如果您测试您的软件,哪种方法更容易(但有效)为其编写测试。