1

我有一个 Web 服务,它需要很少的参数,基于我需要应用一些业务逻辑并返回字符串值(旧或新)的参数,该服务将在生产环境中频繁命中(每秒超过 10 个请求)。实现业务逻辑的最佳方式是什么,我希望服务非常快速且响应迅速。

  1. 将数据(条件)存储在 SQL 表中,并在 C# 中应用业务逻辑并返回值。
  2. 将数据(条件)存储在 XML 文件中并每次读取文件,并在 C# 中应用业务逻辑并返回值。
  3. 将数据(条件)存储在 SQL 表中并编写存储过程以实现 SP 侧的业务逻辑并将值返回给服务。

注意:数据(条件)不会经常变化。

请提出解决此问题的最佳方法。

4

2 回答 2

0

最快的方法是将一些内存缓存层(例如redis)推送到您的业务逻辑前面。该解决方案的有效性取决于可能有​​多少不同的参数组合。如果不是很多 - 您可以将它们全部存储在内存中,并且如果条件已更改,则始终使缓存无效。

你说数据不会经常变化。我的问题是 - 如果数据(条件)变化必须实时呈现给用户,或者任何延迟都是可能的?如果是这样,您可以使用反向代理缓存(例如清漆) - 这应该非常快。

于 2013-04-24T14:43:22.927 回答
0

过早的优化是一件危险的事情。我的 2 美分,我建议尽可能快速轻松地先构建它。然后“让它变得更好”。添加图层等。最后一步是“让它更快”。在迈出第一步之前,您正在考虑最后一步。

于 2013-04-24T14:55:22.207 回答