0

我是一名 .net 开发人员,正在为一家公司开发一个应用程序。为此,我需要编写一个小 php 脚本来满足我的需求。我的应用程序需要检查一些几乎每秒从互联网随机变化的信息。我正在考虑制作一个 php 脚本,以便我可以为应用程序提供所需的信息。我的想法是使用简单的文本文件而不是 mysql 数据库(我也可以随意使用 mysql 数据库)。然后制作两个php页面。例如 writer.php 和 reader.php

writer.php 的工作非常简单。该文件会将提交的数据保存到我想用作db的文本文件中。

reader.php 将读取文本文件,然后显示为简单文本,每次读取时它也会清空文本文件。我的应用程序将读取此文件。完成工作。

现在是逻辑问题。

  • reader.php 将被 40 个客户端同时读取。如果有冲突?

  • 如果这种方法会比mysql db快?

  • 如果这种方法比 mysql 数据库更消耗资源?

4

1 回答 1

1

您必须在写入时锁定文件以进行 I/O(PHPflock()函数)。当同时有更多客户端时,这可能会减慢速度,因为当文件被一个用户锁定时,其他所有人都必须等待。写入大量数据时可能出现的另一个问题是,当有很多写入请求时,写入队列可能会变得无限。

MySQL 似乎是更好的主意,因为它缓存写入和读取请求,并且实现它是为了避免同时访问冲突。

于 2013-11-10T15:08:27.017 回答