<?php
//引入memcached
require_once '../class/memcached.class.php';
//连接MySQL
$link = mysqli_connect("localhost", "root", "", "laravel");
//给memcached传值
$mc = new memcached(array(
'servers' => array('127.0.0.1:11211'),
'debug' => false,
'compress_threshold' => 10240,
'persistant' => true,
));
//获取文章id
$id = $_GET['id'];
//设置key
$key = "news_click_" . $id; // 33 100 news_click_33 102
//获取key
$click = @$mc->get($key);
//如果内存中没有
if ($click === null) {
//如果内存中没有,去数据库读点击数
//根据id,读文章记录
$sql = "select clicknum from news where id=$id";
//执行
$result = mysqli_query($link, $sql);
//获取结果
$arr = mysqli_fetch_assoc($result);
//获取浏览量
$click = $arr['clicknum'];
//自增浏览量
$click++;
//添加内存
$mc->add($key, $click);
} else {
//如果有内存, 直接自增值
$mc->incr($key, 1);
//本次访问量+1
$click++;
//减少数据库压力,5次一蹦
if ($click % 5 == 0) {
$sql = "update news set clicknum=$click where id=$id";
mysqli_query($link, $sql);
}
}
//数据库表中,记录的点击数要自增1
echo "document.write('{$click}')";
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h1>隔壁老王,帮助别人,从不留名</h1> <div>发布时间:2018-07-03&nbsp;&nbsp;点击数:
<script type="text/javascript" src="click.php?id=1"></script>
</div> <hr/>
<div>很随便</div>
</body>
</html>

memcached优化方案实例的更多相关文章

  1. Tomcat 配置详解/优化方案

     转自:http://blog.csdn.net/cicada688/article/details/14451541 Service.xml Server.xml配置文件用于对整个容器进行相关的配置 ...

  2. iOS界面跳转的一些优化方案

    原文地址: http://blog.startry.com/2016/02/14/Think-Of-UIViewController-Switch/ iOS界面跳转的一些优化方案 App应用程序开发, ...

  3. tomcat配置详解/优化方案

    Service.xml Server.xml配置文件用于对整个容器进行相关的配置. <Server>元素:是整个配置文件的根元素.表示整个Catalina容器. 属性:className: ...

  4. 百度地图Marker优化方案

    简介 在使用百度地图的时候,我们需要在地图上增加标注Marker来展示设置信息.随着用户需要不断增多,加载更多的Marker标注信息成为了一种奢望.然而通过自己技术的提升,归结出来了一下方案. 引入百 ...

  5. Tomcat 优化方案 和 配置详解(转)

    转自 Tomcat 优化方案 和 配置详解 http://201605130349.iteye.com/blog/2298985 Server.xml配置文件用于对整个容器进行相关的配置. <S ...

  6. Tomcat 配置详解/优化方案(转)

    转载地址:https://blog.csdn.net/cicada688/article/details/14451541/ Service.xml Server.xml配置文件用于对整个容器进行相关 ...

  7. 数据库SQL优化大总结之 百万级数据库优化方案(转载)

    网上关于SQL优化的教程很多,但是比较杂乱.近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充. 这篇文章我花费了大量的时间查找资料.修改.排版,希望大家阅读之后,感觉 ...

  8. mysql 百万级数据库优化方案

    https://blog.csdn.net/Kaitiren/article/details/80307828 一.百万级数据库优化方案 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 wher ...

  9. oracle 优化方案小记

    1. 目前状况 1.1 表空间未合理规划,导致所有的用户下的所有表都创建在默认的表空间下 oracle 使用过程中未针对特定数据表进行特定的表空间规划,导致目前实例中所有的数据库表都存储中默认的表空间 ...

随机推荐

  1. c++沉思录 学习笔记 第六章 句柄(引用计数指针雏形?)

    一个简单的point坐标类 class Point {public: Point():xval(0),yval(0){} Point(int x,int y):xval(x),yval(y){} in ...

  2. linux 查看信息-进程&用户&服务&程序

    进程 1.查看所有进程 2.实时显示进程状态 用户 1.查看活动用户 2.查看登录日志 3.查看系统所有用户 4.查看系统所有组 5.查看当前用户的计划任务 服务 1.列出所有系统服务 2.列出所有启 ...

  3. springMVC学习 十二 拦截器

    一 拦截器概述 拦截器技术比较像java web技术中的过滤器技术,都是发送 请求时被拦截器拦截,在控制器的前后添加额外功能.但是和Spring中的Aop技术是由区别的.AOP 在特定方法前后扩充(一 ...

  4. VS“新建网站”与“新建Asp.Net Web 应用程序”的区别

    WebApplication(新建Asp.Net Web 应用程序)编程模型的优点:针对大型网站 1.编译速度网站编译速度快,使用了增量编译模式,仅仅只有文件被修改后,这部分才会被增量编译进去. 2. ...

  5. 获取IP地址方法

    function getip() {     static $ip = '';     $ip = $_SERVER['REMOTE_ADDR'];     if(isset($_SERVER['HT ...

  6. python模块:hmac

    """HMAC (Keyed-Hashing for Message Authentication) Python module. Implements the HMAC ...

  7. s6-2 UDP

    User Datagram Protocol  UDP 是一个无连接的(connectionless)的传输层协议  UDP传输数据段,无须建立连接  UDP 在 RFC 768中描述  很多 ...

  8. Altera 在线资源使用

    Altera 在线资源使用 Altera 在线资源使用 1 1.Altera中文版 2 2.建立myaltera账户 获取官网信息与支持 2 3系统化的设计资源 2 3.1.设计实例 2 3.2.参考 ...

  9. 如何在html与delphi间交互代码

    [转]如何在html与delphi间交互代码 (2015-11-19 22:16:24) 转载▼ 标签: it 分类: uniGUI uniGUI总群中台中cmj朋友为我们总结了如下内容,对于利用de ...

  10. Rocketmq日志收集与logback集成Demo

    官方文档有简洁的例子,这里就做一个简单补充和实践 直接上logback-boot.xml文件 <?xml version="1.0" encoding="UTF-8 ...