每日一博 | 用 N 多的框架写同一个demo

栏目: Groovy · 发布时间: 6年前

内容简介:每日一博 | 用 N 多的框架写同一个demo

发表日期2016年年末

最近有了比较长的空闲时间。 所以看了很多很多不同的语言,框架。 java用了很多年了,总觉得眼界都被 java 影响了,所以想从新开始学一点新的东西。 而一旦开始选择开始的路径,完美主义的小心思就出来作祟了。 泛泛的接触了好多好多东西,基本上主流的语言,框架都把入门文档看了个遍。 到最后都没有达到最初想学点东西的目的,反而看文档的能力提高不少......

所以,我决定不再单纯的看了。 我觉得执行下面的计划,动手写写。这也是为什么文章开始就要写明发表时间,因为未来会发生什么谁也不知道,我得到的结果只是当下我认为的好结果而已。

仅此而已

  • 这里是列表文本测试方式:controller层上返回服务器当前时间 new Date().getTime() //long类型
  • 开发方式:使用各个框架的引导教程默认设置去写代码,尽量写最少的代码完成demo
  • 测试的框架:jfinal(java),grails(groovy),play(scala),springboot-undertow(java),express(js),beego(golang),compojure(clojure)....看情况增加
  • 测试内容:ab进行压测测试,开发效率(完成所花费的时间),上手难度,扩展性(面对需求频繁更改的可维护性)
  • 压测命令:ab -n 100000 -c 1000 -k http://localhost:8080/
  • 测试机器:amdFX 6300 3.5G+8G+windows10

因为都是主观感受,因此对其他人来说没有任何参考价值 没有任何参考价值 没有任何参考价值 没有任何参考价值

重要的事情说三遍,免得别人以为我在宣扬啥。 下面开始贴图

jfinal jfianl是我用的最多的框架,目前整个公司也在用,真的用起来很爽,最喜欢orm层设计,可以不写字段,对于需要频繁变更数据库结构的前期开发非常顺手。扩展起来也很方便,毕竟是java系。上手的话和在测的这些比较对于0基础的朋友来说属于困难。

jfinal+tomcat9m 不打包,使用idea直接运行起来,配置文件里面关闭dev

每日一博 | 用 N 多的框架写同一个demo

jfinal+tomcat8 war包 关闭dev

每日一博 | 用 N 多的框架写同一个demo

jfinal + jetty9 war包 关闭dev

每日一博 | 用 N 多的框架写同一个demo

*** spring *** spring是jee开发绕不过去的大山,springboot用的人越来越多,其实我之所以要看springboot只是对undertow这个框架感兴趣。因此测试结果也是直接测试undertow内核下的性能。 springboot上手难度的话个人感觉比jfianl简单一些,比着教程可以跑起来,不过对于不了解java的朋友来说 看到一大堆注解,会疯掉。

springboot+undertow idea中直接run

每日一博 | 用 N 多的框架写同一个demo

scala scala号称是会干掉java的jvm语言,多范式,spark,这门语言本身有很强烈的光环,而且play作为非常牛逼的全栈框架,给人的体验是极爽的。写代码->刷新看结果,不需要重新编译。唯一感觉不好的是,scala这门语言好晦涩....各种符号,各种+-*/,各种箭头。语言本身上手难度决定了这个框架的上手难度。

play

每日一博 | 用 N 多的框架写同一个demo

groovy groovy是大家经常用却不知道它的语言,这么说的原因是,gradle就是groovy开发的。grails是groovy借鉴ruby on rails框架开发的web 框架,对新人极其友好,命令行里面,create-controller,create-doman,create-service。直到现在我还能回想起那种写代码顺畅的感觉。而且grails3以后,底层实现直接使用spring4+hibernate5。对于ssh系的开发人员来说,上手速度杠杠的。因此测试也是两种,console中直接执行使用的jetty,使用main函数执行使用springboot。而且由于本身是脚本语言,代码修改非常方便。

grails3 console中直接运行

每日一博 | 用 N 多的框架写同一个demo

grails3-springboot

每日一博 | 用 N 多的框架写同一个demo

nodejs 作为nodejs杀手框架express,让前端人员在各种领域里面虐杀各种后台开发人员。俗话说的好,凡事能用js实现的东西,早晚要用js实现。上手速度没有比他更快了。而且写的是js的代码,简单又好学。nodejs真心不错的。

express4

每日一博 | 用 N 多的框架写同一个demo

clojure clojure 是jvm下面的一门lisp方言。俗话说,每过一段时间,总有一小撮人发现这个世界上还有另外一个世界叫lisp,并且他们妄想lisp能够统领全世界。其实lisp下面有不少web框架可以用,为什么选择compojure这个框架,主要原因还是http-kit。compojure默认配置使用jetty7执行,效率没法看了,但是换成http-kit内核以后,速度飞起.测试完http-kit以后,我对这个框架产生非常大的兴趣,有谁知道有http-kit有哪些应用吗? 这个速度真的是可怕啊。

上手难度:你知道lisp吗?

compojure 默认配置

每日一博 | 用 N 多的框架写同一个demo

compojure+http-kit

每日一博 | 用 N 多的框架写同一个demo

golang golang作为google亲儿子语言,不用多说了。好多朋友都喜欢,我去年也用了好一阵子,确实很好,而且beego作为国人开发的框架,教程的丰富程度,从视频到文字应有尽有。但是,不知道是什么原因,在我的机器上beego测试出来的速度有点匪夷所思的慢,这个值大家看看就成了 这个值大家看看就成了 这个值大家看看就成了 这个值大家看看就成了 重要的事情说三遍,要不然我就成beego黑了.

beego 默认配置

每日一博 | 用 N 多的框架写同一个demo

测试全部完成以后发现,其实测试本身没啥意义,因为都是默认配置,和优化以后效率就没有什么可比性了。因此只能图个乐呵。

茄子萝卜各有所爱,何必在意细节


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Learn Python 3 the Hard Way

Learn Python 3 the Hard Way

Zed A. Shaw / Addison / 2017-7-7 / USD 30.74

You Will Learn Python 3! Zed Shaw has perfected the world’s best system for learning Python 3. Follow it and you will succeed—just like the millions of beginners Zed has taught to date! You bring t......一起来看看 《Learn Python 3 the Hard Way》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具