热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

实战java高并发程序设计笔记

前言消息中间件作为分布式系统的重要成员,各大公司及开源均有许多解决方案。目前主流的开源解决方案包括RabbitMQ、RocketMQ、Kafka、ActiveMQ等。

前言

消息中间件作为分布式系统的重要成员,各大公司及开源均有许多解决方案。目前主流的开源解决方案包括RabbitMQ、RocketMQ、Kafka、ActiveMQ等。消息这个东西说简单也简单,说难也难。简单之处在于好用方便,接入简单使用简单,异步操作能够解耦系统间的依赖,同时失败后也能够追溯重试。难的地方在于,设计一套可以支撑业务的消息机制,并提供高可用架构,解决消息存储、消息重试、消息队列的负载均衡等一系列问题。然而难也不代表没有方法或者“套路”,熟悉一下原理与实现,多看几个框架的源码后多总结势必能找出一些共性。

消息框架大同小异,熟练掌握其原理、工作机制是必要的。就拿用的比较多的RocketMQ为引,来说说消息引擎的设计与实现。阿里的消息引擎经过了从Notify到Napoli、再到MetaQ三代的发展,现在已经非常成熟,在不同部门的代码中现在没准都还可以从代码里看到这一系列演进过程。当前的Apache RocketMQ 就是阿里将MetaQ项目捐赠给了Apache基金会,而内部还是沿用MetaQ的名称。

内容简介:

本书一共15章,核心内容为SpringBoot、SpringCloud、Docker、RabbitMQ消息组件。其中,SpringBoot是SpringMVC技术的延伸,使用它进行程序开发会更简单,服务整合也会更容易。SpringCloud是当前微架构的核心技术方案,属于SpringBoot的技术延伸,它可以整合云服务,基于RabbitMQ和 GITHUB进行微服务管理。除此以外,本书还重点分析了OAuth统一认证服务的应用。由于笔记的内容太多,没办法全部展示出来,在此只截取部分内容展示。


第一部分:SpringBoot篇

**第1章SpringBoot编程起步:**本章将为读者讲解SpringBoot 的发展背景与SpringBoot编程起步。

通过本章学习,可以达到以下目标:

  • 1.理解基于Maven 的传统项目开发问题。
  • 2.理解 SpringBoot开发框架的主要作用。
  • 3.编写第一个SpringBoot程序。

**第2章SpringBoot程序开发:**本章将为读者详细讲解SpringBoot开发常用的各项技术,包括代码测试、Jetty配置、资源加载、访问路径、profile配置、项目打包等。

通过本章学习,可以达到以下目标:

  • 掌握SpringBoot开发标准。
  • 掌握 SpringBoot中的常用注解。
  • 掌握内置对象在SpringBoot中的使用。
  • 掌握SpringBoot项目的打包与发布处理。
  • 掌握Spring 多开发环境( profile )的配置。
  • 掌握 Spring错误处理以及错误跳转处理。
  • 掌握 Spring 与Tomcat 的结合使用。

**第3章Thymeleaf模板渲染:**Thymeleaf 是模板技术,也是当下Web开发中使用最多的一项技术,在 SpringBoot中默认支持有此模板使用,本章将为读者讲解Thyemeleaf之中的使用语法以及与JSP语法的关联。

通过本章学习,可以达到以下目标:

  • 掌握 Thymeleaf模板的作用以及相关配置。
  • 掌握 Thymeleaf中路径访问处理支持。
  • 掌握 Thymeleaf页面处理语法。

**第4章SpringBoot与Web应用:**主要讲解https 协议整合、Tomcat发布、全局异常处理、文件上传等。

通过本章学习,可以达到以下目标:

  • 掌握 SpringBoot项目war包的生成与Tomcat发布。
  • 掌握 SpringBoot基于https运行模式的配置。
  • 掌握 SpringBoot 错误处理。
  • 掌握 SpringBoot与文件上传处理。
  • 掌握 SpringBoot与拦截器的使用。

**第5章SpringBoot服务整合:**主要讲解c3p0,MYbatis,

