不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2017-12-26 14:20  分类:Java库/系统 

2016年度最受欢迎中国开源软件评选

2017 年度开源中国新增开源软件排行榜 TOP 100

围观! 2018 开年 1k+ star 及码云 GVP 项目是如何炼成的

正在用的

定时任务  opencron
MySQL中间件  dble

运维

云锁:企业的第一个机器人安全助手

自动化部署phpMyAdmin历史版本

JumpServer:开源跳板机( Python Django + MySQL Ansible )认证,授权,审计,自动化运维

Archer:基于inception的自动化SQL操作平台,支持工单、审核、认证、邮件、OSC等功能,支持docker镜像

DES、AES、RSA 加密/解密

[文章] DES、AES、RSA等常用加密算法介绍与比较

AES加密/解密库:附实例 C, C++, C#, Erlang, Go, Haskell, Java, PHP, Python, Javascript, and Ruby

轻量级 Java MVC 框架

用来学习:Smart Framework 、JFinal  、jfast

NutzTeaFrameWork

Rose:人人网、糯米网、小米网 释出的、开源的高效Java web开发框架

SMVC:是基于Java开发的轻量级MVC框架,框架宗旨:方法加上注解即接口

Latke一个类似 Spring,但以 JSON 为主的 Java Web 框架

Blade:基于 Java8 + Netty4 创造的轻量级、高性能、简洁优雅的Web框架

TinyFramework:值得拥有的企业级j2ee应用开发框架套件,专业团队开发,完整的生态体系,活跃的社区氛围,无限的水平扩展能力,7*24不间断运维能力。

YMP v2:是一个非常简单、易用的一套轻量级JAVA应用开发框架,设计原则主要侧重于简化工作任务、规范开发流程、提高开发效率,让开发工作像搭积木一样轻松是我们一直不懈努力的目标!

ActFramework:是一种简洁易用,具有强大表达力的 Java MVC 全栈框架:

  • 非Servlet架构,数秒之内启动项目。拷贝文件即部署
  • 无与伦比的开发体验。即改即刷,开发过程无需重启
  • 强劲的运行时性能
  • 。。。。。。

作者自序:(文章出处)

时光回到 2009 年,我作为独立技术顾问刚刚完成了一个使用 CakePHP 的项目。 感觉很糟糕,决定回到我钟爱的 Java 世界。 但我对主流的 Spring,Struts 并不满意。 开始寻找新的技术支撑。 PlayFramework 作为业界的新兵进入了我的视野。 15分钟的尝试告诉我,这就是我一直寻找的东西。

我热爱Play (1.x),因为其简单,干净并富于表达力。 她给 Javaer 们带来了崭新的体验。 遗憾的是 2012 年底 Play 团队推出的 2.x 采用了新的开发哲学,完全废弃了 1.x 的代码架构。 而我对其并不感冒。 后来发生的公开信事件告诉我自己不是唯一这样想的人。

我开始思考沿着 Play 1.x 的道路构造一个新的框架。 大概一年半之后经过了几个使用Spring的项目的“痛苦”经历,我决定开始这个新框架项目。 两年多的开发终于开花结果了:这就是我理想中的 Java MVC 框架: Act.Framework。

当当网

Elastic-Job:A distributed scheduled job framework, based on Quartz and Zookeeper

58同城

Argo:起源与58同城的内部web框架wf(web framework)。目前wf支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求。经过长时间的运作与运行,证明wf是一个可靠的、高效的web框架。

Gaea:是服务通讯框架(Service Communication Framework)支持跨平台具有高并发、高性能、高可靠性,并提供异步、多协议、事件驱动的中间层服务框架。

Oceanus:58同城数据库中间件

RPC框架

ICE ,Thrift,Protocol Buffer ,Hessian 比较?

==》 激光推送 公司用的是 ICE,跨语言、跨组、跨部门、服务器治理比较好,消息队列用的是 RabbitMQ:灵活路由机制,健全的消息确认机制,持久化,性能好)

Dubbo:是淘宝开源的一个分布式的服务架构,可直接用于生产环境作为SOA服务框架

Dubbox:当当网 dubbo 的扩展版

Motan:是新浪微博开源的一套高性能、易于使用的分布式远程服务调用(RPC)框架

Curryx:基于RPC的面向服务的轻量级框架

Redkale:Java 分布式微服务,(中文名: 红菜苔,湖北武汉的一种特产蔬菜)是基于Java 8全新的微服务开源框架, 包含HTTP、WebSocket、TCP/UDP、数据序列化、数据缓存、依赖注入等功能。 本框架致力于简化集中式和微服务架构的开发,在增强开发敏捷性的同时保持高性能。

Turbo-rpc:是一款速度超凡的异步响应式RPC框架.

neural微服务架构中高并发和高可用的神经组织利刃,提供了分布式限流、降级、熔断、重试和隔离的容错特性。并同时提供了SPI、过滤器、JWT、插件机制。此外还提供了很多小的黑科技(如:IP黑白名单、UUID加强版、Snowflake和大并发时间戳获取等)。

Jupiter是一款性能非常不错的, 轻量级的分布式服务框架

NutzBoot:简称NB,是可靠的企业级微服务框架,提供自动配置,嵌入式web服务,分布式会话,hystrix,RPC等一篮子解决方案

消息推送/IM

smart-socket:是一款默默无闻的AIO通信框架,该框架立项之初便已严苛的要求进行开发,追求各方面都达到极致。首先,smart-socket是个非常轻量级的项目,只有依赖log4j2作为项目的日志组件。smart-socket发布的jar包仅仅50KB,简洁的接口设计可以非常方便的在业务中接入通信服务。

