Inhaltsverzeichnis
回复讨论(解决方案)
Heim Backend-Entwicklung PHP-Tutorial 文章流量统计,是否必须每次浏览都读写一次数据库?

文章流量统计,是否必须每次浏览都读写一次数据库?

Jun 23, 2016 pm 01:54 PM
数据库 Artikel 浏览 统计

比如一个新闻系统

文章表是news, 开个count栏记录流量?

想在文章中显示被浏览的次数

是否只在php中做成...每次访问

都在news中读出count栏的数值,然后+1

再写入?


这样会否对流量大点的时候做成负载太重?

是否也只能这样做?

我有使用到smarty模板引擎
除了做局部不cahac还有什么需要注意吗?



比如写成...:
$hits_now = $row["hits"]+1;
$pdo->exec("UPDATE `news` SET `hits`='$hits_now' WHERE `id` = '$id'");
这么简直的SQL就直接EXEC了吧?


回复讨论(解决方案)

1、只用数据库的话是需要每次做更新的(点击字段所在的表如果索引正常的话,每天浏览量在50万PV以下没压力的
2、语句注意过滤注入

可以将访问次数放在缓存中,例如 memcache 或者 redis 中之类。  统计开始的时候读取一次流量, 保存在缓存中,每次用户访问都将变量加一,到统计时间点的时候 再将其保存回数据库即可。。。 这样每次统计只需在最开始 和 最后两次读写数据库了。 一次读  一次写。。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie implementiert die Go-Sprache die Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgänge der Datenbank? Wie implementiert die Go-Sprache die Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgänge der Datenbank? Mar 27, 2024 pm 09:39 PM

Wie implementiert die Go-Sprache die Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgänge der Datenbank?

Wissen Sie, wie man Personen in Excel zählt? Wissen Sie, wie man Personen in Excel zählt? Mar 20, 2024 pm 01:30 PM

Wissen Sie, wie man Personen in Excel zählt?

Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP Jun 04, 2024 pm 01:42 PM

Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP

iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen Jul 18, 2024 am 05:48 AM

iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen

Wie implementiert Hibernate polymorphe Zuordnung? Wie implementiert Hibernate polymorphe Zuordnung? Apr 17, 2024 pm 12:09 PM

Wie implementiert Hibernate polymorphe Zuordnung?

Eine ausführliche Analyse, wie HTML die Datenbank liest Eine ausführliche Analyse, wie HTML die Datenbank liest Apr 09, 2024 pm 12:36 PM

Eine ausführliche Analyse, wie HTML die Datenbank liest

Analyse der Grundprinzipien des MySQL-Datenbankverwaltungssystems Analyse der Grundprinzipien des MySQL-Datenbankverwaltungssystems Mar 25, 2024 pm 12:42 PM

Analyse der Grundprinzipien des MySQL-Datenbankverwaltungssystems

Wie lässt sich Go WebSocket in Datenbanken integrieren? Wie lässt sich Go WebSocket in Datenbanken integrieren? Jun 05, 2024 pm 03:18 PM

Wie lässt sich Go WebSocket in Datenbanken integrieren?

See all articles