集中数据访问或变量

标签 c database linux distributed-computing

我正在尝试找到一种访问集中式数据库以进行检索和更新的方法。

以下是我正在寻找的内容,

例如,服务器 1 有此变量 整数计数器;

服务器 2 将与用户交互,并在用户使用服务时增加计数器,直到达到某个阈值。当达到此阈值时,服务器 2 将开始拒绝用户访问。

此外,用户将能够从多个位置使用多个服务器(例如服务器 2),并且每次用户访问任何服务器时,计数器都会增加。

我尝试过谷歌,但很难搜索没有名字的东西。

最佳答案

设计此方法的一种方法是按用户进行分片 - 即根据用户的 ID 在服务器之间拆分用户。也就是说,如果您有 10 台服务器,那么 ID 以 2 结尾的用户的所有数据都将存储在服务器 2 上,依此类推。这假设用户 ID 是均匀分布的。

另一种方法是按位置对用户进行分片 - 例如,如果您的服务器位于亚洲和欧洲。您需要用户记录中的一个属性来告诉您用户所在的位置;基于此,您将知道将它们路由到哪个服务器。

最终,所有这些设计选项都有一个概念:“用户的主记录位于何处?”这些方法中的每一种都试图明确地回答这个问题。

另一种方法与多主复制有关,一些数据库供应商支持这种方法;这种方法的扩展性较差(即很难扩展到 20 台服务器),但您可能也想研究一下。

关于集中数据访问或变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15604815/

相关文章:

c++ - 如何使用更高级别的 C++ 代码编写句子逆向算法?

mysql - 查看SQL数据表

mysql - 在 Web 应用程序中,1 个连接查询 4 ​​个表或 4 个单独的数据库调用哪个更可靠?

database - 这些数据模型中哪个是最正确的?

php - Wkhtmltopdf - 设置页脚字体的工作人员

c - WDM驱动与用户态通信: best practices and callback questions

将具有 10^6 位的十进制数转换为其二进制表示形式

c++ - FindFirstFile 不适用于通配符

python - 带有python "-c"标志的linux命令管道

c++ - 获取无效参数错误 (22)