php - 选择什么来存储一个整数?数据库?或文本文件?

标签 php web-services sqlite text-files

我用 PHP 构建了一个小型网络服务。我想控制对特定 API 方法的调用次数。

起初我想到了使用文本文件,因为它只是一个整数。但是在仔细研究了 SQLite 之后,它似乎方便多了。 所以代码只是:从 SQLite 获取“计数器”并在调用该方法时递增它,然后将它存储回 SQLite 数据库。

这是正确的做法吗?仅使用一个文件还是...可能更简单、更具可扩展性?

提前致谢。

最佳答案

第三种可能性:memcachedb .它与 memcached 兼容,但将其键值存储存储到 BDB 文件中。它不仅有读写命令,还有数值的原子递增/递减。

另一种选择是编写“计数器服务器”。一个通过套接字获取“读取”和“递增”命令的独立进程。优点是做“原子”增量真的很容易。它将计数器存储在一个简单的文件中,没有并发问题,因为服务器永远不会超过一个。

用不到一百行的 C 语言编写应该很容易。只需一个紧密的循环,一次处理一个命令,每隔几秒刷新一次磁盘。由于处理非常简单,因此延迟最小。

关于php - 选择什么来存储一个整数?数据库?或文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/476933/

相关文章:

php - Laravel:MethodNotAllowedHttpException:此路由不支持 GET 方法。支持的方法:POST

php - 如何将 PHP 日期中的 M 转换为 m

php - PHP 中的求解算法(Josephus 置换)

sqlite - 选择特定值 SQLite

sqlite - 用于检查 SQLite3 中是否存在行的有效查询

php - 如何在 opencart 中创建自定义管理页面?

web-services - 如何过滤服务器上的 Backbone 集合

c# - 使用服务时如何避免冲突? (.NET C#)

java - 如何使用参数初始化 Java EE 5 JAX-WS 2.0 Web 服务

python - 如何在 Windows 上使用 Python 将 SQLite 2 转换为 SQLite3?