有一个控制台应用程序,许多人会一遍又一遍地开始 并使用希洛。每次启动应用程序并重建 sessionfactory 时,hilo 列 (next_hi) 都会增加,并且带有 id 的保留空间将丢失。
有没有人有这方面的经验?
对于 hilo-generator 来说,这不是一个很好的功能吗? 记住经常关闭的应用程序的高值和低值 许多用户?我的意思是它已经预留了一个id空间,这 在那种环境中,通常没有得到充分利用。
感谢您提前分享您的经验!
最佳答案
Int64 最大值为 9223372036854775807。 让我们假设每个应用程序启动您将插入一条记录并丢失 99 个 ID。 这意味着您有 9223372036854775807/100 = 92233720368547758 个有效 ID。
假设您的应用程序每秒向数据库中插入 50000 条记录。
92233720368547758/50000 = 184467440737095.51614 秒 = 2135039823.346012918287037037037 天 = 5930666 年。
你还在担心吗?
关于c# - 带有 nhibernate 的 c# 控制台应用程序中的 Hilo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1530926/