我应该为 API 请求/响应存储什么数据类型?
(不知道以后,要存储的字符串的长度)
恕我直言,一个 NOSQL 数据存储可能非常适合这个。如果您有不同的 API 调用、不同的参数,以及像MongoDB这样的数据库的无模式特性,RavenDB将是一个很好的选择。
关于存储在 SQL Server 中,一种粗略的方法是NVARCHAR(MAX)
只存储一个字符串(最大为 2GB)。这可以作为纯日志使用,但如果您想轻松搜索该数据(监控/分析目的),则不理想。您可以使用 XML 并以更结构化的形式存储每个 API 调用的数据
例如
<MyApiCall>
<Param1>SomeValue</Param1>
</MyApiCall>
然后可以更容易地对其进行索引和查询。
有一个元素是“你想对日志数据做什么”。我假设您从数据库的角度询问,这意味着您想要对该数据进行某种形式的分析/查询(否则您可以只登录到标准文件)。
对我来说,底线是 NOSQL,无模式数据库将是一个很好的选择,并且是我的建议。