LMAX

No Comments

忘了是谁在微博上赞叹了一句LMAX,于是乎去看了看Martin Fowler老爷子的这篇“The LMAX Architecture”。

看过以后实际上觉得也很坦然,不管是谁赞叹的LMAX,终归是一个做Java很久的人。为了找到这位的原话,我也特意又去微博搜了搜,看到了很多做Java的人在同样赞叹LMAX。实际上只要看看Martin的这文章就能明白,核心实际和Java关系不大,倒是吸收了web界一直以来的很多做法、算法和架构,最终用Java实现了一套而已。我几乎能看到Martin老爷子星星眼的样子… 当然老爷子自己也还是很有自知之明的,比如这句:

Many programmers, and I confess I fall into this camp, don’t have much mechanical sympathy for how programming interacts with hardware.

还有之前一句以脚注出现的:

I rarely think about which collection implementation to use. This is perfectly reasonable when you’re not in performance critical code. Different contexts suggest different behavior.

哎,两句话就暴露出做(Java)企业应用以及企业应用架构设计的人一直以来的问题了吧。在现在web开发技术这样一日千里的发展的情况下,企业应用那套,虽然在设计和工程上仍旧有些许价值,但也真是有点儿明日黄花了,尤其涉及到性能、吞吐量这些。

算了,没太多吐槽的想法。Java作为一个平台也有些苦涩,特别讲求高性能的场合下只要有牛人加持的话几乎都不会选Java,但是JVM作为Java平台最重要的一个组件,又积蓄着很多力量多年的成果,尤其JIT和GC方面,而且Java语言又是那么地没有门槛,感觉长期看来在必须考虑人力开销的项目和产品里,Java也还是一直会是个不错的备选。

P.S.,LMAX开源出来的disruptor,各位看那个logo熟悉不 :D

说说“碰撞”

No Comments

都是基于我自己的理解,有错误的话请不吝赐教。

  1. Hash碰撞:参考 http://en.wikipedia.org/wiki/Collision_%28computer_science%29 ,只不过是说不同的数据凑巧有相同的hash值而已,这是数学上就已经有了定论的肯定会出现的问题,参见Pigeonhole principle
  2. CSDN etc.密码门:事件中网络上大量充斥的“碰撞”——比如这篇里 http://www.enet.com.cn/article/2011/1228/A20111228952093.shtml (其实微博上更多,懒得搜了,省得好像针对谁一样),其实就是“撞大运”的撞,“撞衫”的撞,可是和“明文”、“加密”这种话题扯到一起,很容易让人觉得是和前面提到的hash碰撞有关,实际上远没有那么高科技啦,rainbow table随随便便就拿去破解百万级别用户的密码?呃,反正我很难想象,也说不好地下组织已经不难具备这个能力了,但说起来还是拖库加社工库要划算得多吧。这个实际上是很无聊的话题,不过也算是我写这篇很短的东西的起因,因为各方面的说辞都要把我搞晕了,虽然我有很入门很基础的网络安全修养,不过也不是专门搞安全和加密的,大家你也碰撞我也碰撞的,搞的我以为中国加密和密码学一下子已经超越美帝来着了。
  3. 更最近的影响范围很大的web服务器Hash碰撞攻击:参见Ars Technica的Huge portions of the Web vulnerable to hashing denial-of-service attack。这个更直白(直白但没有那么简单),就是针对各种语言平台和应用服务器的常见实现,提交一些预先制造的很容易在特定条件(比如文中提到的随机化不太好)下发生(multi-)hash碰撞的数据,导致HTTP服务器的一些常见的hashtable的操作异常耗费计算资源——O(n**2)哦。

好了,其实真没什么可说的。

我的饭 [2]

1 Comment

