软编码
caoruntie
这个作者很懒,什么都没留下…
展开
-
linux expect如何使用
!/bin/bashspawn git pull -u origin masterexpect "Enter passphrase for key '/home/ubuntu/.ssh/id_rsa':"send "密码\r"expect eofexit------------------------------------------------------------...原创 2014-11-09 21:57:02 · 114 阅读 · 0 评论 -
看并发编程网的一些记录
喜欢没事的时候就去看下ifeve.com并发编程网,有些内容还是需要好好的去消化的(不知道大家有没有这种情况,感觉貌似懂了,但却不能说个原由,且对总不能够系统化),接下来,想把并发编程网里的存档文章好好看下,并在这里写一些记录,希望有意义。 FAQ1 http://ifeve.com/what-is-context-switching/ 这是并发编程网上对上下文的理解...原创 2013-08-30 21:00:09 · 90 阅读 · 0 评论 -
学习前端css经验分享
自己学习前端大概半个月了,零零散散,但相对与平时也是很不错的一段学习时间。 在写正式博客之前,做一下推广,我厂的前端工程师,开发工具现在都是这样的sublime(webstorm)+clam+yo+glup,好,就这样,具体作用,大家可以自行学习下,如有机会,下次会把自己的使用心得记录下,下面进入正题。 好吧,原谅我再啰嗦下,学习css,个人感觉进入前端前期,css比js复杂,...2014-07-04 11:34:22 · 164 阅读 · 0 评论 -
css布局多列等高且高度自适应
<div class="container"> <div class="col col-a"> <p>In the beginning God created the heavens and the earth.</p> </div> <div class="原创 2014-06-16 10:17:28 · 558 阅读 · 0 评论 -
如果让你实战高并发编程,你怵吗?
本来想研究下fourinone四不像代码,摸清底层的设计思想,但代码可读性确实难读,代码行数喤喤近万,但始终还是要去研究的。 1、将20个任务分配给3个工人,不重复执行,请给出实现方式?...原创 2014-06-06 16:38:55 · 119 阅读 · 0 评论 -
clojure深入学习
学习clojure有一段时间了,大多停留在看clojure doc与api和书籍上面,看的写的都是基于repl的一些零碎单调的小例子,基本的函数与关键字大概熟悉了,但还需要大量案例与工程的学习,在这篇文章中,我将零零碎碎地把自己阅读工程源码和如何构建自己的web项目的过程记录在这篇文章中,目前在读的主要是三个github上clojure web工程,工程不大,还是比较适合自己对cloju...原创 2013-08-14 19:07:28 · 110 阅读 · 0 评论 -
我要转前端,做个全栈战士
如果我要转前端,做个全栈战士,我能做什么?我能为前端带来什么?能有哪些突破口? 1\首先必须有扎实的前端基础与专业技能 http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_encapsulation.html ...原创 2014-05-28 10:40:16 · 145 阅读 · 0 评论 -
谈谈思维方式问题
今天有感而发,刚才还和同事争论业务问题,争论过程中出现了一些比较有意思的点,一种思维碰撞。 在讨论业务问题时,有时更多是一种逻辑思维的角力。 我们经常使用的逻辑思维方式,无非是逆向思维,静止运动思维,表象本质思维等。 1、逆向思维比如将商家分为高级商家(KA商家 = 1、TP商家 = 2),一般商家 = 3,你现在要判断是一个商家是高级商家还是一般商家if(sel...2013-12-26 16:44:39 · 216 阅读 · 0 评论 -
听说scala、结缘clojure
学习scala有一会了,零零碎碎,没有太多时间与精力投入,一段时间后,也厌倦了,虽然scala某些方面很犀利,但兴趣到最后也没多少了,遇到了clojure\也是缘于http://blog.fnil.net/ ,这几天逐步有点入门了,至今而觉比scala要简单许多,也是这才是语言的精髓与王道,而不是看它有多复杂,曲高和寡呀。 什么时候也整个教程啥的。。。 let 在cloj...原创 2013-08-01 19:39:07 · 190 阅读 · 0 评论 -
java与任务
这里要讲的任务,不是quartz这种可配置调度的任务框架,不是常见的Queue+线程池的实现方式,需要凸显如何更可靠,同事无聊的作品,在这里我将讲下,同时也会做一些发散。 如何保证可靠呢?持久化,可能是一种实现方案,osprey+mission、一个是单机的,一个是分布式的,自己作为学习还是很有意思的,因为牵涉到内部太多的依赖,不上传代码了,而且无意闯入者未必感兴趣,这里权当写个自...原创 2013-07-29 12:00:13 · 79 阅读 · 0 评论 -
java与函数式编程
谈到函数编程语言,不得不谈最近微博大牛吵的比较火热的haskell、lisp等比较纯粹古老的函数语言了,当然java阵营中也有一些函数式编程语言,比如scala\clojure,这两者都有里了解过,这里不得不汗颜了,年前还说需要熟悉两者中一者,中间一段时间到也疯狂学习过,中间还是荒废了,哎,刚有点感觉,个人觉得学习一种新语言,除了一些基本使用的熟悉,最重要的还有思想的转变,能给自己带来另一种编程...原创 2013-12-18 17:59:43 · 127 阅读 · 0 评论 -
jms与其实现
rocketMq横空出世,结束了我眼界之内消息中间件必须有其它语言插一腿的局面,这是一个纯java的消息中间件,当然在这之前,没有开源的消息中间件也是有的,notify等,这次值得庆贺的是rocketMq是开源的,其实我很早的一篇博客就讲了消息jms、但无奈始终找不到一个pure java实现的消息系统,这次一定得好好挖下。 代码还是从github上git下,还是蛮方便的,https:...原创 2013-07-25 19:53:49 · 86 阅读 · 0 评论 -
网络框架及rpc实现
目前关于网络框架,什么基于事件架构(EDA)、异步、无阻塞,高性能等概念充斥,像这样框架真的太多。其中mina、netty、grizzy等比较原始,相当于鼻祖,国内比较知名且基于以上的也很多、hsf、dubbo、venus等、先就一个标题,后面再把心得补充上去。 ----------------------------------------------------华丽分割:于20...原创 2013-07-24 15:00:04 · 201 阅读 · 0 评论 -
httpserver简单实现与深入学习
本篇文章,想谈谈如何实现一个简单的httpServer,不做它用,只是借此了解下tomcat、jetty、douyu等这些web容器或者说是servlet容器是如何实现的,当然如果大家觉得上面的容器过于庞大,难以知全貌,可以从简单的入手,jdk自带httpserver入手,实现的代码很少,但并没有实现http所有功能,但对于理解httpServer还是很好的,这个估计大家只能看到class文件...原创 2013-07-17 09:15:07 · 103 阅读 · 0 评论 -
disruptor基本使用与实战
今天又忙里偷闲,看了下jdon框架,忍不住clone了代码,细细看了下aysnc部分的代码,主要是对disruptor的一个实践,和手中一个公司的项目部分代码很相似,看来得去看看disruptor官方提供的Test部分代码了,提供了样本吧,且不计较,大家也可以去看看。 看看这里的编码方式,看起来比较舒服。 这里引用别的同学的一段总结 Ring...原创 2013-12-05 14:47:20 · 272 阅读 · 0 评论 -
hawtdispatch(任务队列+nio通知)
具体代码参见:http://hawtdispatch.fusesource.org/ 、研究源码需要耐心,特别是这些没有具体业务逻辑的框架代码,看起来确实费力,资料少,整个网站都没一个整体的架构设计分析,而且example\单元测试也不齐全,对于这种情况下,还是尽力看下test下了解这个框架如何使用,否则很容易迷失,只感觉几个类之间相互引用,有点不识庐山真面目的感觉,整个代码框架很混乱...2013-07-11 14:26:46 · 328 阅读 · 0 评论 -
tomcat工作原理-框架
个人研究tomcat整理ppt,后续再补充。2012-10-15 19:52:32 · 84 阅读 · 0 评论 -
看如何利用mina等实现一个分布式流式计算系统
写在前面,这个系统是同事开发的,我只不过check代码过来研究研究,在此记录下,喔,纵观我所撰写的文章,大抵标题党,一部分源于没有系统的时间去深入研究,一部分只是把一些知识面或者技术点记录下,如陶式不求甚解始终不大好,后面希望慢慢提高撰写博客的质量,望各位见谅。 组建这个流失框架的网络通信层是采用了mina,但由于mina太过于底层,不带有语义(业务无关性,或者说基本的request-...原创 2014-07-11 17:01:16 · 224 阅读 · 0 评论 -
分析netty的HashedWheelTimer代码实现
今天看summercool-hsf代码时发现了HashedWheelTimer这个类,其实这个类在老早以前看netty源码时就发现了,但最终不了了之,这次想深入了解下,无奈网上介绍这个小组件的资料太少了,只能一步步看下源码了,它是怎么实现的?它怎么使用的?它主要适用哪些场景? ...原创 2013-09-04 20:46:30 · 145 阅读 · 0 评论 -
深入了解disruptor
看jdon时了解到了disruptor框架,也下过源码来看,是云里雾里,最终也不了了之,现在再次捡起来,希望能够理论结合实战,能够熟悉disruptor,觉得一个coder,总是会意淫一些优美的软件结构和优雅的代码,追求高性能,disruptor应该可以满足我们这些coder。 参考网址(http://www.jdon.com/42452 http://lmax-exchange....原创 2013-09-06 09:04:55 · 162 阅读 · 0 评论 -
前端学习工具篇
接触web编程以来,或多或少接触了前端开发,想来,不觉也有些年头了,但无奈,从没有专业系统去学习,这里算是一个好的开头了,准备系统全面学习下前端编程了,首先,预先善其事,必先利其器,好的开发工具,一个集成的前端开发环境很重要,从公司专业前端同学那里,了解了目前他们正在使用的一些工具或者组合。 集成前端环境:nodejs+clam+f5 开发工具:webstrom+sublime...2014-04-29 13:37:37 · 126 阅读 · 0 评论 -
rsa和md5在app数据传输中的简单应用
这些都是在项目中的实际应用,源于时间问题,确实不能细细写来,但一定抽时间完整,这里只想解决在不依靠https等安全协议的情况下,如何运用一些加密算法做一些数据传输中的简单应用做一些简单的防护。...原创 2015-06-28 11:09:32 · 203 阅读 · 0 评论 -
golang学习第一课
这两天陆续学习下go语言,毕竟语言较年轻,周边的生态还不够成熟,就拿ide来说吧,相比较idea,还待打磨,不过用sublime或者atom基本编码够用,对于学习一门新语言,环境配置很重要,同时如何快速入门,如何不被各种新东西弄的无从下手,切忌一点,不要光看不练,还是从基础下手, 开发环境配置,GOROOT/GOPATH配置,特别是GOPATH,要深入理解下,不同项目可以多个,说到这里,...原创 2015-05-13 19:52:34 · 179 阅读 · 0 评论 -
bash+shell序幕
一直以来,不管是什么*nix,还是windows,还是mac osx,对于开发者,总是要求你去配置一些变量,抑或是自己想写一些脚本去执行一些自动化的东西,实现自己山寨的运维自动化等等,云云,似乎总离不开一些脚本编程语言,不管是bash,shell,ruby,python等等,这中间很好多东西不懂,真有必要学习下,先在这里留个空,shell + python,是自己想要学习的,shell可以学习...原创 2015-05-09 17:31:08 · 127 阅读 · 0 评论 -
转一份阐述如何从架构上优化的邮件
慢在哪里:写Redis 写HBase 线程切换等优化思路:无法提高Redis和HBase的写入速度,那么就减少写入量吧;减少写入量的办法:1,减少冗余写入,2,延长缓存时间。减少线程切换,尽量批量提交。 1,减少冗余数据写入:目前的逻辑:缓存一分钟的数据然后定时刷入Redis或者HBase。问题是:各台机器会缓存相同的商品,导致同一个商品在一分钟内被写入了多次。机器越多,冗余...原创 2013-11-04 16:58:04 · 82 阅读 · 0 评论 -
clojure学习日志续
在这里,我可以很轻松,因为我是一颗无人知道的小草,不敢在朋友圈,不敢在qq空间吐露心声,团队里本来5个创业伙伴,现在走了三人,不知道都怀着什么心思走的,有说是发起人rp不行,有说是找不准自己的定位,有说是干得不开心,还有是家庭情况,甚至说干好了可以在回来,不管如何,都是为了利益,其实在这种城府的团队里,确实干得不开心,但不管如何,还是准备再坚持一段时间,看看情况吧,这中间除了创业忙之外,也会忙...原创 2015-03-25 20:11:58 · 128 阅读 · 0 评论 -
jetty-highide wiki展开与离职感想
今天在比较一些web容器选型上,首先看了下jetty,且是jetty-highide版本,这里confluence有详细的介绍 http://docs.codehaus.org/display/JETTY/Hightide+Documentation 值得一看,一些很不错的技术点,其中比 较突出的比如支持了bayeux(cometD)协议,smart io layer 与co...2014-08-24 11:27:27 · 134 阅读 · 0 评论 -
个人成长思维
最近在思考一个问题,如何快速成长?在职场,并非工作时间越长,你的工作能力就越高,这是没有正关联的。在这方面,我推荐刘未鹏的<暗时间>,博客地址:http://mindhacks.cn/2009/12/20/dark-time/ 他的很多观点,我都比较认同,我也在学习中,大家可以一同来思考。 何为《暗时间》\,简单地说,就是个体本身自主独立思考的时间。...2014-03-24 14:39:27 · 175 阅读 · 0 评论 -
clojure学习笔记
clojure编程语言的学习还得继续,创业很忙,但再忙,学习不能停止。 这两天再次拾掇起来,虽然前面也学习了一段时间,但没有实践,忘记的七零八落,而且从oop这种语言切换到Fp还是有些难度的,这种思想,诡异的语法都让人有点难以消化,前期只能拾人牙慧了,这里的两篇文章还是不错的,其余的一些教程从各种角度来看,都差强人意。http://vdisk.weibo.com/s/2n4KwXuB...原创 2015-01-17 09:55:09 · 125 阅读 · 0 评论 -
开始学点nosql与大数据技术了
前几个月定的目标,学习几门或者一门非java外的编程语言,这个目标还在进行中,clojure的学习一直不缀,除此之外,算是在打基础的一些开源工程的学习吧,主要包括两大块,网络编程与多线程高并发框架的学习。 对于上面两块,纯服务器源码(tomcat+jetty),通信框架+IO框架(mina+netty等),高并发框架与事件驱动框架(disruptor+hawtdispatch+reac...原创 2013-09-17 09:55:11 · 108 阅读 · 0 评论 -
java经典问题聚集
粘贴别人整理的,觉得有部分还是比较有价值,如果后面还能碰到一些经典问题,也会陆续整理过来。 1、velocity1.6.1误用hashmap导致死循环http://code.alibabatech.com/blog/experience_555/sun-jdk-hashmap-get-analysis-of-the-illegal-use-of-the-hang.html2...原创 2013-09-12 19:54:58 · 136 阅读 · 0 评论 -
基础夯实
阅读一些开源代码与框架,基础知识如果不扎实,阅读理解起来,总感觉雾里看花,这篇博客是自己终将付出的代价, 1、java是传值还是传引用?比如你看nio源码,发现一些常规的用法就是每次使用selectionKey,后面总会remove掉,如果不remove掉,selector中的selectionKeys(),注册的key将会无线膨胀,将会导致内存溢出。public class ...原创 2013-09-11 10:41:35 · 98 阅读 · 0 评论 -
LockSupport与Unsafe的了解与使用
一般情况下,常见获取Unsafe实体的代码是这样写的:try { Field theUnsafe = Unsafe.class.getDeclaredField("theUnsafe"); theUnsafe.setAccessible(true); THE_UNSAFE = (Unsafe)t...原创 2013-09-10 14:16:46 · 160 阅读 · 0 评论 -
guava与lang3比较学习
guava是google大牛公司内部使用的java工具类,整个设计是毋庸置疑的,与传统的commons-lang比较,可能很多人还是选择了guava,因为都是比较接地气的工具类,小部分模块使用需要做深入探讨,对于其它还是做使用级别的了解。 guava googlecode地址详见https://code.google.com/p/guava-libraries/ ...原创 2013-09-09 18:35:44 · 1564 阅读 · 0 评论 -
java编程与NIO
java编程不得不谈并发多线程与网络编程,且两者也是相跟随的,相互配合的,才构建了一个java的辉煌,注意,这里只是一个说法,并发与网络编程的确是java中两个不可缺少的组成,此篇,还是一如既往地延续以前博客的风格,没有太多自己作品,更多的是一些总结。 java网络编程中不得不提的当nio了,当然接触也很早了,自己膜拜的一位技术大p,n年前已经对nio很熟悉了,至此时,我还没有他的高度,...原创 2013-09-08 17:24:51 · 99 阅读 · 0 评论 -
如何构建一个基于netty的后端服务器
如何构建一个基于netty的后端服务器,先打个标题 直接上干货,这个是前奏,比较山寨的实现,大家可先自行看下https://github.com/xiaotutiger/miyue-music-service/tree/master/miyue-music-service 下面将分析手头上一个项目,运用的技术很全,值得学习,先做一个简单介绍,当然业务部分代码就不讲了。...原创 2013-09-06 11:37:16 · 498 阅读 · 0 评论 -
akka接地气构建一个简单分布式系统
业务需要,小组内部搭建了一个基于akka简单的分布式集群,尽量轻量级。业务场景,简要说下,目前业务数据量比较大,且还在以每天几十万的数据量递增,现在需要根据这些历史数据,从不同的维度,且维度可能组合,统计相关业务数据,其中包括数据挖掘,数据运营,同时还有可能业务告警,同时还要求数据尽量及时,而且考虑到后续可扩展,可以增加任意其他维度,能够快速响应等,从上面的描述中,我们可以提供几...原创 2013-11-26 13:44:32 · 681 阅读 · 0 评论 -
如何编写耦合性比较低的代码
这里不从设计模式上去讲,只是对日常编码经常使用的方法与经验的一个总结。本次使用的更多的是spring文件配置上来做文章原创 2013-11-26 13:30:56 · 415 阅读 · 0 评论 -
java BIO vs NIO探讨
首先大家给大家直接丢个连接:http://blog.csdn.net/haoel/article/details/2224069http://www.goldendoc.org/2011/08/java-nio-small-things/ 有c/c++开发经验的程序员可能更容易了解,不禁鄙视自己这方面的编程知识太欠缺,多次想去学习,最终无果,终而对java的一些底层原理不知所...2012-09-29 13:09:06 · 79 阅读 · 0 评论 -
java消息服务
不知道java世界里失去了消息服务,将会是怎样一个局面,今天寻了jms API源码老长时间,终于被搜到,再次贴上来,对于想了解jms的同学,希望有点帮助,http://ondex.rothamsted.bbsrc.ac.uk/nexus/content/repositories/public/javax/jms/jms/1.1/...原创 2012-03-12 20:03:41 · 70 阅读 · 0 评论