显示下一条  |  关闭

染出一道彩虹

如果能像烟花般灿烂,也许消亡便不再可怕

 
 
 
 
 
 
 
 

广东省 广州市 双子座

 发消息  写留言

 
你若不想做,会找到一个借口。你若想做,会找到一个方法。
 
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 

日志分类

 
 
日志分类列表加载中...
 
 
 
 
 
 我要留言
 
 
 
留言列表加载中...
 
 
 
 
 
 
 
日志评论
评论列表加载中...
 
 
 
 
 
 
 
列表加载中...
 
 
 
 
 
 
 
 

有关memcached使用的几个限制

2011-12-22 15:20:50 阅读20 评论0 222011/12 Dec22

memcached自身有几个比较重要的限制,尤其是其中的过期时间限制,得小心,否则很容易踩到地雷:

1)单个缓存值大小限制:

memcached单个缓存值限制为1M(1000000bytes),超过这个限制的时候会出如下错误:

ValueError: Values may not be more than 1000000 bytes in length; received 2000000 bytes

2)key长度限制:

memcache的keys限制为250 bytes,超过这个长度会报错:

ValueError: Keys may not be more than 250 bytes in length, received 14670 bytes

3)expire过期时间限制:

过期时间设置有两种方式:

1、可使用 unix 时间戳格式,即距离1970.01.01 00:00:00的时间偏移量(单位为秒)

2、距离当前时间的时间间隔 (单位也为秒)

设为 距离当前时间的时间间隔 时不能大于 2592000(30天),如果时间值大于2592000 ,那么memcached会把时间理解为unix时间戳格式也就是距离1970.01.01的秒数偏移量。0 为永不过期。

这个问题要特别注意,当我们设置的时间间隔大于 2592000 ,例如2592010,写进去的数据会被认为是unix时间戳

作者  | 2011-12-22 15:20:50 | 阅读(20) |评论(0) | 阅读全文>>

发布mp3fenge

2011-11-16 0:04:42 阅读31 评论0 162011/11 Nov16

之前写的一个根据指定时间区间抽取mp3片段的java工具类,整理了一下,作为类库发布到了code.google.com.

http://code.google.com/p/mp3fenge/

这东东之前在网上一直找不到,后来通过了解mp3的文件格式后才整出来的,希望能帮到一些有同样需要的人。

作者  | 2011-11-16 0:04:42 | 阅读(31) |评论(0) | 阅读全文>>

累计访问超过7W了

2011-10-17 12:32:05 阅读46 评论1 172011/10 Oct17

忘了6W是啥时候了 Mark一下

作者  | 2011-10-17 12:32:05 | 阅读(46) |评论(1) | 阅读全文>>

不可不知 DDoS的攻击原理(ZZ)

2011-10-8 11:14:18 阅读62 评论0 82011/10 Oct8

转载自:http://tech.sina.com.cn/s/2006-07-17/09501040150.shtml

DoS攻击、DDoS攻击和DRDoS攻击相信大家已经早有耳闻了吧!DoS是Denial of Service的简写就是拒绝服务,而DDoS就是Distributed Denial of Service的简写就是分布式拒绝服务,而DRDoS就是Distributed Reflection Denial of Service的简写,这是分布反射式拒绝服务的意思。

  不过这3中攻击方法最厉害的还是DDoS,那个DRDoS攻击虽然是新近出的一种攻击方法,但它只是DDoS攻击的变形,它的唯一不同就是不用占领大量的“肉鸡”。这三种方法都是利用TCP三次握手的漏洞进行攻击的,所以对它们的防御办法都是差不多的。

  DoS攻击是最早出现的,它的攻击方法说白了就是单挑,是比谁的机器性能好、速度快。但是现在的科技飞速发展,一般的网站主机都有十几台主机,而且各个主机的处理能力、内存大小和网络速度都有飞速的发展,有的网络带宽甚至超过了千兆级别。这样我们的一对一单挑式攻击就没有什么作用了,搞不好自己的机子就会死掉。举个这样的攻击例子,假如你的机器每秒能够发送10个攻击用的数据包,而被你攻击的机器(性能、网络带宽都是顶尖的)每秒能够接受并处理100攻击数据包,那样的话,你的攻击就

作者  | 2011-10-8 11:14:18 | 阅读(62) |评论(0) | 阅读全文>>

厚积薄发

2011-9-30 16:59:21 阅读59 评论0 302011/09 Sept30

有时候我们要耐得住寂寞,耐得住诱惑,只要你清楚并相信你在做的...

作者  | 2011-9-30 16:59:21 | 阅读(59) |评论(0) | 阅读全文>>

取模与Ketama统一哈希震荡测试

2011-9-27 9:51:14 阅读82 评论0 272011/09 Sept27

