Code Monkey home page Code Monkey logo

nutzboot's Introduction

NutzBoot 可靠的企业级微服务框架

 _   _ ______                                      ___   
| \ | || ___ \  ______ ______ ______ ______ ______| \ \  
|  \| || |_/ / |______|______|______|______|______| |\ \ 
| . ` || ___ \  ______ ______ ______ ______ ______| | > >
| |\  || |_/ / |______|______|______|______|______| |/ / 
\_| \_/\____/                                     |_/_/  
  
:: Nutz Boot ::

Build Status CircleCI Maven Central GitHub release License Skywalking Tracing

功能介绍

  • 快速创建Nutz应用,提供初始化工具Maker
  • 嵌入式web服务(jetty/tomcat/undertow),直接打包为runnable jar
  • 基于starter的自动配置体系,只需要添加maven依赖,即可自动发现并加载
  • 能满足80%以上常见需求的默认配置,无需过多的自定义
  • 以开放的心态与国内开源团体合作,优先集成国产项目
  • 活跃的社区及稳健的发布周期,推进项目一直前进
  • 提供swagger api文件自动生成

快速预览一下NB的项目吧

pom.xml

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-parent</artifactId>
            <version>${nutzboot.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
<dependencies>
    <dependency>
        <groupId>org.nutz</groupId>
        <artifactId>nutzboot-starter-jetty</artifactId>
    </dependency>
    <dependency>
        <groupId>org.nutz</groupId>
        <artifactId>nutzboot-starter-nutz-mvc</artifactId>
    </dependency>
</dependencies>

src/main/java/io/nutz/demo/simple/MainLauncher.java

package io.nutz.demo.simple;

import org.nutz.boot.NbApp;
import org.nutz.ioc.loader.annotation.*;
import org.nutz.mvc.annotation.*;

@IocBean
public class MainLauncher {

    @Ok("raw")
    @At("/time/now")
    public long now() {
        return System.currentTimeMillis();
    }

    public static void main(String[] args) throws Exception {
        new NbApp().run();
    }
}

asciicast

请访问 https://get.nutz.io 获取属于您的基础代码

Demo

Contributors

  • 蛋蛋(提交了第一个Banner及打印逻辑)及starter-tio和starter-j2cache
  • 胖五(nutz.io主笔)
  • qinerg(率先提交undertow)
  • benjobs(提交了tomcat)
  • 温泉(提交thymeleaf和eureka静态status页面)
  • 科技(探路者,正在踩坑,正在做后台模板)
  • 潇潇(探路者,生产环境填坑中)
  • 道坤(探路者,提交ssdb)
  • HeTaro(探路者,正在踩坑)
  • zozoh(路过...)
  • wendal(到处挖坑)
  • 瞎折腾(完善demo-maker)
  • 天空(提交zkclient)
  • haoqoo(提交velocity)
  • 鱼夫(正在踩NB+U家三剑客的坑)
  • 幸福的旁边(提交caffeine方法缓存)
  • 文涛 (新增支持加载外部配置文件,新增多数据库连接支持)
  • zjSniper (优化starter-tio的逻辑)
  • tasdingoo(issue@github 122)
  • csl_slchia(issue@gitee II92L)
  • 大鲨鱼(提交starter-wkcache/elasticsearch/sentinel等,扩展NB功能)
  • threefish(Nutz Intellij idea插件,提交starter-email/sqlXmlTpl)
  • 还有您的名字哦,告知我们吧

采用NutzBoot的公司

请访问链接 采用公司

文档

开发进度

期待您的加入, 下述 by xxx 为通常是集成该功能的首次提交者,不一定对应软件的作者

  • 基础框架
    • 基础框架的文档
    • nutzboot-core 核心框架的实现
  • 嵌入式web容器
  • 分布式组件
    • RPC(Remote Procedure Call)
      • literpc 简洁高效RPC,由NutzCloud提供
      • starter-dubbo 阿里出品的高性能RPC平台
      • starter-zbus 国产知名RPC平台
      • starter-feign makes writing java http clients easier, by haoqoo and wendal
      • ribbon ,集成在feign中,配合erueka-client实现负载均衡
      • servicecomb Apache ServiceComb
    • starter-zkclient zookeeper的封装
    • starter-sentinel-dubbo 阿里出品的分布式系统的流量防卫兵,集成dubbo by 大鲨鱼
    • starter-sentinel-annotation 阿里出品的分布式系统的流量防卫兵,基于原生注解
    • starter-hystrix 熔断器及其dashboard
    • 服务注册
      • loach-server '泥鳅'服务端,由NutzCloud提供
      • loach-client '泥鳅'客户端,由NutzCloud提供
      • starter-eureka-server 服务治理的服务器端
      • starter-eureka-client 服务治理的客户端
    • 配置中心
      • NB Config Server 配置中心的服务端
      • starter-config-client NB Config Client 配置中心的客户端
      • starter-apollo-client 携程框架部门研发的分布式配置中心的客户端
      • starter-nacos-config 阿里出品的配置服务
    • API网关
      • gateway-server NC API网关服务器
      • zuul
  • 数据库类相关
    • 关系型数据库
      • 数据源
        • starter-jdbc, 普通连接池,默认使用druid,带监控功能
        • starter-sharding-jdbc 分库分表
      • ORM
        • starter-nutz-dao Nutz官方Dao
        • starter-beetlsql 基于Beetl的SQL框架
        • starter-sqlXmlTpl 解决Java拼接SQL(采用xml管理sql)
    • 非关系型数据库
      • starter-redis 特点就是快,吃内存!
      • starter-mongodb NoSQL的重要一支
      • starter-ssdb by 道坤
      • starter-elasticsearch by 大鲨鱼
      • starter-redisson 基于Redis的Java对象/集合/同步锁的分布式实现
      • memcached
  • Mvc
    • starter-nutz-mvc Nutz自带的Mvc框架
    • starter-tio-mvc 基于tio的Mvc框架
    • jersey
  • 非servlet容器
  • 安全鉴权
    • Shiro 应用权限的标配
  • 分布式Session
    • Shiro+LCache基于shiro/jedis/插件的分布式可持久化的session缓存
  • 分布式事务
    • tcc-transaction基于tcc-transaction的nutz容器支持
    • seata 阿里开源的分布式事务引擎,原名fescar
  • 计划任务
  • 模板引擎
  • 消息队列
    • starter-disque redis作者的另一作品
    • starter-rabbitmq 好用的队列服务
    • rocketmq
    • activemq
  • 邮件发送
    • starter-mail 基于commons-email by threefish
  • 工作流
  • 规则引擎
    • starter-urule 中式规则引擎
    • drools
  • 报表系统
    • starter-ureport 中式报表
    • jreport
  • 日志系统
  • 文件系统
  • 开放平台
  • 物联网(IoT)
    • starter-mqtt-client 消息队列遥测传输, IoT 通信的标准
  • 云平台
  • 缓存相关
  • API文档生成器
    • starter-swagger Most Popular API Framework
  • docker相关
    • docker compose配置
    • docker file
  • WebService
    • starter-cxf WebService的事实标准
  • 区块链
    • starter-web3j 以太坊轻量级客户端API
  • 单元测试
    • starter-test-junit4 基于Junit4的单元测试支持库
  • 其他
    • starter-ngrok-client 内网穿透,轻松获取外网地址
    • nutzboot-starter-prevent-duplicate-submit 一个可以防止表单重复提交的解决方案 by threefish

第三方starter或项目

期待您的到来,报个issue告知一下吧 ^_^

公共服务

  • Ngrok内网穿透服务:
    • 访问 https://nutz.cn 并登录, 查看个人主页,获取使用帮助及登录用的token
  • 外网ip探查服务
    • 浏览器访问 http://ip.nutz.cn/ 可看网页版帮助
    • 在服务器执行 curl ip.nutz.cn 可返回其外网ip

授权协议

与Nutz一样, NutzBoot遵循Apache协议,完全开源,文档齐全,永远免费(商用也是)

nutzboot's People

Contributors

wendal avatar wizzercn avatar howe avatar eggsblue avatar threefish avatar qinerg avatar ywjno avatar haoqoo avatar albinhdk avatar tiankongkm avatar pangwu86 avatar wolfboys avatar rekoe avatar happyday517 avatar lx19990999 avatar tomyule avatar zozoh avatar realoldroot avatar liangchengzhi avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.