目录
前言
一、Java基础:
二、MySQL
三、微服务架构
如何了解微服务
四、分布式框架
来自小编给程序员的专属福利
前言
跟小编当初当初的处境一模一样,弄了很久都没有梳理好自己架构,后面越学越乱,甚至学了前面忘了后面,工作中摆在面前都不知道使用这个框架解决。所以后来就有一两个月根本没学新的东西了,专注于树立自己的架构,然后把所学的东西复习一遍,满满填充进去。
当初在网上找过很多的架构啊,框架啊,学习路径图啊,有很多总感觉和自己用的不匹配,缺斤少两的。可能自己也懒,没那心情自己开发一套专用的知识体系,哈哈。毕竟能自己用的完善知识体系肯定不是我这种小萝卜丁的下层程序员可以做到的。不过也发现大多学习路径其实差距也不大,唯一比较大的就是学习路径附带的资源是不是整套的。
然后慢慢的开始去B站学习,看了一下 架构框架学习全集 的视频,另外,还是有很多课程都可以慢慢修补,但真的学习路径图了然于胸才是最重要的,别舍本逐末了。
接下来我们来看看小编学习路线图。
一、Java基础:
JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。
在Java基础板块中有6个子模块的学习:
- 基础语法,可帮助你建立基本的编程逻辑思维;
- 面向对象,以对象方式去编写优美的Java程序;
- 集合,后期开发中存储数据必备技术;
- IO,对磁盘文件进行读取和写入基础操作;
- 多线程与并发,提高程序效率;
- 异常,编写代码逻辑更加健全;
- 网络编程,应用服务器学习基础,完成数据的远程传输。
- 学习该阶段,可以完成一些简单的管理系统、坦克大战游戏、QQ通信等。
小编推荐的福利:Java核心知识点全集 点我 免费领取 ,关注小编,可以持续免费嫖资料。
Java基础一定要巩固,这样学习新的框架才会容易吸收,并且转化为自己的知识框架
二、MySQL
数据库不仅仅是Java开发工程师的必学课程,也是其他语言都需要掌握的技能。用于对交互过程中客户的数据进行存储。
该板块包括关系型数据库和非关系型数据库。
例如:MySQL、oracle、redis、MongoDB等。数据库学习完毕后,可以将数据存储到数据库中,也可以通过SQL语句从数据库中查询数据,结合Java项目可以实现动态站点的数据的保存。
1 数据库设计概述
1.1 数据库概述
1.1.1 关系数据库管理系统
1.1.2 关系数据库
1.1.3 结构化查询语言SQL
1.2 数据库设计的相关知识
1.2.1 商业知识和沟通技能
1.2.2 数据库设计辅助工具
1.2.3 “选课系统”概述
1.2.4 定义问题域
1.2.5 编码规范
1.3 E-R图
1.3.1 实体和属性
1.3.2 关系
1.3.3 E-R图的设计原则
1.4 关系数据库设计
1.4.1 为每个实体建立一张数据库表
1.4.2 为每张表定义一个主键
1.4.3 增加外键表示一对多关系
1.4.4 建立新表表示多对多关系
1.4.5 为字段选择合适的数据类型
1.4.6 定义约束(constraint)条件
1.4.7 评价数据库表设计的质量
1.4.8 使用规范化减少数据冗余
1.4.9 避免数据经常发生变化
以上知识点已经整理成文档,需要领取的同学 点我 免费领取,关注小编,可以持续免费嫖资料,
当然,小编在总结数据的时候在B站上也看到了不少关于mysql的技术视频,给大家推荐一个 MySQL讲解全套视频教程,这里讲了许多关于mysql的技术知识点,比如数据结构,索引优化,MySQL底层源码剖析等一些,大家想了解MySQL的可以点进去看看。
三、微服务架构
微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。你可以将其看作是在架构层次而非获取服务的
类上应用很多SOLID原则。微服务架构是个很有趣的概念,它的主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。
概念:把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。
定义:围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。
本质:用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题。
如何了解微服务
- 微服务架构介绍
- 出现和发展
- 传统开发模式和微服务的区别
- 微服务的具体特征
- SOA和微服务的区别
- 如何具体实践微服务
- 常见的微服务设计模式和应用
- 微服务的优点和缺点
- 思考:意识的转变
具体的微服务架构详解,同学们可以看看这篇文章:点我 了解微服务详细架构 。
四、分布式框架
分布式到底有哪些框架是需要我们去学习的?
业界的互联网巨头公司,都有属于自己的分布式服务框架,如阿里巴巴的Dubbo,HSF,腾讯的Tars,京东的JSF,新浪的Motan,都已经是业界非常成熟的解决方案,其中开源的Dubbo和Motan受到了广大开发者的研究对象。
Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。(推荐学习:PHP视频教程)
Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
主要核心部件
Remoting: 网络通信框架,实现了 sync-over-async 和Logo request-response 消息机制.
RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
Registry: 服务目录框架用于服务的注册和服务事件发布和订阅
特性
面向接口代理的高性能RPC调用
提供高性能的基于代理的远程调用能力,服务以接口为粒度,为开发者屏蔽远程调用底层细节。
智能负载均衡
内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量。
服务自动注册与发现
支持多种注册中心服务,服务实例上下线实时感知。
高度可扩展能力
遵循微内核+插件的设计原则,所有核心能力如Protocol、Transport、Serialization被设计为扩展点,平等对待内置实现和第三方实现。
运行期流量调度
内置条件、脚本等路由策略,通过配置不同的路由规则,轻松实现灰度发布,同机房优先等功能。
可视化的服务治理与运维
提供丰富服务治理、运维工具:随时查询服务元数据、服务健康状态及调用统计,实时下发路由策略、调整配置参数。
异步分布式事务 TCC 框架 hmily
项目简介:高性能分布式事务 tcc 开源框架。基于 java 语言来开发(JDK1.8),支持 dubbo、springcloud、motan 等 rpc 框架进行分布式事务。
分布式事务框架 myth
项目简介:myth 是采用消息队列解决分布式事务的开源框架,基于 java 语言来开发(JDK1.8),支持dubbo、springcloud、motan等 rpc 框架进行分布式事务。
分布式事务框架 LCN
项目简介:LCN 分布式事务框架的核心功能是对本地事务的协调控制,框架本身并不创建事务,只是对本地事务做协调控制。因此该框架与其他第三方的框架兼容性强,支持所有的关系型数据库事务,支持多数据源,支持与第三方数据库框架一块使用(例如 sharding-jdbc)。
LCN框架主要是为微服务框架提供分布式事务的支持,在微服务框架上做了进一步的事务机制优化,在一些负载场景上LCN事务机制要比本地事务机制的性能更好,4.0以后框架开方了插件机制可以让更多的第三方框架支持进来。
更多分布式框架的学习,以及资料详解,需要领取的同学 点我 免费领取,关注小编,可以持续免费嫖资料。
来自小编给程序员的专属福利
以上是小编分享的一些技术学习经验,当然小编也准备了一些列的Java核心知识点资料已经spring 微服务整理的资料,需要的领取的同学 点我 免费领取 ,关注我,大家有什么解决不了的技术问题一起和小编讨论呀!