自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

诗剑书生的专栏

我在灌江口上住花开花落不知流年度雁过空遗秋色暮抚琴细听梧桐雨 轻舞残虹漫展书云卷云舒思愫万千缕安得婵娟与共处常作识字耕田夫

  • 博客(299)
  • 资源 (1)
  • 收藏
  • 关注

原创 GC时间过长导致channel心跳失败而close,io崩溃。

一个以web方式向外提供图象比检测的服务,开始设计时大约每日8万左右的访问量,部署两台虚拟机做集群(以FORM方式上传图片的http访问不可能象普通http请求那样性能高。因为网络带宽的限制)。上周因为一特殊业务有上千万请求一下子过来(业务方事先未通知服务),一下子把服务打挂。开始分析原因时发现依赖的远程服务没有注册成功,以为是因为反复注册不成功导致初化化服务不做重做而造成大量FGC。但是看一下其

2013-11-26 15:15:09 5937

原创 _*这个语法糖非常变态,完全没有实际的语义关联,完全是随心所欲,增加用户的记忆成本。

把数组的元素作为参数而不是把数据本身作为参数,使用这个语法糖完全没有理由,用户记得就是记得,记不得就完全不知道。没有任何推理和关联意义。

2013-11-25 15:47:16 1471

原创 JVM参数配置的线上教训

原来规则处理业务五十台服务器经常大量fgc,load飙高,我修改了jvm配置后,五十台服务器十多天没有任何异常,双十一中轻闲度过。可是今天突然又有一台大量fgc,load飙高。分析了半天,回头一看,配置脚本漏推了。唯 一这一台漏推,唯有这一台异常。因为都是消息处理,处理完消息立即就扔了,集群维护人员把young设置为最大堆的一半:-Xms4G -Xmx4G -Xmn2G这样除掉Perm,  Old

2013-11-14 17:13:29 2220

原创 SCALA的apply和update其实就是功能更强的“索引器”的作用。

比之C#而言,不仅仅可以访问int型定位的元素,也可以用来访问其它类型关联的元素,如map等。

2013-11-14 10:47:06 2337

原创 FireFox的上传请求bug,一次提交,请求两次,其中一次是get.

