近期公司的事情我基本上不太能插上手写代码(当领导了,每天写邮件和整理Excel),可是作为一个前主程怎么忍心让本身的技能荒废了呢(其实已经自废武功:Ruby on Rails彻底忘的差很少了)?再和小伙伴们作一个项目A的时候,偶然间想起了我手里还有个域名ailink.io仍是挺上口的(鬼知道我当时怎么想的要买这域名),再加上本身对Lisp大法的一些情怀(Emacs用多了的后遗症,早几年发现intelliJ,大概我和Lisp就没啥关系了)。而后就开始做为项目A的子功能先行开发完成了,并独立放出给诸位同窗使用(求捧场TT)。架构
Clojure+Ring +Compojure + Enlive + PostgreSQL + beanstalkd(某些同窗会问什么鬼)。框架
Ring+Compojure就不用说了,基本上能够说是使用Clojure写Web的主流选择之一(另外一个是Luminus,貌似这框架更流行些)。运维
选择Enlive是由于这东西和JQuery的选择语法彻底一致,同时能够将模版独立出来没必要像hiccup那样把页面直接写在.clj文件中。好处没必要多说,谁用谁知道。大数据
PostgreSQL这选择可能会让不少小伙伴很意外,为毛不是MySQL。缘由是这样的,作了多年的创业公司的后台猿(架构师+DBA+运维)深知MySQL的方便性和易用性,但也深知MySQL的类型系统是多么的让人不开心。同时考虑到,咱们之后的大数据的方向,最终仍是放弃了MySQL(毕竟小团队不适合用太多的技术)。spa
beanstalkd又是什么鬼,beanstalkd是一个很是简单的队列系统。说到这,不少亲们会说,博主,你不是很是会搞RabbitMQ嘛,为毛不用RabbitMQ呀。缘由很简单,VPS体量过小,CPU数量少,内存小,RabbitMQ相对于beanstalkd彻底没任何优点(其实就是穷TT,没钱买大致量的VPS)。这个时候又有亲会问,你为啥不用Redis呀,这个我只想说,Redis仍是好好作它的存储吧,队列仍是交给专业的来作吧。调试
首先应当感谢JVM平台上的众多库和伟大的Bootstrap,基本上在1个小时内,我就搭建起了基本的Web环境。再剩下的3个小时内,你们就不用想了,就是调试正确性了和增长一些更友善的提示。队列