t-io:让网络编程更简单和有趣,不仅仅是百万级即时通讯框架

GoPush:分布式消息推送服务

J-IM:是用JAVA语言,基于t-io开发的轻量、高性能、(可能)支持百万在线用户IM,主要目标降低即时通讯门槛,快速打造低成本接入在线IM系统,通过极简洁的消息格式就可以实现多端不同协议间的消息发送如内置(Http、Websocket、Tcp自定义IM协议)等,并提供通过http协议的api接口进行消息发送无需关心接收端属于什么协议,一个消息格式搞定一切!

MPush:基于Netty的开源实时消息推送系统,采用Java语言开发,服务端采用模块化设计,具有协议简洁,传输安全,接口流畅,实时高效,扩展性强,可配置化,部署方便,监控完善等特点。同时也是少有的可商用的开源推送系统。(源码全部开放,包括 server、android、ios )

Web Socket

CshBBrain: 宝贝鱼(CshBBrain) 是一个来自中国的简单的轻量级的高性能的WebSocket服务器。支持服务器集群,能满足大并发量高容量的分布式系统开发。

ORM

轻量级 Java ORM 框架

OrmLite:Lightweight Object Relational Mapping (ORM) Java Package(除了Java Web 的支持,也支持 Android)

ThinkJD又名ThinkJDBC,一个简洁而强大的开源JDBC操作库。你可以使用Java像ThinkPHP框架的M方法一样,一行代码搞定数据库操作。

MySQL中间件

Cetus:【C语言】专注于稳定、性能和分布式事务的MySQL数据库中间件,目标是做一款可以媲美 OneProxy 和 TDSQL 等商业软件的中间件。

MyCat:( V1.6.5正式版下载 ) 数据库 分库分表 中间件(国内最活跃的、性能最好的开源数据库中间件!)

Dble:基于 MyCat 二次开发,专注 MySQL,高可扩展的分布式中间件

作业/任务调度     开源中国收藏

Elastic-Job:A distributed scheduled job framework, based on Quartz and Zookeeper

light-task-scheduler:Distributed Scheduled Job Framework

opencron:一个功能完善真正通用的Linux定时任务调度定系统,满足多种场景下各种复杂的定时任务调度,同时集成了Linux实时监控,webssh,提供一个方便管理定时任务的平台。

xxl-job分布式任务调度平台XXL-JOB

earth-frost:是一个轻量级分布式任务调度框架

opencron:单机版 定时任务调度系统

配置中心

Apollo:(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

Shepher:是一款 ZooKeeper 的管理工具。在小米公司,我们用它作为配置管理中心。 特性 ZooKeeper 节点的可视化操作 ZooKeeper 节点的快照管理 ZooKeeper 节点修改的 Diff 和 Review 功能 ZooKeeper 节点操作邮件通知 集成 CAS 和 LDAP 登录 权限管理,参照 权限管理说明

API网关

Kong[Lua语言]是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能。

GoKu[Go语言]GoKu API Gateway,中文名:悟空API网关,是eoLinker旗下、国内首个开源go语言API网关,帮助企业进行API服务治理与API性能安全维护,为企业数字化赋能。支持OpenAPI与微服务管理,支持私有云部署,实现API转发、请求参数转换、数据校验等功能,提供图形化界面管理,能够快速管理多个API网关,提高API业务安全性。

 Tyk[Go语言] 是一个开源的 API 网关,可让你控制访问 API 的人员,访问 API 的时间以及访问 API 的方式。Tyk 还包含一个简单易用的 Dashboard ,会记录用户与 API 进行交互的过程以及出现问题时的详细分析。

Zuul:[Java] 微服务网关组件  [Github]

消息队列

FQueue[去哪儿网 孙立的作品] 是一个高性能、基于磁盘持久存储的队列消息系统。兼容memcached协议,能用memcached的语言都可以良好的与它通信。 FQueue为你提供一个不需要特别优化,高性能的一个消息系统。

缓存

J2CacheJava 的缓存框架,可以让应用支持两级缓存框架 ehcache + redis (memcached)。避免完全使用独立缓存系统所带来的网络IO开销问题。【目前OSChina网站正在使用该缓存框架】

抢购系统

小米秒杀秒杀、抢购解决方案,设计目标:性能支撑"小米印度抢购搞挂亚马逊事件”

工具包

feilong core:让Java开发更简便的工具包

Hutool一个Java工具集,针对我们项目中util包进行开刀,抽象大量的工具方法,旨在减少项目中工具类的数量,将我们的编码工作专注在业务上。Hutool 对文件、流、加密解密、转码、正则、线程、XML、日期、Http客户端 等 JDK 方法进行封装,组成各种 Util 工具类。 Hutool并非框架,而是一个工具类方法集合,随用随取,且随时可被替换,与任何框架不冲突。 Hutool的大部分工具方法并不依赖第三方包(extra模块对第三方框架封装工具类除外),轻量简洁。

smart-validator:轻量级服务端校验框架 支持注解、支持单独校验 功能齐全、使用简便

jmeter-plugins-dubboDubbo Plugin for Apache JMeter是用来在Jmeter里更加方便的测试Dubbo接口而开发的插件

业务系统

ZrLog:使用 JFinal 构建的个人博客程序

Jweixin:Java微信公众号MVC开发框架

WePush:专注批量推送的小而美的工具,目前支持的类型:模板消息-公众号、模板消息-小程序、微信客服消息、阿里云短信、阿里大于模板短信 、腾讯云短信。

入门参考系统

论坛系统(Spring+SpringMVC+Mybatis)