using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Memcached.ClientLibrary;
using System.Text;
using System.Collections;
using System.Web.Caching;
public partial class test : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            string[] relatedKeys = new string[1];
            relatedKeys[0] = "UID";
            LM.Memcached.Cache.Set("UID", 123);
            CacheDependency cd = new CacheDependency(null, relatedKeys);
            LM.Memcached.Cache.Set("abc",DateTime.Now , cd);

}
        //Cache.Insert("ccc", "adsfasdf");
        //Response.Write(Cache.Get("ccc"));
    }

public void memcached()
    {
        //分布Memcachedf服务IP 端口
        string[] servers = { "192.168.2.26:11211" };

//初始化池
        SockIOPool pool = SockIOPool.GetInstance();
        pool.SetServers(servers);
        pool.InitConnections = 3;
        pool.MinConnections = 3;
        pool.MaxConnections = 5;
        pool.SocketConnectTimeout = 1000;
        pool.SocketTimeout = 3000;
        pool.MaintenanceSleep = 30;
        pool.Failover = true;
        pool.Nagle = false;
        pool.Initialize();
        //客户端实例
        MemcachedClient mc = new Memcached.ClientLibrary.MemcachedClient();
        mc.EnableCompression = false;
        StringBuilder sb = new StringBuilder();
        //写入缓存
        sb.AppendLine("写入缓存测试:");
        sb.AppendLine("<br>_______________________________________<br>");
        if (mc.KeyExists("cache"))
        {
            sb.AppendLine("缓存cache已存在");
        }
        else
        {
            mc.Set("cache", "写入缓存时间:" + DateTime.Now.ToString());
            sb.AppendLine("缓存已成功写入到cache");
        }
        sb.AppendLine("<br>_______________________________________<br>");
        sb.AppendLine("读取缓存内容如下:<br>");
        sb.AppendLine(mc.Get("cache").ToString());

//测试缓存过期
        sb.AppendLine("<br>_______________________________________<br>");
        if (mc.KeyExists("endCache"))
        {
            sb.AppendLine("缓存endCache已存在,过期时间为:" + mc.Get("endCache").ToString());
        }
        else
        {
            mc.Set("endCache", DateTime.Now.AddMinutes(1).ToString(), DateTime.Now.AddMinutes(1));
            sb.AppendLine("缓存已更新写入到endCache,写入时间:" + DateTime.Now.ToString() + " 过期时间:" + DateTime.Now.AddMinutes(1).ToString());
        }
        //分析缓存状态
        Hashtable ht = mc.Stats();
        sb.AppendLine("<br>_______________________________________<br>");
        sb.AppendLine("Memcached Stats:");
        sb.AppendLine("<br>_______________________________________<br>");
        foreach (DictionaryEntry de in ht)
        {
            Hashtable info = (Hashtable)de.Value;
            foreach (DictionaryEntry de2 in info)
            {
                sb.AppendLine(de2.Key.ToString() + ": " + de2.Value.ToString() + "<br>");
            }
        }
        Response.Write(sb.ToString());
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        LM.Memcached.Cache.Set("UID", 111);
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        if (LM.Memcached.Cache.Get("abc") == null)
        {
            LM.Memcached.Cache.Set("abc", DateTime.Now);
        }
        else
        {
            Response.Write( LM.Memcached.Cache.Get("abc").ToString());
        }
    }
}