通过本章学习,可以达到以下目标:

  • 掌握SpringBoot与 DataSource数据源整合。
  • 掌握SpringBoot与 MyBatis开发框架整合。
  • 掌握 SpringBoot与SpringDataJPA开发框架整合。
  • 掌握 SpringBoot与消息组件( ActiveMQ、RabbitMQ、Kafka)整合。
  • 掌握SpringBoot与邮件服务整合。
  • 掌握 SpringBoot与定时调度服务整合。
  • 掌握SpringBoot与 Redis 数据库整合。
  • 掌握SpringBoot与 Restful服务整合。

第二部分:Springcloud篇

**第六章Springcloud简介:**主要讲解RPC技术的主要作用及Springcloud技术实践架构

通过本章学习,可以达到以下目标:

  • 掌握RPC技术的主要作用。
  • 了解常见RPC开发技术及主要特点。
  • 了解SpringCloud开发框架的系统架构。

由于笔记的内容太多,没办法全部展示出来,在此只截取部分内容展示。有想获取Java高手系列完整版笔记的朋友一键三连后点击这里即可获取哦

**第7章springCloud与Restful!**主要讲春解Restful结构的基础实现方案、RestTemplate调用微服务以及 SpringSecurity基础认证处理。

通过本章学习,可以达到以下目标:

  • 掌握SpringCloud 与SpringBoot的关系,利用SpringCloud 实现Restful服务发布。
  • 掌握RestTemplate操作类的使用,利用此类实现Restful业务调用。
  • 了解SpringSecurity与 SpringCloud结合的意义,使用SpringSecurity实现安全认证。
  • 了解Swagger 工具,可以利用Swagger 工具实现Restful业务接口描述。

**第8章Eureka注册服务:**主要讲解 Eureka的作用、Eureka微服务创建、Eureka集群搭建、打包部署等。

通过本章学习,可以达到以下目标:

  • 掌握Eureka 的主要作用与服务搭建。
  • 掌握微服务注册 Eureka处理。
  • 掌握Eureka服务信息与发现服务配置。
  • 掌握Eureka-HA机制实现原理与实现。
  • 掌握Eureka服务发布。

**第9章SpringCloud服务组件:**主要讲解Ribbon负载均衡、Feign接口转换、Hystrix熔断机制以及Zuul代理机制。

通过本章学习,可以达到以下目标:

  • 掌握客户端负载均衡组件Ribbon的使用。
  • 掌握 Restful 接口转换 Feign组件的使用。
  • 理解 Hystrix熔断机制的作用与配置。
  • 掌握Zuul组件的使用与代理转换处理。
  • 掌握Zuul与上传微服务的使用。

**第10章 SpringCloudConfig:**与GitHub结合实现分布式配置文件管理、加密处理、SpringCloudBus更新服务。

通过本章学习,可以达到以下目标:

  • 理解SpringCloudConfig与集群微服务的配置管理。
  • 掌握SpringCloudConfig 集成配置与信息抓取处理。
  • 掌握 SpringCloudConfig与仓库匹配模式。
  • 掌握 SpringCloudConfig 加密访问处理。
  • 掌握 SpringCloudConfig 高可用配置。
  • 掌握SpringCloudBus服务总线配置,并且可以利用RabbitMQ实现自动配置抓取。

**第11章 SpringCloudStream:**讲解微服务中信息采集的搭建,主要与RabbitMQ整合。第12章SpringCloudSleuth:讲解微服务调用监控跟踪、Zipkin、数据采集。

通过本章学习,可以达到以下目标:

  • 理解SpringCloudStream的主要作用与设计结构。
  • 使用RabbitMQ 与 SpringCloudStream整合实现流数据处理。

**第13章OAuth认证管理:**分析SpringSecurity实现方案缺陷、OAuth与RPC结合流程,并基于SQL数据库与Redis数据库实现OAuth认证与授权管理。

通过本章学习,可以达到以下目标:

  • 理解微服务开发问题与环形调用。
  • 理解 Sleuth跟踪服务的主要作用与调用监控。3.理解Sleuth 数据采集处理。

第三部分:微服务辅助篇

