我正在使用php中的链接缩短项目,我希望能够通过存储访问者的IP来记录每个链接的唯一统计信息。我可以使用MYSQL数据库为单个链接存储ips,这很容易实现,但是在数百个或者可能数千个链接中,我最终会在数据库中存在大量的表。
为每个链接创建一个文本文件并将每个唯一的散列IP存储在该文件中会更有效或更好吗?
谢谢你的时间!
答案 0 :(得分:1)
您可以使用2个DB表进行操作,如下所示:
Table 'link'
- id (AUTO INC)
- link (STRING)
Table 'visit'
- id (AUTO INC)
- link_id (FK)
- ip (STRING)
- count (INT)
如果用户两次回到同一页面,您可以使用ON DUPLICATE KEY UPDATE
类型的查询来增加计数,而不是将其设置为1.
答案 1 :(得分:0)
如果您只是记录信息,那么写入文件会更快。写入数据库仍然必须写入,但您也在运行数据库引擎。
如果你想在滚动文件之外审核数据,那么MySQL将是一条更好的路径。
答案 2 :(得分:0)
您不需要大量的表格。你只需要2张桌子。一个将存储链接列表,然后存储另一个表,其中包含来自链接表的外键和您要捕获的其他数据。
答案 3 :(得分:0)
从长远来看,使用数据库会更好,因为它可以组织数据并让您查询数据。否则,您可能会在日志中包含数据,但您无法对该数据执行任何操作...