stateless server 最佳实践

stateless server 即无状态服务。相对与传统的http server存在session,无session的 http server称为stateless server,现在一般应用于restful service. Why: session的概念存在这么多年,一定有其合理之处,为什么要抛弃它? session的起源: session根源于http的cookie. http协议本身是无状态的协议,server是一问一答,答后不管。为了加入 状态,来辨识是否访问/是否登录的需要,加入了cookie。服务器的session就是对应浏览器端的cookie. 为什么抛弃session: 高并发的访问,session制约 …

关于软件项目计划的看法

“凡事预则立 不预则废”,这是«礼记»中的名言,意思是任何事情不作计划就会失败。 软件项目也一样必须作计划。但是实际情况是,软件项目很难预估资源和时间。软件开发中 有个“公理”:20%的工作要花费80%的时间。二八原理。还有一个"20%的项目是成功,80%" 将失败"。说明软件项目很难作出贴近实际的计划(schedule)。Why? 特性: 软件项目大多是创造性,难度大,复杂程度高。就单单编程语言来说,在电脑领域已发 明了上千不同的编程语言,而且每年仍有新的编程语言诞生。 资源: 软件项目的主要资源:人,是稀缺的。需要较高技能要求。

Grails框架介绍

Grails是一套用于快速Web应用开发的开源框架,它基于Groovy编程语言,并构建于Spring、Hibernate等开源框架之上,是一个高生产力一站式框架。其官方网站上的煽情介绍为:The search is over!, 即为不要再苦苦寻找web开发框架了,Grails是终结者。 如果web项目组大部分懂java,又没有旧的web项目负担。Grails是明智的选择。 缺点: groovy是类java的脚本解释动态语言,尽管其兼容java所有语法,最终也运行于JVM,但是速度有所影响.总体grails 比rails快,慢于传统ssh(struts/spring/hiberate)框架. 除了稍慢的运行速度,grails相 …

养金鱼

鄙人喜欢狗,对养鱼这种雅趣向来不屑一顾。几个月前儿子笑盈盈地提着一个透明小水盒, 得意的炫耀他钓的金鱼。原来是公园的付费小娱乐,每次十元,规定时间内钓的金鱼就可以 带回。我瞅了瞅,6条小金鱼,不是锦鲤,也不是那种鱼鳍眼睛特别大的金鱼,就是鱼鳍比一般 鲤鱼大一点,颜色更鲜艳的金色小鲤鱼, 不是什么名贵品种。似乎刚被勾上来,神情恹恹,浮在 透明塑料小盒子里。看来没几天好活,不忍心打击儿子的童心,便答应养着。 一个星期后,死了一条,剩下5条居然活了下来,使劲游水,已经适应了环境。就多留意了一些, 晚上睡觉的时候,也偶尔听到小鱼吧嗒水泡的声音,似乎是小水盒太挤,氧气不足,所以游在水面 上吐泡泡。 又过了大半个月,5条金鱼没减员,而且更见活 …

Gradle 介绍

gradle 现在已经2.1版本了。从1.0版本就一直关注这个groovy项目,但是没有应用到 公司项目的打算,但是现在时机到了。gradle已经是最好的java自动构建工具,没有之一。 一、gradle基于动态语言groovy groovy是java的动态版,闭包的特性让其编译脚本更加自由。 比如你可以指定项目的某个目录用特定jdk版本编译。 二、gradle 可以完全利用已有的maven库资源 maven库资源已经发展非常成熟,几乎没有找不到的开源库。 三、gradle插件非常丰富,已经支持android项目构建。 没错,你现在可以用gradle一个命令实现android项目的编译,打包,上传,运行。 插件: …