public void execute(Context context, @Param("mapdata") FileItem mapdata) throws IOException { brc.setBuffering(false); ResponseMsg rm = new ResponseMsg(); try { byt

2013-11-08 11:22:17 3628 1

原创 FuelBand SE没有入手的慎入,仅是一款非常弱智的计步器。

FuelBand 对运动强度完全没有反映,以12公里的速度跑了10公里(50分钟),这个强度可以说普通人根本达不到,但是积累的fuel还不如散步。跑10公里是因为在跑步机上,陀螺仪检测不到绝对距离的运动,而散步却有绝对距离,点数反而多。按我昨天的运动量应该10000点以上,可是只有5000点。前天上专业的力量训练课,那么大的强度竟然不到1000点。上nike的当了,简单说就一个距离计算器,却吹什么

2013-11-08 08:42:55 2950

原创 Nike+ Fuelband SE不能激活无法连接的请看这里。

Nike+ Fuelband SE美国时间11月6日发布,我们这里要到明天才能看到,有提前入手不能激活的请看这里。1不要在mac下激活,激活以后可以在mac下使用,但激活本身在mac下很难成功。2.之前已经固件更新的的,要重置为出厂设置。具体下载这个文件,运行批处理就行了。我是在xp下执行的,win7,win8理论可以,没有测试。http://yun.baidu.com/share/link?sh

2013-11-06 09:09:28 27359

原创 iis判断request method是按Content-Type而不是request line判断的

原来iis判断request method是按Content-Type而不是request line判断的。如:GET /xxx.asp HTTP/1.1Host: xxx.xxx.xxx.xxxUser-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Firefox/24.0Accept: t

2013-10-28 15:02:43 2258

原创 升级到mac osx 10.9后,你的sizeUp不能用了吗?

提示"enable access for assistive devices",可是新版的辅助功能下面已经没有了这个选项,很多人以为是bug,说等apple新的发布。其实有新的功能代替了这个选择:系统设置偏好-安全性与隐私-辅助功能,右边的窗口是“允许下面的应用程序控制你的电脑”,把sizeUp选中,然后就可以正确工作了。

2013-09-22 23:34:16 4165

原创 Mac OS这是怎么了?哪位牛人知道的解释一下。

vi abc输入:#! /bin/bashecho "hello,axman!"保存退出$sudo mv abc /usr/bin..........$ABChello ,axman$abchello,axman$AbChello,axman对于自定义脚本命令不区分大小写啊。

2013-09-18 10:03:22 1857 1

原创 最恨那些无原则的奴性的抬高一切的嘴脸。

GO确实很优秀,这点有目共睹,但并不是它的缺点也是优点,某些人对它的吹捧已经成了奴性:“没有分号及只需少量的逗号和圆括号,使得GO语言程序更容易阅读,并且可以大量降低编写代码时的键盘敲击次数。”真TMD的奴才嘴脸啊。有几个用GO的人之前从没有接触其它语言直接从GO开始编程的?多年的其它语言的习惯被强制改变,特别是for后面不由自主地会敲(),这是程序员的本能,真的会节约时间吗?

2013-09-14 21:21:06 1584

原创 今天才知道,原来按规范域名最后是有点的,没有点只是一种简略形式。

以前写url的表达式时一直没有注意到这个情况,结尾一定是数据或字母,真的有人按规范写一个www.xxx.com.这样的域名就通不过了。所以99.99%的url表达式要重写。

2013-09-05 15:01:54 2044 1

原创 Groovy中Closure的this到底指向谁?

Groovy中Closure的this到底指向谁?

2013-08-09 16:29:56 2017

原创 原来java的正则也支持后置引用的,以前一直没有注意到。

除了在完成匹配后使用Java所缓存的结果外, 在匹配开始前就可以在匹配模式中通过'\i'的形式引用第i个分组可能匹配到的实际字符串. 这种引用模式被称为后置引用(Back Quote)

2013-08-08 13:15:50 1544

原创 看看什么才叫真正的优化高手

原帖:movl $girl_friend,$bedjum bedbed:call take_off_clothesxorl %ecx,%ecxlove:cmpl $1024,%ecxje overpushpoppushpoppushpopincl %ecxgoto loveover:call sleep_for_30secondsjmp bed架构师:m

2013-08-08 12:45:29 1768 2

原创 关于MAC(PRO/AIR)祼装WINDOWS(XP/W7/W8)的说明。

关于MAC(PRO/AIR)祼装WINDOWS(XP/W7/W8)的说明。

2013-07-27 09:00:08 2786

原创 sift的java实现解述

代码已经开源到github上,https://github.com/alibaba/simpleimage项目,其中的 analyze模块中。原始图片为:主要调用方法: BufferedImage img = ImageIO.read(logoFile); RenderImage ri = new RenderImage(img); ...

2013-07-04 17:05:07 12495 36

原创 use "rootsift= sqrt( sift / sum(sift) )" to improve object retrieval

原文出自Three things everyone should know to improve object retrieval. (CVPR2012)其中只使用rootsift= sqrt( sift / sum(sift) )一项就可以有很好的效果,实际处理:在descriptor数组输出之前,加上一个处理 float sum = 0.0f; f

2013-05-27 13:36:38 4069 5

原创 oracle的PreparedStatement.executeBatch为什么返回-2

PreparedStatement.executeBatch的方法在底层调用了一个void的executeForRows的方法来执行,他们很懒,为了复用这个方法,于是就失去了返回值,也就无法知道当前执行的语句到底返回了什么。但是jdbc2.0规范规定,如果执行成功但无法知道结果,则返回-2.所以oracle的PreparedStatement.executeBatch把每条语句的返回设为-2.一般

2013-05-20 17:26:38 6033

原创 程序员开发利器-29寸超宽屏显示器

29寸超宽屏的分辨率是2560x1080,目前主要有dell,lg,aoc三款。都是ips屏,我入手的是aoc的,最便宜,3599,保无点。这个分辨率对程序员来说是非常方便的。因为我们很多时候都使用双屏,在调试时把一些信息的窗口放在另一个窗口,要用鼠标两边切换。有了这个超宽屏,可以用软件实现分屏,使用下来比物理双屏更方便。在windows下用screen plus可以将窗口切成三屏,但是绝大多数程

2013-05-20 14:52:52 10934 1

原创 小区宽带(动态IP)后接无线路由器的设置

花了我近半小时才搞定。原来的小区宽带是PPPOE方式拨号连接的,路由器设置为开始DHCP,会把自己设置为192.168.1.1。一般而言没有什么问题。今天把宽带从滨江迁移到余杭,小区不再是PPPOE方式,而是动态IP方式,把无线路由器接上后,IP地址被分配为192.168.173.1 。但是访问不了admin主页,断开WLAN,reset,无线网络连结选自动获取IP和DNS。路由器重新分配为192

2013-04-24 23:32:40 8109 1

原创 当年别人说我们是东亚病夫,我们愤怒!现在,人家不说了,可是我们自己已经明白,我们名副其实!

别看什么运动会我们取得了多少金牌。看看我们现在国人的体质吧。看看我们正在努力奋斗的这一代人的体质。再看看我们的希望,中小学生的体质吧。肺活量平均只是日韩的2/3,一场运动会入场式下来就会有几十个晕倒。从业IT的兄弟们,运动起来吧,不仅仅为你自己的幸福,也为我们这个民族不再是东亚病夫。

2013-04-21 10:01:38 2500 9

原创 SIFT图形比对的斜率优化方法

对于原图和目标图差别不是很大,一般而言躁点干扰性不是很大,但是如果原图本身很小而又没有强特征,而目标图很大的情景下,误匹配的情况非常容易发生。比如原图是一张很小的logo,目标图是一个页面截屏,因为目标图相对原图而言太大,总能找到原图上一些特征点,就象拿五柆沙子去沙难上总能找到匹配的五柆沙子。我们看下面的图。左上角的原图在右下边的页面中并没有实际的存在,却发现几十个匹配的特征点,当然这些是百分之百

2013-04-11 16:50:33 8386 18

原创 UseAdaptiveSizePolicy 选项引起Memory pool not found异常。

Memory pool not found异常是mbean的异常,所以出现这个异常一定是使用了mbean.开始怀疑的情况是JVM还没有初始化,agent中的mbean已经开始获取状态,或者JVM将要crash之前,mbean获取不到正确状态,但都没有这些情况 。后来taobao-jdk团队进行分析,原因出在UseAdaptiveSizePolicy上。大概原因:在使用cms算法下,如果开启参数Us

2013-03-13 11:09:53 5640 3

原创 一个异步io中同步调用close造成数据传输不完整的bug。

某个使用netty作为server通讯,应用在传输大一点的数据时就会出现org.apache.http.ConnectionClosedException: Premature end of Content-Length delimited message body (expected: 29869; received: 15846。经过仔细分析,原来在接收数据时,程序员显式关闭了连接(同步调用)

2013-01-08 11:09:33 11659 8

原创 今天收到csdn的短信说我是年度之星候选人,告诉我可以拉票,票也可以拉啊?

http://vote.blog.csdn.net/item/blogstar/axman这个地址。喜欢俺的投一票吧。票是拉来的,这不好吧?

2012-12-04 17:06:15 1986 2

原创 把自己的ip4(ios6.0.1)给越了,终于装上了五笔输入法。

一直不喜欢iphone,街机,还那么贵。但是今年2月份已经换过两部galaxy系手机了,以前n年一直用nokia,这次就为以后黑iphone有个深刻理解吧。选择了iphone合约机.拿到手后立即就后悔,真的是脑子进水了。手感比华强北的山寨货还差,半点谈不上人体工程学,外观设计理念基本上世纪40年代上海小市民的审美观点设计的:一双看起来很亮很酷但穿起来很挤脚的皮鞋。轻薄感和做工也根本比不上galax

2012-11-22 13:13:55 3605 6

原创 what dose "brain falls" mean?

that means "your left brain has nothing right,and your right brain has nothing left."

2012-11-01 10:50:37 1135

原创 hadoop的文件系统一致模型

相当于java同步的可见性,在一个块被写满后,存储他的数据才是可见的,即使文件描述本身可见,但其长度可能为0.即使数据已经真实地写到块中。在绝对大多数时候这并不影响我们对文件的需求。对于存储在hadoop上的文件,我们绝对不是拿文件中内容作为一个信号标记,如果你这么用只能说明你不了解他的设计目的。但万一你有这样变态的需求,你仍然可以调用sync来强制未写满的块上的数据可以在文件系统中可见。一般情况

2012-10-31 11:13:59 1772

原创 一个功能简单而又极具挑战的需求,这就是alibaba业务的特点。

25亿条数据,近600g,由云梯计算生成,大约每三天生成一次,而要入库,提供多维查询的接口和用户操作界面,最终数据估计达100亿。简单就是把云梯生成的文本信息入库,提供查询。以后多维结果数据的权重计算也很简单,接口和用户操作界面都是入门级需求。挑战的目前25亿,最终达100多亿的量。存储容量,数据库选型,接口查询性能。航母不是舢板的放大,当规模到了另一个级别就是不同领域的科学了。

2012-09-30 06:34:55 1629

原创 lazy value可以在需要的时候重新计算值,但不是重新赋值。

它可以起到var的部分作用,但又不可以被程序员手工重新赋值。int x = 0;lazy val value = 1/xtry{ println(value) }catch{  case _ => x = 1println(value)}可以在catch块中正确输出1,因为这时value重新计算为1/1.但是重新计算只能发生在异常时的异常处理中:  var x = 1;  lazy val val

2012-09-19 11:06:29 2525

原创 即时函数的return是返回到调用这个函数的块外部,而不是返回到函数返回点。

如果我们直接在一个继承于App的类中定义:val f = (x: Int) => { return x; 2 }会提示我们:return outside method definition,现在我们把它放在一个方法中:  def outter: Int = {    val f = (x: Int) => { return x; 2 }    println("before.")    f(1)

2012-09-18 14:46:41 4325

原创 static Name & runtime value

class C {  def sum(x: Int = 1, y: Int = 2): Int = {    x + y  }}class D extends C {  override def sum(y: Int = 3, x: Int = 4): Int = {    super.sum(x, y)  }}  val d: D = new D  val c: C = dc.sum(x==0)

2012-09-13 14:16:24 2105

原创 线性化很可怕,结果原来是这样的,尽量少用

abstract class Root {  def hello(s: String)}class SubA extends Root {  def hello(s: String) {    println("Hello,SubA! " + s)  }}trait D extends Root {  abstract override def hello(s: String) {    supe

2012-08-27 17:39:43 2290

原创 trait中super调用动态绑定

class Root{ def hello(){ println("Hello,Root!") }}class SubA extends Root{ override def hello() { println("Hello,SubA!") }}trait D extends Root{ def traitHello(){ super.he

2012-08-27 15:54:54 2324

原创 Nothing是任何类型的子类这个定义非常好。

有Nullable的功能,却比Nullable更方便。其实没有什么实际意义,只是在编码时需要一个能代表任何类型的“东西”,却又是一个“表示无意义的特殊含义”。到少在返回值类型的异常值是不用返回-1,-99,-9999这样硬编码的特殊值来表示一个异常值。

2012-08-27 14:20:06 2117

原创 byName的高阶函数与普通参数的区别

本质的区别就是执行期不同,普通参数的表达式传参时已经开始执行,而byName的高阶函数在方式执行体中按定义顺序执行,有可能被短路。def paramterMethod(b:Boolean){      if(false && b) println("hello")}paramterMetho(5 > 3)在传参时5 > 3一定已经运行,如果改成 1/0==0肯定抛出错误。def funcMetho

2012-08-24 11:23:25 2897

原创 看完scala,发现java中finally允许返回结果真的是一种极其错误的设计。

try{ return x;}catch(Excpeiont e){ return y;}finally{ return z;}这样的代码无论如何都返回z,那么上面的任何return都显得没有意义。所以我们在绝大多数情况下都不会在finally中使用return语句,因为这使得这个方法几乎返回一个恒定的结果。但这并不能保证一个水平很差的程序员在finally中返回结果。我说

2012-08-21 09:36:04 3893

原创 什么样的笔记本适合编程?

之前用公司的dell6400,感觉怎么的也混到这份上了,每天提这个砖头上下班,民工标记也太明显了。于是一年多前换了个macbook pro13,但是长期养成的习惯,打开ide后除去工具条,code区就太小了,将就着用了一段时间。后来外接了一个显示器,上班的时候把本子合上只当主机用,下班了拔着就走,感觉方便多了。今年新款mac发布以后,打算买一个11的air给女儿用,自己先用了几天,发现方便性当然比

2012-07-21 08:25:45 12759 4

原创 一个java crash的故障分析过程

一个应用在周五出现java进程消失,没有任何日志。先查看/var/log/message中无oom_killer信息,所以只能拿core。该应用是一个集群,通知他们将出现crash的服务器上打开ulimit,等待生成core文件 。今天周一,下午应用负责人紧急找我,说同时出几台crash了。开了ulimit参数的那台服务器coredump已经生成。登录到该服务器上,先是gdb $JAVA_HOME

2012-07-09 22:35:50 11004 4

项目工程文件

自己完善吧

2007-07-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除