1、背景(abstract)
笔者算是一个极客类型的程序员了。喜欢探索一些程序内在的原理、稳定性、自动化运维、健壮性,很多时间也会
去对程序的内存使用率、cpu使用率锱铢必较。尽量克扣掉不必要的cpu和内存资源,这在一定程序上能节省成本,比如
笔者曾经在阿里云托管java web服务器,1GHz/1G的虚拟主机,使用了springMVC,由于使用的jar包比较多,占用cpu和
内存资源多,远程ssh连接到服务器时几乎不能在有空闲的资源响应我的请求。那个程序不“疾”而终。然后就没有然后了。
做过个人站的小伙伴应该体会过到这种痛,对于刚起步的站长,托管费用那是相当不小的开销,很多人没熬过盈利/收支平衡
就悄无声息的关闭网站了。一次偶然的机会在国外论坛看到一个框架light4j,性能不错。抱着试试看的心态,有了这篇文章。
2、light4j介绍
根据项目发起人Steve hu项目最早命名是Light (weight)Java,取轻量简洁之意,后因为Oracle联系到他,迫于一些原因改成Light4j。
框架主要使用J2SE中的API,一方面这些API经过社区的打磨验证,整体来说稳定性和性能相对来说自然比第三方框架好,笔者空闲之余看过
一些组件的代码,正如作者所说基本没有使用第三方框架,大道至简大概是作者的本意吧。
作者早起从事过J2EE开发,那个时候项目编译时间一次要半小时以上,深受其害,因此也有了这个框架的产生。笔者工作早起又有类
似的经历,给某药业集团开发过仓储管理系统(WMS),使用J2EE即使,修改代码后编译一次web项目半个多小时,编译以后再运行,是否正确
还不能确定,发现问题再重新编译一次,又是半个小时,真是骂爹骂娘都没用。编译好了,然后备份恢复oracle数据,一次2小时,并不能保证成功,
一次项目升级一直到早晨4点还没成功。
据Steve Hu介绍,目前该框架已经在加拿大,美国的确有稳定客户。行业涉及:银行,医疗、政府、企业。
某医疗行业,病人通过穿戴式的医疗材料/设备采集数据,使用light4j重构项目以后,服务器处理量变多;还有一些银行行业都获得了良好的口碑
和稳定的合作关系。目前国内有某银行正在洽谈合作、还有阿里巴巴也在洽谈相关合作。
框架目前主要有两个分支 2.x(JDK11)和 1.6(JDK8),国内目前使用JDK1.8比较多,可以下载1.6分支代码回来学习,使用。
3、评测数据
我们先来看看这个框架在国外网站的评测(2019-07-09数据)
json序列化:https://www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=json&l=zik0vz-f
light4j排第4,spring排53
light4j在json序列化方面是spring的18.92倍
纯文本处理:https://www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=plaintext&l=zik0vz-f
light4j排行14,spring排56
文本处理方面,light4j是spring的50.55倍。
web项目,我们一般使用接口返回json,另外则是返回html(纯文本),通过上面评测数据看得出,light4j的确在这两个方面比spring
快了很多。单位时间内处理的数据量大了,接口响应延时也会变短。
以下是官网的一些微服务测试数据。spring阵营最大吞吐量243240.17,light4j最大吞吐量1344512.65,light4j是spring的50.52倍。
光看上面的数据还是比较吸引人的。笔者接下来将引导大家像,springboot那样,通过网站下载一个demo回来了解这个框架。
light4j中文钉钉群 21975907,欢迎小伙伴加入一起学习。
相关推荐
light-4j, 一种快速轻量级和更高效的microservices框架 一种快速。轻量级和云原生 microservices 。开发者聊天 | 文档| 捐赠指南 为什么叫 Light 4 J光源意味着轻量化,照明快速,并且对如何使用现代Java传感器进行...
为了降低应用程序的生产成本,我需要找到一个轻量级平台,该平台具有较小的内存占用,高吞吐量和Java低延迟。 Java EE和Spring / Spring Boot非常繁重,无法考虑。 其他轻量级Java平台在业务逻辑和技术跨领域关注点...
Light Gui目前是一个图形开发包,没有跨任务的窗口管理系统。 目前只有ucos(增强型,支持系统盘),linux,window平台的移植版本。 Light Gui使用的场合: 需要使用图形库快速实现自有风格的嵌入式设备,比如...
很好用的LightGBM,需要set和mex
亲测好用,目前二维码的应用场景已经遍布各类互联网平台,通常是将产品/商品的唯一编号存储于二维码中以做扫码识别。 而用于生产环境的条形码技术仍然存在,如硬件设备制造、供应、物流运输等等。 在常见的产品信息...
轻量级分布式实时计算框架light_drtc.pdf
etherchain-light, 轻量级Ethereum链管理器资源管理器 Etherchain光用于 private Ethereum链的轻量级区块链资源管理器Etherchain Light是一个Ethereum区块链浏览器,用 NodeJS,Express和奇偶校验构建。 它不需要...
一个轻量级的Light IIS ,解决没安装IIS时运行Asp.net网页程序的程序代码 。
Silverlight MVVMLight轻量级框架 官方实例(BUG收集系统)
快速和小的内存占用以降低生产成本。 它可以支持 60000 个用户登录并获得授权码重定向,并且可以在我的笔记本电脑上每秒生成 700 个访问令牌。 它有 7 个微服务与内存数据网格相连,每个服务都可以单独扩展。 比其他...
LightBlog是一个基于Node.js,Express框架,Mongodb的支持markdown语法的轻量级博客系统.zip
Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition) <br>by Craig Larman <br>Publisher: Prentice Hall PTR; 3 edition ...
官方版本,亲测可用
light-java是内置了undertow http服务器的REST微服务轻量Java框架,它比Spring Boot内嵌Tomcat这样流行的微服务平台要快44倍,与Go语言fast-http性能接近。
Vue-light-Timeline vue2的轻量级时间表组件安装yarn add vue-light-timeline 如果您更喜欢npm: npm i vue-light-timeline用法import Vue from 'vue' ;import LightTimeline from 'vue-light-timeline' ;Vue . use ...
Light Calendar View:一个轻量级的Android月日历视图。完全采用Kotlin编写。为了满足最低要求而设计的典型日历。
light-http:轻量级的HTTP服务器,用于学习
MVVM Light Toolkit是一款轻量级的MVVM工具库,主要用于构建MVVM应用程序,包括Binding和Messenger两大部分,可以添加Data binding不支持的属性,添加对控件事件的封装。如果你正好有需要那就来本站下载MVVM Light ...