本文汇总了一些优秀的开源项目,java居多,包括 ,中间件,springmvc,springboot,springcloud,dubbo,redis分布式,学习资料,也包含了部分前端框架
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
我们建立一个网站或应用程序,并要添加搜索功能,但是想要完成搜索工作的创建是非常困难的。我们希望搜索解决方案要运行速度快,我们希望能有一个零配置和一个完全免费的搜索模式,我们希望能够简单地使用JSON通过HTTP来索引数据,我们希望我们的搜索服务器始终可用,我们希望能够从一台开始并扩展到数百台,我们要实时搜索,我们要简单的多租户,我们希望建立一个云的解决方案。因此我们利用Elasticsearch来解决所有这些问题及可能出现的更多其它问题。
github
Spring Boot可以轻松创建Spring驱动的生产级应用程序和服务,并且可以轻松实现。 它采用了Spring平台的观点,以便新用户和现有用户可以快速获得他们需要的位。
您可以使用Spring Boot创建可以使用java -jar或更传统的WAR部署启动的独立Java应用程序。 我们还提供了一个运行spring脚本的命令行工具。
github
阿里巴巴开源分布式事务中间件
github
阿里巴巴mysql数据库binlog的增量订阅&消费组件
github
Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet
, Set
, Multimap
, SortedSet
, Map
, List
, Queue
, BlockingQueue
, Deque
, BlockingDeque
, Semaphore
, Lock
, AtomicLong
, CountDownLatch
, Publish / Subscribe
, Bloom filter
, Remote service
, Spring cache
, Executor service
, Live Object service
, Scheduler service
) Redisson提供了使用Redis的最简单和最便捷的方法。Redisson的宗旨是促进使用者对Redis的关注分离(Separation of Concern),从而让使用者能够将精力更集中地放在处理业务逻辑上。
github
这个应该大家都听说过吧,简称k8s。是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
很多不了解的朋友(比如只听说过容器概念的朋友)会以为docker和k8s是一回事,
其实这是不对的。Docker
是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后部署的 Linux 机器上。Docker容器提供的既是运行容器化应用程序的运行时环境,也是封装和交付容器应用的标准格式。就是说你给我打好一个docker镜像,我就能找个服务器直接运行起来。
但是,docker仅能在单机上部署容器,当部署了很多容器组成容器集群后,必然需要一个一套引擎对多个容器环境进行编排,调度和控制。这就是k8s干的活。
话说回来,docker是有自己的编排引擎的,叫swarm。但是目前的情况是K8s慢慢占据优势地位,我所在的团队,前不久也将编排引擎从swarm换成了k8s.
github
MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。
MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。
github docs
Træfɪk 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。 它支持多种后台 (Docker, Swarm, Kubernetes, Marathon, Mesos, Consul, Etcd, Zookeeper, BoltDB, Rest API, file…) 来自动化、动态的应用它的配置文件设置。
gihub 中文官网
虽然我自己没有亲身用过,但是身边用过的朋友评价都还挺好的。根据官网介绍,这家伙可以解决下面这些让人脑壳疼的问题:
这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
是否有一个全局视角来查看系统的运行状况?
有什么办法可以监控到JVM的实时运行状态?
怎么快速定位应用的热点,生成火焰图?
github
Hutool是一个Java工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让Java语言也可以“甜甜的”。Hutool最初是我项目中“util”包的一个整理,后来慢慢积累并加入更多非业务相关功能,并广泛学习其它开源项目精髓,经过自己整理修改,最终形成丰富的开源工具集。
gitee
google出品,Guava是一组核心库,包括新的集合类型(例如multimap和multiset),不可变集合,图形库,函数类型,内存缓存以及用于并发,I / O,散列,API /实用程序 ,反射,字符串处理,并发,限流等等!
github
用动画的形式呈现解LeetCode题目的思路
github
GitHub中文排行榜,帮助你发现高分优秀中文项目、更高效地吸收国人的优秀经验成果;榜单每周更新一次,敬请关注
github
Java资源大全中文版,包括开发库、开发工具、网站、博客、微信、微博等,由伯乐在线持续更新。
github
Spring Boot 学习资源
github
Spring Boot 使用的各种示例,以最简单、最实用为标准,此开源项目中的每个示例都以最小依赖,最简单为标准,帮助初学者快速掌握 Spring Boot 各组件的使用。
github
Spring Cloud 学习案例,服务发现、服务治理、链路追踪、服务监控等
github
设计模式是形式化的最佳实践,程序员可以在设计应用程序或系统时使用它来解决常见问题。
设计模式可以通过提供经过验证的经过验证的开发范例来加速开发过程。
重用设计模式有助于防止可能导致重大问题的细微问题,并且还可以提高熟悉模式的编码人员和架构师的代码可读性
github
【Java学习+面试指南】 一份涵盖大部分Java程序员所需要掌握的核心知识。
github
开源编程书籍,书籍非常多,基本都是很权威的书籍。
github
收集了Github上的优秀工具,框架,知识合集
github
技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计、Java、Python、C++
github
算法题和解题答案
力扣 idea 和vscode 中可以安装 leetcode 插件快速解题
initcode
VisuAlgo是2011年由Steven Halim博士所开发,其收录了许多高级的算法比如说图的遍历这部分,除了常规的深度优先算法与广度优先算法,还设计了深度优先算法的变形以及找割点,连接桥,和有向图中寻找强连接部分的Tarjan's与 Kosaraju的深度优先算法,目前网站支持中文,印尼文,日文等多语言版本。
网站
知识分享电子书,文档
官网
基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模块:集中权限管理(单点登录)、内容管理、支付中心、用户管理(支持第三方登录)、微信平台、存储系统、配置中心、日志分析、任务和通知等,支持服务治理、监控和追踪,努力为中小型企业打造全方位J2EE企业级开发解决方案。
github
基于SpringBoot2.0的权限管理系统 易读易懂、界面简洁美观。 核心技术采用Spring、MyBatis、Shiro没有任何其它重度依赖。直接运行即可用
gitee
WxJava (微信开发 Java SDK),支持包括微信支付、开放平台、小程序、企业微信/企业号和公众号等的后端开发
github
mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现。 前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。 后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。
github
Cloud-Platform是国内首个基于Spring Cloud微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API 管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。 核心技术采用Spring Boot 2.1.2以及Spring Cloud (Greenwich.RELEASE) 相关核心组件,采用Nacos注册和配置中心,集成流量卫兵Sentinel,前端采用vue-element-admin组件。
gitee
优秀项目整合
github
一个完整的计算机科学研究计划成为一名软件工程师。
github
一款基于代码生成器的JAVA快速开发平台(低代码开发平台),开源界“小普元”超越传统商业企业级开发平台!采用前后端分离架构:SpringBoot 2.x,Ant Design&Vue,Mybatis-plus,Shiro,JWT。强大的代码生成器让前后端代码一键生成,无需写任何代码! 引领新的开发模式(OnlineCoding模式-> 代码生成器模式-> 手工MERGE智能开发),帮助Java项目解决70%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省成本,同时又不失灵活性。JeecgBoot还独创在线开发模式(No代码):在线表单配置(表单设计器)、移动配置能力、在线工作流配置(流程设计器)、在线报表配置、在线图表配置、插件能力(可插拔)等等
github
含 Flink 入门、概念、原理、实战、性能调优、源码解析等内容。涉及 Flink Connector、Metrics、Library、DataStream API、Table API & SQL 等内容的学习案例,还有 Flink 落地应用的大型项目案例分享。
github
算法实现java
github
自然语言处理 中文分词 词性标注 命名实体识别 依存句法分析 新词发现 关键词短语提取 自动摘要 文本分类聚类 拼音简繁
github
全网最新.基于Spring Boot 2.2、 Spring Cloud Hoxton、 OAuth2 的RBAC 权限管理系统
gitee
互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识,后端同学必看,前端同学也可学习
github doocs
最火的前端框架之一(大神-尤雨溪)
github
一套绝佳的图标字体库和CSS框架。现在有5000多个设计精美的图标库可供你选择
github
文的技术知识的总结
github
moment.js是一个JavaScript的时间日期处理类库。这个库还是相当好用的,各种时间日期显示操作功能齐全,且有多语言支持。
github
简单的说,这是个mock工具。在开发过程中,前后端不论是否分离,接口多半是滞后于页面开发的。所以建立一个REST风格的API接口,给前端页面提供虚拟的数据,是非常有必要的。
json-server是一个很好的可以替我们完成这一工作的工具。我们只需要提供一个json文件,或者写几行简单的js脚本就可以模拟出RESTful API的接口。,
github
一个用于格式化和操作数字的JavaScript库。数字可以被格式化为货币,百分比,时间,几个小数位数,千分位等等。 您也可以随时创建自定义格式。
github
ppt模板
官网
分享各种常用软件安装包,安装教程和自学视频,让小伙伴即时获取最新的软件,软件无忧,理工科必备利器!
官网
爱资料在线工具,为开发运维提供全面的在线工具箱,目前已开发工具270款,包含开发工具、运维工具、常用工具、SEO站长工具等,是好用,方便的在线工具网站。
官网
最大的特点是支持各种语言的在线编辑,可以在网页上运行代码。
官网
DogeDoge搜索,中文名多吉搜索,一个绝赞的民间高手开发的搜索引擎,传说完全可以替代百度搜索,百度首页几乎都是广告,而 DogeDoge搜索一个广告都没有,搜索答案侧重于知乎、博客园、CSDN等,实在良心,搜索结果和谷歌差不多,非常适合那些无法科学上网的朋友。
官网