Memcached 使用的更多相关文章

  1. 支持 .NET Core 的 Memcached 客户端 EnyimMemcachedCore

    1. 介绍 EnyimMemcachedCore 是一个支持 .NET Core 的 Memcached 客户端,是从 EnyimMemcached 迁移至 .NET Core的,源代码托管在 Git ...

  2. Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  3. ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存

    ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存 part 1:给我点时间,允许我感慨一下2016年 正好有时间,总结一下最近使用的一些技术,也算是为2016年画上一个完 ...

  4. 缓存、队列(Memcached、redis、RabbitMQ)

    本章内容: Memcached 简介.安装.使用 Python 操作 Memcached 天生支持集群 redis 简介.安装.使用.实例 Python 操作 Redis String.Hash.Li ...

  5. 企业做数据缓存是使用Memcached还是选Redis?

    企业是使用Memcached还是选Redis? 在构建一款现代且由数据库驱动的Web应用程序并希望使其拥有更为出色的性能表现时,这个问题总会时不时出现.并给每一位开发人员带来困扰.在考虑对应用程序的性 ...

  6. NoSql1 在Linux(CentOS)上安装memcached及使用

    前言:       今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...

  7. Memcached简介

    在Web服务开发中,服务端缓存是服务实现中所常常采用的一种提高服务性能的方法.其通过记录某部分计算结果来尝试避免再次执行得到该结果所需要的复杂计算,从而提高了服务的运行效率. 除了能够提高服务的运行效 ...

  8. Linux 服务器 安装 memcached

    linux centos 一.memcached的安装 1.下载 memcached-1.4.33.tar.gz.libevent-2.0.22-stable.tar.gz 安装 memcached ...

  9. Memcached和Redis比较

    一.存储 Memcached基本只支持简单的key-value存储方式.Redis除key-value之外,还支持list,set,sorted set,hash等数据结构:Redis支持数据的备份, ...

  10. 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展

    上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...

随机推荐

  1. 试读《JavaScript语言精髓与编程实践》

    有幸看到iteye的活动,有幸读到<JavaScript语言精髓与编程实践_第2版>的试读版本,希望更有幸能完整的读到此书. 说来读这本书的冲动,来得很诡异,写一篇读后感,赢一本书,其实奖 ...

  2. ecmall二次开发 直接实例化mysql对象

    $db = &db(); // 第一步赋值数据库类库, $db->query(sql); // 第二步执行mysql 语句; 常用的数据库函数: 得到一行数据 $user=$db-> ...

  3. 王立平--EditPlus激活码

    注冊名:Free User 注冊码:6AC8D-784D8-DDZ95-B8W3A-45TFA

  4. Timing advance of GSM(时间提前量)

    基本概念 时间提前量TA(Timing Advance)的作用是为了补偿电波传输延迟,而根本目的则是为了提高信道编解码效率.由于GSM采用TDMA,每载频8个时隙,应严格保持时隙间的同步,没有TA就无 ...

  5. 将 Android 应用移植到 BlackBerry PlayBook 上

    美国西部时间18号早上,也就是我们的19号凌晨,BlackBerry DevCon活动隆重举行,PlayBook 2.0开发测试版随之发布.PlayBook 2.0的一个重要功能就是支持Android ...

  6. SICP 习题 (1.7) 解题总结

    SICP 习题 1.7 是对正文1.1.7节中的牛顿法求平方根的改进,改进部分是good-enough?过程. 原来的good-enough?是判断x和guess平方的差值是否小于0.001,这个过程 ...

  7. 网络编程之PC版与Android手机版带断点续传的多线程下载

    一.多线程下载         多线程下载就是抢占服务器资源         原理:服务器CPU 分配给每条线程的时间片相同,服务器带宽平均分配给每条线程,所以客户端开启的线程越多,就能抢占到更多的服 ...

  8. BigPipe

    BigPipe是一个重新设计的基础动态网页服务体系.大体思路是,分解网页成叫做Pagelets的小块,然后通过Web服务器和浏览器建立管道并管理他们在不同阶段的运行.这是类似于大多数现代微处理器的流水 ...

  9. 终端I/O之终端标识

    历史沿袭至今,在大多数UNIX系统中,控制终端的名字是/dev/tty. POSIX.1提供了一个运行时函数,可被用来确定控制终端的名字. #include <stdio.h> char ...

  10. QT核心编程之调试技术 (g)

    Qt应用程序的调试可以通过DDD进行跟踪调试和打印各种调试或警告信息.DDD(Data Display Debugger)是使用gdb调试工具的图形工具,它安装在Linux操作系统中,使用方法可参考D ...