Java微框架、微服务

原创
2017/01/23 15:27
阅读数 3K

 

wildfly Swarm

https://github.com/wildfly-swarm

spring boot

https://github.com/spring-projects/spring-boot

Dropwizard 

http://www.dropwizard.io/0.9.2/docs/

一个Java框架,用于开发易于运维,高性能的RESTful 网络服务。

它由Yammer开发,用于增强基于JVM的后端服务,集合了来自Java生态系统中的稳定和成熟的程序库,组成了简单,轻量级的程序包,使得用户可以专注于把事情做好。

Dropwizard已是开箱即用的,它支持复杂的配置,应用环境, 日志和运维工具,使得你和你的团队可能在最短的时间内交付一个一流品质 HTTP+JSON 网络服务。 

Dropwizard is a sneaky way of making fast Java web applications.

It's a little bit of opinionated glue code which bangs together a set of libraries which have historically not sucked:

      https://github.com/jdbi/jdbi

        jDBI is designed to provide convenient tabular data access in Java(tm). 

Jersey

https://jersey.java.net/

Grizzly

https://grizzly.java.net/

Ninja

Ninja 是一个用于创建 Web Service 和应用程序的全栈 Java 微框架。它综合 Play 和 Ruby on Rails 的优点,并以纯 Java 格式提供。作为一个综合性软件栈,Ninja 提供了大量开箱即用的功能,如 JSON 解析、HTML 渲染,使得它简单易用。在扩展性方面,Ninja 采用了无状态设计,只需要增加服务器就可以实现横向扩展。

http://www.ninjaframework.org/

https://github.com/ninjaframework/ninja

SparkJAVA

Spark(注意不要同 Apache Spark 混淆)的设计初衷是,可以简单容易地创建 REST API 或 Web 应用程序。它是一个灵活、简洁的框架,大小只有 1MB。

http://sparkjava.com/

https://github.com/perwendel/spark

Vert.x

该工具集用于基于JVM构建反应式、分布式、多语言应用程序。自创建之初,Vert.x就成为了微服务架构的先驱

https://github.com/eclipse/vert.x

https://github.com/vert-x3/vertx-stack

https://github.com/vert-x3/vertx-web

 

AOL Microserver

Microserver is a Java 8 native, zero configuration, standards based, battle hardened library to run Java Rest Microservices via a standard Java main class. Supporting pure Microservice or Micro-monolith styles.

https://github.com/aol/micro-server

KumuluzEE

JavaOne 2015 Duke选择奖的其中一个获奖者,该框架是一个Java EE微服务框架。

KumuluzEE是第一个使用标准Java API的微服务框架。微服务架构的重点是将应用程序开发成服务并将这些服务单独部署;没有一个框架提供自动化部署和配置,是不可能使用Java EE实现真正的微服务架构的。

https://ee.kumuluz.com/

https://github.com/TFaga/KumuluzEE

restlet

https://restlet.com/

https://github.com/restlet/restlet-framework-java

It is available in editions for all major platforms (Java SE/EE, Google App Engine, OSGi, GWT, Android) and offers numerous extensions to fit the needs of all developers.

 

RESTEasy

  RESTEasy是一个JAX-RS标准完整 认证的开发RESTful服务的框架,它是属于JBOSS项目,这个项目中有很多框架帮助你构建RESTful Web服务和Java应用程序,JAX-RS是一个新的JCP规定,规范基于Http协议提供RESTful Web服务的java API。

 

Payara Micro

Java EE Microservices Platforms & High Performance Java EE with JCache– jDays 2016

http://blog.payara.fish/java-ee-microservices-platforms-jdays-2016

https://github.com/smillidge/JDays2016

http://www.jdays.se/

Redkale

https://github.com/redkale

RestExpress

https://github.com/RestExpress/RestExpress

restx

https://github.com/restx/restx

 

JessMA

https://github.com/ldcsaa/JessMA

eventuate

http://eventuate.io/

Rapidoid

https://github.com/rapidoid/rapidoid

http://www.rapidoid.org/

 是个简单,强大,安全的 Java Web 框架。Rapidoid 模块:

https://www.techempower.com/benchmarks/#section=data-r11&hw=peak&test=json

 

Redmonk发布Java框架流行度调研结果

http://www.infoq.com/cn/news/2016/09/redmonk-java-frameworks

 

Lightbend Lagom

Lightbend(最近由 Typesafe改名而来),是Akka背后的公司,最近发布了一款开源的微服务框架,Lagom(在瑞典语中,“刚刚好的”意思),它构建在Reactive平台之上。尤其是使用了Play框架和Akka家族产品,并添加了ConductR用于部署。默认情况下,Lagom是消息驱动和异步的,使用分布式CQRS持久化模式,并将事件溯源(event sourcing)作为主要实现。

按照Jonas Bonér(他是Lightbend的CTO和Akka的创建者)的说法,将其命名为Lagom的原因在于移除微服务对于“微”(也就是规模)的强调,它的关注点在于正确规模的服务,而不仅仅是小型的服务。

 

Java micro frameworks

Jodd 是一个 Java 微框架、工具和公用程序的集合。所以,它同上面两个框架可能不具有直接可比性,比如,Spark 可以作为 Jodd 的一个组件。Jodd 的目标是减少许多 Java 工具和框架的空间占用,提高它们的速度,提供一个超级轻量级的框架和工具精选集合。Jodd 中的每个库都是单独提供的,用户可以选择使用。这样一个提供若干功能的框架集合似乎与微框架背道而驰,但实际上,Jodd 大小总共不过 1.5MB。

http://jodd.org/

https://github.com/oblac/jodd

Ratpack

https://ratpack.io/

https://github.com/ratpack/ratpack

Ratpack is a simple, capable, toolkit for creating high performance web applications.

Ratpack is built on Java and the Netty event-driven networking engine. The API is optimized for Groovy and Java 8.

Optional Google Guice integration provides a foundation for scaling your application in size in a managed way.

Javalite

http://javalite.io/

JHipster

https://github.com/jhipster/generator-jhipster

Open Source application generator for creating Spring Boot + AngularJS projects in seconds!

pippo

https://github.com/decebals/pippo

http://www.pippo.ro/doc/getting-started.html 

jooby

http://jooby.org/

https://github.com/jooby-project/jooby

It has multi-server setup (netty, jetty, undertow) and/or you can write the whole app in JavaScript (via Nashorn)

killer features

  • Multi-language. Write your application in Java or JavaScript
  • Scripting programming model. Like express.jsSinatra, etc.. but also
  • MVC programming model. Like Spring controllers or Jersey resources
  • Multi-server. Including NettyJetty and Undertow
  • Web-Socket
  • Dependency Injection
  • Hot reload for development
展开阅读全文
加载中
点击加入讨论🔥(1) 发布并加入讨论🔥
打赏
1 评论
37 收藏
1
分享
返回顶部
顶部