摘要: 很多时候需要监控服务器上的Memcached运行情况,比如缓存的查询次数,命中率之类的。但找到的那个memcached-tool是linux下用perl写的,我也没试过windows能不能用。后来发现个简单的办法可以做到,就是使用Telnet。首先登录到服务器,然后在cmd命令行中键入telnet 127.0.0.1 11211其中127.0.0.1是服务器的地址(这里是本机) ,11211是memcached绑定的端口号。之后命令行窗口全黑只有光标提示,摸黑输入stats,即可得到描述Memcached服务器运行情况的参数。如下图:其中,uptime 是memcached运行的秒数,cmd_ 阅读全文
posted @ 2011-02-23 16:52 wbqsln 阅读(724) 评论(0) 推荐(1) 编辑
摘要: 很多phper不知道如何在Windows下搭建Memcache的开发调试环境,最近个人也在研究Memcache,记录下自己安装搭建的过程。其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家。Windows下的Memcache安装:1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 ‘c:\memcached\ 阅读全文
posted @ 2011-02-23 16:51 wbqsln 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 1.安装libevent由于Memcached是用libevent库来处理很多打开的连接,所以要先安装libevent。(libevent API提供了一种执行回调函数的机制,使一个文件描述符触发了某个事件或者在达到超时之后执行这个回调函数。)下载libevent,最新版本为libevent-1.4.7-stable引用# wget -P /tmp http://www.monkey.org/~provos/libevent-1.4.7-stable.tar.gz解压缩并安装引用# cd /tmp# tar zxvf libevent-1.4.7-stable.tar.gz# cd libev 阅读全文
posted @ 2011-02-23 16:49 wbqsln 阅读(544) 评论(0) 推荐(0) 编辑
摘要: 简介消息驱动机制是 GUI 系统的基础,消息驱动的底层基础设施之一是消息队列,它是整个 GUI 系统运转中枢,本文介绍了一个基于环形队列的消息队列实现方法,给出了它的数据结构、主要操作流程和核心代码。环形队列环行队列是一种首尾相连的队列数据结构,遵循先进先出原则,如下图所示:ring buffer 示意图在环形队列中用一组连续地址的存储单元依次存放从队列头到队列尾的元素,通过两个指针 read_pos 和 write_pos 分别指向读取位置和写入位置。初始化队列时,令 read_pos = write_pos = 0,每当写入一个新元素时, write_pos 增 1;每当读取一个元素时,r 阅读全文
posted @ 2011-02-23 16:48 wbqsln 阅读(671) 评论(0) 推荐(0) 编辑
摘要: Web应用中为什么会需要消息队列?主要原因是由于在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的insert,update之类的请求同时到达mysql,直接导致无数的行锁表锁,甚至最后请求会堆积过多,从而触发too many connections错误。通过使用消息队列,我们可以异步处理请求,从而缓解系统的压力。在Web2.0的时代,高并发的情况越来越常见,从而使消息队列有成为居家必备的趋势,相应的也涌现出了很多实现方案,像Twitter以前就使用RabbitMQ实现消息队列服务,现在又转而使用Kestrel来实现消息队列服务,此外还有很多其他的选择,比如说:Active 阅读全文
posted @ 2011-02-23 16:47 wbqsln 阅读(514) 评论(0) 推荐(0) 编辑
摘要: 由于安全方面的考虑,Javascript被限制了跨域访问的能力,但是有时候我们希望能够做一些合理的跨域访问的事情,那么怎么办呢?这里分两类情况:一、基于同一父域的子域之间页面的访问参见如下3个domain域:1、taobao.com 2、jipiao.taobao.com 3、promotion.taobao.com它们有相同的父域taobao.com二、基于不同父域页面之间的访问参见如下3个domain域:1、taobao.com 2、baidu.com3、sina.com.cn它们具有不同的父域。解决它们之间跨域的方案:<!--[if !supportLists]-->①&l 阅读全文
posted @ 2011-02-23 16:45 wbqsln 阅读(307) 评论(0) 推荐(0) 编辑
摘要: ajax跨域和JS的跨域通信(Cross The Site)的几种解决方案最近做的一个项目中需要ajax跨域取得数据,如果是在本域中确实没有问题,但是放到二级域和其他域下浏览器直接就弹出提示框:“该页正在访问其控制范围之外的数据,这有些危险,是否继续"1.什么引起了ajax跨域不能的问题ajax本身实际上是通过XMLHttpRequest对象来进行数据的交互,而浏览器出于安全考虑,不允许js代码进行跨域操作,所以会警告。2.有什么完美的解决方案么?没有。解决方案有不少,但是只能是根据自己的实际情况来选择。具体情况有:一、本域和子域的相互访问: www.aa.com和book.aa.c 阅读全文
posted @ 2011-02-23 16:44 wbqsln 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 我这里有一个类似AJAX应用,关键技术是在<script>标签的src属性的应用。请大家看以下HTML代码<HTML><HEAD><title>异步json例子</title><SCRIPT LANGUAGE="JavaScript">function test(){ var s = document.createElement("SCRIPT"); s.id="cgi_emotion_list"; document.getElementsByTagName(&q 阅读全文
posted @ 2011-02-23 16:43 wbqsln 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 最近做个人网站遇到AJAX跨子域名的问题。偶尔看到baidu的通行证处理都是在二级域名passport.baidu.com中处理的,但是baidu很多地方登录都好像是用ajax处理的,他是怎么做的呢?研究了一下,发现一个小技巧。不防让大家也借鉴一下。在http://zhidao.baidu.com/ 未登录用户回答问题时会用iframe调用http://zhidao.baidu.com/userlogin.htmluserlogin.html有下面的javascript<SCRIPTLANGUAGE="JavaScript">document.domain=&q 阅读全文
posted @ 2011-02-23 16:42 wbqsln 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 这些年来,我们的.NET开发团队不断在更新升级开发工具,这也提供了一个机会,让我们能对.NET系列的开发工具做出不断的评估和规范。以下是我们总结出的一些.NET开发不可错过的高效工具。 1.Two monitors——必备的。 2.Visual Studio——同样的,也是必备的。 3.Launchy——一款免费的必备工具。它能帮助开发者快速调用电脑中的程序快捷方式,而无需再通过传统的“开始”——“所有程序”中寻找所需的程序。在安装后,只需键入Alt + Space(空格)即可调出Launchy ,就可以看到漂亮的界面。 4.WinSplit Revolution——另一款免费的必备工具。它帮 阅读全文
posted @ 2011-02-23 16:40 wbqsln 阅读(222) 评论(0) 推荐(0) 编辑
摘要: .NET Framework中,叫做System.Runtime.Caching,这不仅是个缓存库,还是个框架,可以在上面开发自己的库。ObjectCache定义了所有缓存都要实现的通用操作。与之搭配的是个内存缓存实现,叫做MemoryCache。这个缓存系统的结构如下:上图大家可以看出来对应那些产品了吗?下面我给大家介绍一个实现这样一个架构的代码示例,代码的核心就是ObjectCache:定义一个抽象的Provider接口:1: public interface ICacheBuilder2: {3: ObjectCache GetInstance();4: string DefaultRe 阅读全文
posted @ 2011-02-23 16:38 wbqsln 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 微软的模式与实践团队(pattern & practices team)最近发表了名为《使用.NET进行并行编程(Parallel Programming with Microsoft .NET)》的技术书籍,此书包含了为.NET编写并行程序的向导。其基本内容囊括了6个针对并行编程的设计模式,以及相应的代码示例。《使用.NET进行并行编程》力图解决的并行程序中的艰难工作就是:在能够并行运行的多任务中分解问题,协调并行执行的任务,并处理任务间的数据共享来避免同步性的需要所带来的巨大性能影响。为了达成这个目的,本书介绍了6种使用.NET 4任务并行库(Task Parallel Libra 阅读全文
posted @ 2011-02-23 16:38 wbqsln 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 我们先看下面一段程序: /// <summary> /// 父类/// 作者:周公/// 首发地址:http://blog.csdn.net/zhoufoxcn/archive/2008/09/02/2864429.aspx/// 日期:2008-09-01 /// </summary> public class Father { public void Run0() { Console.WriteLine("Father.Run0"); } } /// <summary>/// 子类/// 作者:周公/// 首发地址:http://bl 阅读全文
posted @ 2011-02-23 16:35 wbqsln 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 一、GAC的作用全称是Global Assembly Cache作用是可以存放一些有很多程序都要用到的公共Assembly,例如System.Data、System.Windows.Forms等等。这样,很多程序就可以从GAC里面取得Assembly,而不需要再把所有要用到的Assembly都拷贝到应用程序的执行目录下面。举例而言,如果没有GAC,那么势必每个WinForm程序的目录下就都要从C:\WINDOWS\Microsoft.NET\Framework\vX下面拷贝一份System.Windows.Forms.dll,这样显然不如都从GAC里面取用方便,也有利于Assembly的升级和 阅读全文
posted @ 2011-02-23 16:35 wbqsln 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 开发网页的时候,往往需要观察HTTP通信。我使用的工具主要有两个,在Firefox中是Firebug,在IE中是Fiddler。但是,一直听别人说,付费软件HttpWatch是这方面最好的工具。前几天,HttpWatch的官方网志刊登了一篇好文章,澄清了一些HTTPS协议容易产生误解的地方。学习之后,我增长了不少网页加密通信的知识。我觉得这篇文章很实用,值得留作参考,就翻译了出来。==============================================HTTPS的七个误解原文网址:http://blog.httpwatch.com/2011/01/28/top-7-myth 阅读全文
posted @ 2011-02-23 16:29 wbqsln 阅读(296) 评论(0) 推荐(1) 编辑
摘要: 这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。· 100 - Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新)· 101 - Switching Protocols 服务器将遵从客户的请求转换到另外一种协议(HTTP 1.1新)2xx - 成功这类状态代码表明服务器成功地接受了客户端请求。· 200 - OK 一切正常,对GET和POST请求的应答文档跟在后面。· 201 - Created 服务器已经创建了文档,Location头给出了它的URL。· 20 阅读全文
posted @ 2011-02-23 16:13 wbqsln 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://hi.baidu.com/diy6688/blog/item/aaa5e61f6b1f6c1640341761.htmlMemcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。Memcached作为缓存技术的解决方案,已经是众所周知了;现在很多WEB应用都在使用它——包括一些知名的网站。若你还不知道这些,请在阅读之前先了解一下。 在ASP.NET中使用Memcached,有很多文章都有介绍,以下是我个人的使用经验。 一,准备 你需要有一下软件: 阅读全文
posted @ 2011-02-23 15:35 wbqsln 阅读(511) 评论(0) 推荐(0) 编辑