网上关于统一哈希的众多介绍资料中都强调使用统一哈希后添加新结点只影响到环中下一个相邻结点数据这个特点,其实这里很容易对统一哈希的应用造成误导。

因为我们知道,为了使环上的结点能够均衡的承担负载,我们需要引入虚拟结点的概念。然后很显然引入虚拟结点后我们并不能保证新增加的物理结点所创建的虚拟结点都跟某一特定物理结点相邻,如此一来开头所提到的统一哈希的那个显著优点岂不是丢失了。看起来在保证负载均衡和数据震荡之间是个两难的选择,事实并非如此。这源于我们对统一哈希算法了解的不够深入。

我们知道memcached的spy驱动实现了统一哈希算法,叫Ketama统一哈希,其中就引入了虚拟结点的概念。我们通过实验来考察一下这个算法的实用性。

实验说明:

4node,+2node表示,在配置4个结点时写入10W数据,然后配置增加2个新结点遍历读取10W数据,统计查找不到的数据量,

也就是受震荡的数据。

以下是实验数据:

10W测试数据

取模:

1)4node,+2node: 66661 miss;

2)6node,+2node: 74984 miss;

Ketama:

1)4node,+2node: 33708 miss;

2)6node,+2node: 25477 miss;

从以上的实验数据可以看到,取模算法的数据震荡要比统一哈希要明显很多,而且原来的结点越多取模算法引起的震荡越大,而统一哈希引起的震荡越少。

作者  | 2011-9-27 9:51:14 | 阅读(82) |评论(0) | 阅读全文>>

Pareto Principle

2011-9-25 21:35:43 阅读66 评论0 252011/09 Sept25

The Pareto principle (also known as the 80-20 rule, the law of the vital few, and the principle of factor sparsity) states that, for many events, roughly 80% of the effects come from 20% of the causes.

这个原理是由十九世纪末期与二十世纪初期的意大利经济学家兼社会学家维弗利度·帕雷托所提出的。

帕雷托最优(Pareto Optimality) 的定义:帕累托最优是指资源分配的一种状态,在不使任何人境况变坏的情况下,而不可能再使某些人的处境变好。

帕雷托改进(Pareto Improvement)的定义: 指一种变化,在没有使任何人境况变坏的前提下,使得至少一个人变得更好。

这个原则可以应用在许多领域,应用在计算机领域经常有的一些说法就是:

1)80%的响应时间消耗在20%的代码上;

2)80%的访问集中在20%的数据上;

等等等等......

参考:

http://en.wikipedia.org/wiki/Pareto_principle

作者  | 2011-9-25 21:35:43 | 阅读(66) |评论(0) | 阅读全文>>

ActiveMq使用的一个陷阱

2011-9-13 16:51:09 阅读112 评论0 132011/09 Sept13

ActiveMQ版本:5.5.0

使用ActiveMq需注意一个陷阱,下面是activemq.xml的默认配置:

<policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb">

<!-- Use VM cursor for better latency

For more information, see:

http://activemq.apache.org/message-cursors.html

<pendingQueuePolicy>

<vmQueueCursor/>

</pendingQueuePolicy>

-->

</policyEntry>

如果我们启动了优化策略:

<pendingQueuePolicy>

<vmQueueCursor/>

</pendingQueuePolicy>

那么会存在一个问题,如果我们发送的持久化消息过期时间是3分钟,那么当broker宕机的时间超过3分钟,

所存储消息已经过期的情况下,broker重启后,会有故障:

1)内置管理后台无法进入;   2)broker无法被连接和访问;

作者  | 2011-9-13 16:51:09 | 阅读(112) |评论(0) | 阅读全文>>

使用Datetime等日期类型字段注意事项

2011-9-2 19:25:49 阅读72 评论0 22011/09 Sept2

在数据库中使用Datetime、Date、Timestamp等字段类型时需注意:

For MySQL:

1)通过jdbc访问,SQL中该字段内容不能为'',否则mysql jdbc驱动会抛出异常,但是直接通过mysql客户端访问没有问题,但是存储值会自动转换成'00-00-00 00:00:00';

2)通过jdbc访问,SQL中该字段内容可以为null或者‘00-00-00 00:00:00’;

3)假设存储的值为‘2011-01-01 00:00:00’,通过getObject、getString等方法取回的值为“2011-01-01 00:00:00.0”,会多出个“.0”;

For SqlServer(2008):

1)若sql中该字段为'',通过jtds访问,不抛错,写入的该字段内容为'1900-01-01 00:00:00';

作者  | 2011-9-2 19:25:49 | 阅读(72) |评论(0) | 阅读全文>>

Linux一些TCP协议相关参数的解释(ZZ)

2011-8-2 10:50:52 阅读155 评论0 22011/08 Aug2

作者  | 2011-8-2 10:50:52 | 阅读(155) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2012

   
创建博客 登录  
 关注