【问题标题】:What to use and expose for Web Application Auto Ids, GUIDs or Auto Ids + GUIDs?为 Web 应用程序自动 ID、GUID 或自动 ID + GUID 使用和公开什么?
【发布时间】:2016-09-09 00:46:19
【问题描述】:

我正在四处研究,我真的无法下定决心。我只使用自动增量 ID 创建数据库和构建应用程序,但这是我第一个可能会增长的严肃启动项目。

因此,我需要您对下面写的内容或一些最佳实践示例或开源项目的想法,从中我可以看到它是如何完成的。

首先我将从这个开始,这是让我大吃一惊的最后一个谜题。 由于研究并阅读了有关暴露递增 ID 的信息,对于其中一个竞争对手(竞争对手 A),我发现他们有多少客户,甚至创建了多少项目,是的,因为暴露了 ID,但另一方面是另一个竞争对手(竞争对手 B)正在使用 GUID 来识别他们的对象,所以我什么都不知道。

所以比赛结论:

  • 由于竞争,使用自动增量 ID 很糟糕,他们会知道我的业务进展情况
  • 有了 GUID,竞争者将无法根据 ID 了解我的业务进展情况

一些速度和存储结论:

  • 拥有自动增量 ID 速度更快,并且对于关系而言最轻量级
  • 拥有 GUID 速度较慢,关系变得更重

暴露身份的想法:

  • 公开自动增量 ID 只会向竞争公开我的业务进展情况,还有哪些其他安全问题? (实在想不出来……)

  • 公开 GUID 是安全的,但它们有点丑...

所以这只是给我留下了一些事实,我无法制定任何有意义的策略,这是我迄今为止得出的最好结论:

  1. 每个表都将具有自动递增的 ID 列,该列将唯一地呈现一条记录
  2. 如果暴露,我将使用带有 GUID 的第二个 ID 列或者可能是混淆程序?

【问题讨论】:

    标签: web-applications auto-increment guid


    【解决方案1】:

    增加你的 id 不是 ++,而是随机数,比如 random(1000),你的竞争对手会嫉妒而死

    【讨论】:

    • 哈哈哈,说实话这不是我最关心的问题,但我仍然认为它的论点是有效的,因为我在竞争对手的网络应用上证明了它是正确的
    猜你喜欢
    • 1970-01-01
    • 2012-09-12
    • 2016-01-15
    • 1970-01-01
    • 1970-01-01
    • 2017-02-20
    • 2015-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多