- 浏览: 426858 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (184)
- IDE (4)
- dotCMS (3)
- Liferay Portal (1)
- J2EE (7)
- My SQL (16)
- IBM DB2 (3)
- Oracle (2)
- JDBC (4)
- Hibernate (3)
- JSP (0)
- Framework (4)
- Java编程 (30)
- C++编程 (0)
- Struts 1.X (2)
- Struts 2.X (6)
- Linux (11)
- Spring (7)
- JavaScript (6)
- Ajax (2)
- XML (3)
- IBM Websphere Portal (1)
- IBM Lotus Quickr (1)
- CMS (2)
- ERP (0)
- CRM (0)
- 大型网站架构开发 (1)
- 面试武器 (2)
- HTML 5 (2)
- dTree && webFxloadTree (2)
- JVM (7)
- SQL Server (3)
- Tomcat && Apache && Jboss && Weblogic-中间件 (4)
- FreeMarker (2)
- MongoDB (7)
- OpenSource开源 (24)
- Cloud (0)
- FFmpeg (3)
- Thrift (1)
- SpringSide (1)
- Design Pattern (1)
- solr&&ES (2)
- git&svn (1)
- 大数据 (8)
- 人工智能 (0)
- Hadoop (3)
- Spark (0)
- Sqoop (1)
- Flume (1)
- Hive (3)
- HDFS (4)
- ES (0)
- Redis (1)
- Kafka (3)
- MR (0)
- 机器学习 (0)
- 深度学习 (0)
- Impala (2)
- HBase (2)
- Spring Boot (1)
- Spring Cloud (0)
- 大数据架构 (6)
- 架构思想理论 (6)
- 技术管理 (4)
- 数据结构与算法 (4)
最新评论
-
huijz:
...
Spring Data JPA研究-使用Spring Data JPA 简化JPA 开发(ZZ) -
用户名不存在:
[img][/img][*]引用[u][/u][i][/i][ ...
MongoDB 模糊查询的三种实现方式-morphia实现 -
junsheng100:
请给个完整的例子吧!包括jar文件等
java调用ffmpeg获取视频文件信息参数代码 -
mj:
谢谢!!
SQL Server里面如何导出包含(insert into)数据的SQL脚本 (转载ZZ)
一、Firefly简介
Firefly是一个高性能的一站式Java Web框架,涵盖了web开发的主要技术栈,包含模板引擎、IOC/MVC框架、HTTP服务器、Common工具、Log、Json解析器等模块。
Firefly是一个一站式高性能Java Web框架。Firefly使用简单,在main函数中只需一行代码就可以启动一个Web服务,并且超级轻量,jar包总共500k,启动一个Web服务不到1秒。非常适合注重开发效率和服务性能的互联网应用。
Firefly提供的主要功能如下:
- IOC/MVC框架
- 模板语言
- HTTP服务器
- Json解析
- 异步日志
二、Firefly特性与优点
在开发Firefly之前也一直用开源的Java框架,比如Spring、Struts、Hibernate、iBatis等等,但是始终觉得用这些框架搭建开发环境比较麻烦,其中一些框架升级之后兼容性也是个问题,而且SSH比较臃肿,运行速度慢。
原创心目中理想的web框架,应该在80%情况下不需要繁杂的配置就能运行并且轻量快速,所以决定开发Firefly作为SSH的替代方案
Firefly的确又是一个轮子,不过是一个更好的轮子
Firefly是基于约定优于配置的思想,框架会自动执行约定的或者被标注的函数,参数也是可变的。
Firefly是无侵入的, 程序不需要实现任何接口,不会对业务代码产生污染。并且框架本身不依赖任何第三方jar包,不会发生框架依赖的第三方包和业务代码的依赖包产生冲突。
Firefly非常注重功能的实用性,对于平时不常用的功能不会添加到Firefly当中,这样可以避免像其他开源框架那样过于臃肿。
原创认为保持代码的简洁非常重要,代码越少越容易阅读,修复bug也越容易。借用C.A.R. Hoare的名言:软件设计有两种方法:一种是尽可能地简单,这种设计明显没有什么缺陷;另一种是尽可能地复杂,这种设计没有明显的缺陷。
Firefly是一个Web开发框架,所有的功能都聚焦在Web开发上面,没有数据访问以及ORM功能。主要是考虑到面对互联网海量用户,关系型数据库不一定是数据存储的最佳选择,很多NoSQL数据库能直接支持对象存储。如果使用关系数据库个人更喜欢类似Apache DBUtil那样的工具类而不是ORM。
SSH和Nutz框架在功能上比Firefly要丰富的多,但是Firefly在提供了日常Web开发的大部分功能的情况下,相比SSH更轻量,使用更简单,性能也要好得多。自身还提供了HTTP服务器,不需要部署直接就能通过main函数启动,非常方便
Firefly能轻松跑满网卡流量,整体性能上比 Spring + Tomcat的组合快3倍。在我的MacBook上(双核2.3G)用Apache AB测试10w请求、100并发在3w req/s,同等硬件配置 Spring + Tomcat只能达到1.2w req/s。模板语言比FreeMarker快 1.5~2 倍,JSON序列化速度是Gson的4~8倍。
三、Firefly包含模块
Firefly包含IOC/MVC框架、模板语言、HTTP服务器以及Common工具类四大模块:
- IOC/MVC框架支持RESTful URL、拦截链、多视图渲染等特性。
- 模板语言编译方式执行性能很好,支持条件选择、循环、自定义函数等操作。
- 基于nio开发的Web服务器支持HTTP1.1协议的大部分特性,支持动态模板页面、静态文件,本地Session支持,也可以自己实现接口支持远程Session。
- Common工具包里面有各种常用的工具类,比如:Json解析、异步日志、LRUConcurrentHashMap等
四、下载链接
项目主页:http://www.fireflysource.com/
Github地址:https://github.com/hypercube1024/firefly
五、使用手册参考WIKI:
https://github.com/hypercube1024/firefly/wiki/firefly-server-guide
发表评论
-
Hive引擎对比-MR、Tez、Spark
2023-06-13 18:45 1039Hive引擎简介 Hive引 ... -
大数据调度平台对比-Azkaban、DolphinScheduler
2023-05-30 22:42 0大数据调度平台目前多样化,如何选择适合自己公司的调度平台, ... -
Kafka常用命令汇总
2021-11-09 16:14 449在 0.9.0.0 之后的 Kafka,出现了几个新变动,一 ... -
2PC+3PC+BASE理论+CAP原则+ACID
2021-10-26 15:46 3372PC 3PC Two-phase commit ... -
Nginx、HAProxy、LVS三者的对比
2019-08-09 10:27 425LVS的优点: 1、抗负载能力强、工作在第4层仅作分发 ... -
git 常用命令
2016-03-04 00:10 802git: git pull git branch g ... -
solr&&ES API
2016-02-29 11:50 865solr api: private org.apache ... -
Guava(石榴)使用研究-Google开源Collection类库
2013-01-29 18:33 13481)Guava 简介 Guava 中文是石榴的意思,该项 ... -
Joda-Time&Date4j使用研究-开源JAVA日期时间处理类库
2013-01-29 18:27 22471)Joda-Time简介 Joda-Time提供了一组 ... -
Maven常用配置及Tomcat插件配置
2013-01-25 12:54 17297Maven用了一段时间了,基本上被我摆平了。结合Eclip ... -
ftp4j的使用研究-开源FTP客户端Java类库
2013-01-16 18:04 2462ftp4j是一个FTP客户端Java类库,实现了FTP客户 ... -
Spring Data JPA研究-使用Spring Data JPA 简化JPA 开发(ZZ)
2013-01-14 17:38 1522从一个简单的 JPA 示例 ... -
G4Studio开源快速开发平台研究
2012-09-04 14:34 1498G4Studio是一套基于JavaEE ... -
MessagePack使用研究
2012-09-03 18:20 3116MessagePack是一个基于二进制高效的对象序列化类库,可 ... -
JAVA实现二维码、条形码生成与破译-开源Zxing使用研究
2012-08-02 17:39 6877二维码编码代码实现类: package zxing; ... -
JAVA实现PDF文件读取、处理研究-开源PDFBox实现
2012-07-26 16:53 6561实现代码如下: import java.io.*; ... -
JAVA实现图片处理缩略图-三种开源实现方式
2012-07-24 16:04 4015代码实现如下: 第一个开源: Thumbnailator ... -
Pinyin4j的使用研究-开源JAVA中文字符和拼音之间的转换
2012-07-06 19:49 1777Pinyin4j是一个流行的Java库,支持中文字符和拼音之间 ... -
edtFTPj的使用研究-开源JAVA FTP客户端类库
2012-07-06 15:12 2309edtFTPj是一个FTP客户端库,可让任何Java应用程序能 ... -
JAVA对象转成JSON的三种开源实现方式
2012-06-04 00:12 13236第一种方式:Google的Gson Gson 是 Goo ...
相关推荐
Java的Web框架 Firefly Framework ,Firefly是一个高性能一站式Java开发框架,它能帮助开发者快速高效的开发web应用、协议Ser...
该项目为基于Java开发的firefly-dada答题平台设计源码,包含232个文件,其中包括105个Java类文件、18个XML配置文件、2个JSON文件、2个YAML配置文件、1个Git忽略文件、1个文本文件、1个SQL文件。该平台具备三种评分...
码云-Firefly资料.rar
Firefly资料
viola-jones和cnn手势检测(基于opencv和caffe),能够检测和分类5种姿势,在ARM-Firefly.zip
firefly algorithm for optimizatioon
it is a firefly algorithm to find the FC is the total fuel cost and EC is the total emission. The transmission losses Pl can be found either from load flow or using Bmn coefficients. The multi- ...
gevent就是一个基于coroutine的python网络开发框架。协程是一种并发模型,但不同于thread和callback,它的所有task都是可以在一个线程里面执行,然后可以通过在一个task里面主动放弃执行来切换到另一个task执行,它...
从零开始学习ARM嵌入式系列-Firefly-RK3288开发环境的搭建流程和常见问题
docker-firefly-iii
-Arduino-Project-Firefly arduino萤火虫源代码
main_firefly_cont.m-在随机化参数上应用了阻尼的标准FA。 main_cfa_cont.m-在吸引力系数上应用高斯图的混沌FA。 main_cfa_cont_2.m-将Logistic映射应用于光吸收系数和随机参数的混沌FA。 展位,Goldstien-Price,...
Firefly中文LLaMA-2大模型,支持增量预训练Baichuan2、Llama2、Llama、Falcon、Qwen、Baichuan、InternLM、Bloom等大模型 个人深耕AI大模型应用领域积累的成果,希望对您有所帮助。有大模型账号、环境问题、AI大...
适用于Linux 内核驱动入门实验
Firefly Client 是 Firefly Media Server 的独立 Java 客户端。 该软件允许远程连接到指定服务器名称和端口的 Firefly 媒体服务器。
从零开始学习ARM嵌入式系列-Firefly-RK3288开发环境的搭建流程和常见问题.ppt