又到了充数时间…

  1. 好多情况下只要诱导某企业的员工把一封收到的内部email——空白的都可以——另存成.msg格式就能拿到好多内网信息,比如各种服务器地址神马的。作为有个大概其就算是入门级安全素养的人来说,我对某些明目张胆自觉主动不用别人诱导就把内网IP这样的事情公布于众的事儿真是无话可说。2011-11-04 14:25
  2. 想提高productivity也不至于就去被洗脑吧?我是想换换脑子换换想法,可是这种玩意儿,一上来就要求我全身心去信任他,改变我的想法,我艹,你要不说你是方法论的话我还以为你是邪教了。有点儿越来越恶心了…2011-11-04 19:03
  3. 而且吧,对信任的要求有点儿过高。照我的理解,这个方法论敢于正视很多以往人们不愿正视的东西,可就不能正视一下人跟人很难完全互相信任的么?我要信任你这个方法论,管理层要信任团队,团队成员之间也要互相信任… 不得不说这样的话我怀疑整个系统太脆弱了。2011-11-04 19:06
  4. 我看着种种偏执狂一样的人的说法和做法,就不抱什么希望了。但愿这东西别最后跟ERP似的,“不上是等死,上是找死”。直觉上稍微有些不兼容的文化沉积的公司,最好慎重接受这个玩意儿。2011-11-04 19:08
  5. 每次老外一莅临我分厂做敏捷培训的时候,那感觉就跟我厂开人大一样。2011-11-08 10:49
  6. 这个sprint可是真的sprint了。不开笔记本了。2011-11-09 13:09
  7. 哎,需要有街旁、饭否、微博之外的娱乐项目啊… mIRC,乃的注册用户召唤你~2011-11-09 13:32
  8. 这是多少年了……debian和ubuntu总是盘踞Freenode在线人数最高屋子的头两把交椅。2011-11-09 13:59
  9. 好像Google就永远是正确的一样。除了这个粉就那个粉的,不粉点儿啥就跟找不着组织一样。没安全感么?2011-11-10 11:59
  10. “过了少年,失去青年,踏向中年,机灵,勤奋,困苦,无望,想活得更好,活得更不好,有理想,不敢想,想创业,怕失败,盼真爱,却已婚,恨特权,又敬畏,怨体制,但想做公务员,要买房房价涨,要买车油价涨,吃饱了勇敢,饿着了懦弱,遵纪守法,但眼看着胡作非为的一个个发家,想胡作非为,上路…2011-11-10 12:41
  11. 哎,力争做个差不多的REST风格API,挑挑拣拣了半天状态值。2011-11-10 19:15
  12. 哎,我可没干过文档截图里的某高亮的文本框里的输入和文档其他部分说明要输入的东西对不上的情况,顶多整个文档太过时了没更新。而且也没捧铁饭碗干这个。2011-11-11 02:13
  13. 下午的时候让某小朋友同事看他的ff版本号,然后让他猜最新版的大版本号是多少。结果这小朋友用的还是3.x… 虽然现在ff不是主力浏览器了,不过这5、6、7我都是装上还没捂热乎了下一个大版本更新就来了,真是太刺激了。2011-11-12 00:56
  14. Jxxxxx your YYYYY domain PASSWORD will expire in 9 day(s)! – 哎,总看着跟促销广告一样。早改域密码能来个邮箱quota大优惠么?2011-11-13 01:44
  15. 我去,O’Reilly这回是干啥嘛,看意思 Node: Up and Running 中英文版同步发布很有戏?看oreilly.com上Early release版本的评价不咋地么,都说太basic。哎,也不是门语言神马的,太basic确实没意义嘛。2011-11-13 22:00
  16. 我在环球置地广场:破地方,这个点儿了还堵成这样。然后两个车位都过窄打不开门,悻悻地下地库去了。 http://jie.pn/p_IE0–9IB 2011-11-14 11:20
  17. 好多不错的歌大抵最后都是因为让别人当了手机铃声完后还总不接电话而毁的。2011-11-14 16:02
  18. 看来这次迭代按时完成是没啥问题的,提前个3天左右也很可能,而且完成了比较麻烦的搭新架子阶段,还保证了主要逻辑都有单元测试。2011-11-15 18:56
  19. 哗!小饭盒儿有固件更新了!大姑娘上轿头一遭啊!可别给我升级出问题来…现在无线完全指望它了…2011-11-15 22:21
  20. 简直是… 算了算了,你们决定吧,决定好了告诉我。我是coder。2011-11-22 23:31
  21. 哟,公司HQ新地址,430 North Mary Avenue, Sunnyvale, CA,看起来还挺牛叉的,地图上还瞅见NASA Ames研究中心。刚还跟人说起Ames这个词,完全是看动漫认识的。2011-11-29 10:02
  22. 我觉着有些人也许还是离职换个地方的好,不是逃避,而是没有必要和一些偏见浪费时间。通常发生在某个在厂工作时间很长的人身上,可能因为种种原因,被些偏见阻挡,没法做到自己想做到的那一步。当然前提是自己主观上真想做好,光是想做做样子骗人的话就洗洗睡吧。2011-11-30 15:58
  23. 我在环球置地广场:去尼玛,不伺候了。挤兑死我就得了。 http://jie.pn/p_IE3vvPAB2011-12-01 16:39
  24. 总算搞定了……… 准备得可能太多了,哎,但是Web Worker、Web Socket的东西都没涉及。还是觉得Device Orientation API的例子最好玩 :-) 2011-12-02 19:09
  25. 买了本儿Sheldon写的书。2011-12-08 10:23
  26. 神马逻辑,预估得准是因为估的日子多,尼玛的。是不是都他妈党员然后又不好意思说出来?2011-12-08 12:18
  27. IconFactory坑爹啊… 以前买的Twitterrific Premium怪不得这么久不升级呢……!我都已经当丫是一先烈了结果丫赚钱赚得正high呢!2011-12-08 23:55
  28. 我在盈江西里:作为一名普通青年,不删掉iPod Touch里面装的musée du Louvre是有苦衷的。 http://jie.pn/p_IE0xCv4B2011-12-09 00:10
  29. @webto 我能回忆起来的是,某个或者某些冬天的10点来钟,刚睡醒,宿舍里没人,或者有几个货仍旧死死地睡着,反正很安静,然后阳光照进来,能看见空中的灰尘,外面刮着大风,树影都晃着。2011-12-13 22:56
  30. 哎,真懒得说,也不查查iTunes gift card的使用条款。2011-12-14 18:40
  31. 算了,本来也不是多social的人,装这networking的节点干啥哩。2011-12-16 01:23
  32. 好久不来聒噪了,今儿上来骂一句GFW。某小朋友调查bug,调查完了颇有心得地和我描述,我听完问,您了介不会就是撞墙了吧?一试验,果然,唉,耽误多少人的青春。以后同学们都再碰见这个都上网扎针去吧。2011-12-16 10:51
  33. 没coffeescript真是要没法活了。2011-12-17 01:43
  34. 我在盈江西里:总算看到了result=”success”,多线程也不用自己操心了。困扰了一天的问题是某size值少算了一个8bytes大的header… http://jie.pn/p_IE3vEQ8C2011-12-18 22:38
  35. 我厂的问题就在此。原有团队的人几乎都在原地踏步,似乎觉得新人来了可以直接拿来使唤。 转@qinyf 可以想像,一个企业或者团队经过几年发展,规模逐渐扩大。吸引的人才的 level 也会要求越来越高,对原有团队的人的 level 要求也水涨船高。每一个人都要不断成长才有戏。2011-12-19 11:36
  36. Want WorkFlowy on your iPhone, iPad or Android device? Just open workflowy.com in the browser. ——赞啊!厚道。虽然我觉得以后肯定有人做web版神马神马store,最起码现在是不要钱。2011-12-22 00:39
  37. 说到web版store的话,想必支付宝和paypal稍微做做就可以搞一个控制欲不太大的原型出来。2011-12-22 00:40
  38. 看到一个gem叫rubypython…真蛋疼…2011-12-22 22:20
  39. 这都是…神马啊!搜个“红旗路”三个字想查个邮编都TM能撞墙,MB的浑身G点啊?!2011-12-24 22:07
  40. 平安夜,爸妈还在海南happy,我跟媳妇儿宅了一天:她加班给自己和班组写总结,我在改个不知道以后能不能如愿以偿用上的程序。虽然听起来挺苦逼的,也还算是生活。2011-12-25 00:55
  41. 我在盈江西里。某个东西尘埃落定,好像也没激起什么反响,就不说什么超前、落伍的话了,太臭。好处是至少可以看本儿轻松一些的书然后早睡几天了。 http://t.cn/SMcA2v 2011-12-27 00:18
  42. del.icio.us总算不再那么萌化下去啦!近期唯一一处常用web服务方面的惊喜啊,除了github改了改导航和布局神马的以外。 2011-12-27 01:09
  43. 要命啊,推荐列表上第一个是Let Over Lambda,靠,这书就算真舍得那银子买回来,一礼拜能看明白2页就是胜利啊。2011-12-27 18:32
  44. 墙头草,360°倒。总有一天有那么几度上你会碰见所谓的行业壁垒吧,我倒希望是您现在抛弃的IT业。放着高附加值前景的不干,哎,不是我情何以堪的问题,就算我活到敲不动键盘的时候,能看见这个行业的腾飞,也能瞑目了。2011-12-28 10:14
  45. 行行出状元,干好了都不容易,所以不是我不尊敬其他行业,而是不理解,为什么上这么多年学、读这么多书,那么多个日夜守着枚56k猫挣扎着以一小时1MB的速度下载资料学习,那么多小时焦头烂额的除错、重构,才能安身立命的行业,就能让其他人这么不尊敬,甚至同行也觉得这行是坨屎的。 2011-12-28 10:12
  46. 总有些人一说话就跟让人传了-vv 一样。2011-12-28 18:28
  47. 哎,有啥可说的。这国家就是充斥着各种不知道锅是铁打的人,兴冲冲地跑国外去了,或移民或长期停留,然后郁闷了,回来说三道四。一句话:白长这么大。2011-12-28 18:46
  48. 哎,欧洲的书一本儿一本儿地买了看,看了买,反正不知道下次得啥时候了。屎一样的工作也得做,要不然就饿死。 1月4日15:44
  49. 好!一年为期!!! 1月4日20:56
  50. 哎哟,看意思星巴克跟我是真不对乎。母亲的。 1月5日12:22
  51. 一咬牙一跺脚,我把这电视节目戒了。 1月5日17:43
  52. IT这行儿是真强大,plot y=|sin(x)|, x=-pi/2 to pi/2 ,x轴是能力值,y轴是薪水。我姑且表示作为一个一瓶子不满半瓶子咣当的人压力真大。 1月5日18:28
  53. 说到底其实也就是政治而已,而我在那几个小时里还真就当真了,还难过了一个晚上。真尼玛该自己抽自己啊。2012-01-09 10:16
  54. 艹,看到jcp.org下面刺眼的Oracle大红标以及左边的“© 2012, Oracle Corporation and/or its affiliates.”,我是真不想再看什么Terms of Use和Privacy Policy了。2012-01-09 10:58
  55. 昨天team meeting后的内部技术研讨会上是我这辈子头一次想正面提一次微软的企业应用技术和产品线,后来想了想还是作罢了,差不多都给洗脑了,我要提微软的东西,估计能研讨到晚上7点钟去。我还得回家哩。  1月10日10:46

———————————————————–

嘿,其实里面夹杂着微博的链接,因为某神嫌我乱同步,所以不得不把街旁的饭否同步给关了,以后再想写“我的饭”系列估计就麻烦了…

反正也没人看 :D

Murphy’s Law的一天

No Comments

2012年工作日头一天,结果悲剧收场,活生生验证了Murphy’s Law:Anything that can go wrong will go wrong. ——好像说法很多,不过大抵就是这个意思吧,凡是可能出错的事情都会出错。

这次是以前就标记成TODO的两个地方,其实也不是那么容易发生的,而且我也确实不想武断地找一个解决方法就干掉,于是就标个TODO,结果就是这两处我觉得不太可能发生的事情,就让QA MM一击必杀了…… 所以像今天这种处于sprint之交应该会比较闲的日子反倒过得很应接不暇。

诶,不像是啥好兆头哇~

就是某X人今天正式宣布去留了。

2012

No Comments

<EOB>