**第14章 RabbitMO消息组件: **RabbitMO 与Spring 微服务有着密不可分的关联,本章将为读者讲解RabbitMQ的安装、管理、Java开发与集群使用。

通过本章学习,可以达到以下目标:

  • 理解传统RPC认证的问题以及OAuth统一认证的特点。
  • 掌握 SpringCloud 与 OAuth统一认证的结合使用。
  • 掌握 ClientDetailsService、UserDetailsService 的作用。
  • 掌握授权管理控制。

**第15章 Docker虚拟化容器:**虚拟化与云开发是流行话题,本章主要讲解Docker虚拟化容器管理技术,同时讲解微服务与Docker的整合开发以及 DockerCompose组件的使用。

通过本章学习,可以达到以下目标:

  • 掌握 Docker的主要作用。
  • 掌握 Docker的安装与配置方法。
  • 掌握 DockerHub 的使用。
  • 掌握 Docker镜像文件管理。
  • 掌握SpringBoot ( SpringCloud)与Docker整合开发。

总结

其他的内容都可以按照路线图里面整理出来的知识点逐一去熟悉,学习,消化,不建议你去看书学习,最好是多看一些视频,把不懂地方反复看,学习了一节视频内容第二天一定要去复习,并总结成思维导图,形成树状知识网络结构,方便日后复习。

这里还有一份很不错的《Java基础核心总结笔记》,特意跟大家分享出来,需要的话点击这里免费获取

目录:

部分内容截图:

ps://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB)

目录:

[外链图片转存中…(img-LYX9FNgN-1624361925423)]

部分内容截图:

[外链图片转存中…(img-s4E2urwz-1624361925424)]

[外链图片转存中…(img-Ahn4xJay-1624361925424)]


推荐阅读
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 浅析对象 VO、DTO、DO、PO 概念
    作者|CatQi链接|cnblogs.comqixuejiap4390086.html前言由于此订阅号换了个皮肤,导致用户接受文章不及时。读者可以打开订阅号「Web项 ... [详细]
  • TiDB | TiDB在5A级物流企业核心系统的应用与实践
    TiDB在5A级物流企业核心系统的应用与实践前言一、业务背景科捷物流概况神州金库简介二、现状与挑战神州金库现有技术体系业务挑战应对方案三、TiDB解决方案测试迁移收益问题四、说在最 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 标题: ... [详细]
  • 2021最新总结网易/腾讯/CVTE/字节面经分享(附答案解析)
    本文分享作者在2021年面试网易、腾讯、CVTE和字节等大型互联网企业的经历和问题,包括稳定性设计、数据库优化、分布式锁的设计等内容。同时提供了大厂最新面试真题笔记,并附带答案解析。 ... [详细]
  • 本文总结了初学者在使用dubbo设计架构过程中遇到的问题,并提供了相应的解决方法。问题包括传输字节流限制、分布式事务、序列化、多点部署、zk端口冲突、服务失败请求3次机制以及启动时检查。通过解决这些问题,初学者能够更好地理解和应用dubbo设计架构。 ... [详细]
  • “您可以从三个选项中(快速、便宜或好)选择两个”提出这个问题的人可能不是可观测性工程师。但也可能是,在可观测性方面,决定您 ... [详细]
  • 熟练掌握Spring Cloud,终于成为Java工程师的面试门槛 ... [详细]
  • Jmeter对RabbitMQ压力测试
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Jmeter对RabbitMQ压力测试相关的知识,希望对你有一定的参考价值。Jm ... [详细]
  • 基于分布式锁的防止重复请求解决方案
    一、前言关于重复请求,指的是我们服务端接收到很短的时间内的多个相同内容的重复请求。而这样的重复请求如果是幂等的(每次请求的结果都相同,如查 ... [详细]
  • [翻译]微服务设计模式5. 服务发现服务端服务发现
    服务之间需要互相调用,在单体架构中,服务之间的互相调用直接通过编程语言层面的方法调用就搞定了。在传统的分布式应用的部署中,服务地 ... [详细]
  • 有意向可以发简历到邮箱内推.简历直达组内Leader.能做同事的话,内推奖励全给你. ... [详细]
author-avatar
n_light征蓝妙
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有