- 博客(11)
- 收藏
- 关注
原创 JUC并发编程
1、什么是JUCjava.util 工具包、包、分类业务:普通的线程代码 ThreadRunnable:没有返回值,效率相比于Callable相对较低。2、线程和进程1、线程、进程进程:一个程序。QQ.exe Music.exe 程序的集合一个进程往往可以包含多个线程,至少包含一个!java默认有几个线程?2个 main、GCjava真的可以开启线程吗?开不了的,调用本地方法start0(),Java无法直接操作硬件。2、并发、并行并发编程:并发、并行并发(多线程操作同一个资源)
2021-08-02 19:59:47
139
原创 设计模式学习笔记(二)(黑马程序员)
设计模式学习笔记(二)(黑马程序员)4、创建型模式4.2 工厂模式4.2.1 概述需求:设计一个咖啡店点餐系统。设计一个咖啡类(Coffee),并定义其两个子类(美式咖啡【AmericanCoffee】和拿铁咖啡【LatteCoffee】);再设计一个咖啡店类(CoffeeStore),咖啡店具有点咖啡的功能。具体类的设计如下:在java中,万物皆对象,这些对象都需要创建,如果创建的时候直接new该对象,就会对该对象耦合严重,假如我们要更换对象,所有new对象的地方都需要修改一遍,这显然违背
2021-05-07 17:58:23
722
原创 设计模式学习笔记(一)(黑马程序员)
设计模式学习笔记(一)(黑马程序员)1、设计模式概述1.1 软件设计模式的产生背景 "设计模式"最初并不是出现在软件设计中,而是被用于建筑领域的设计中。 1977年美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心主任克里斯托夫·亚历山大(Christopher Alexander)在他的著作《建筑模式语言:城镇、建筑、构造》中描述了一些常见的建筑设计问题,并提出了 253 种关于对城镇、邻里、住宅、花园和房间等进行设计的基本模式。 1990年软件工程界开始研讨设计模式的话题,后来
2021-05-06 20:16:10
983
原创 SpringCloud学习笔记(六)(狂神视频笔记)
SpringCloud(六)9、Zuul路由网关概述什么是Zuul? Zuul包含了对请求的路由(用来跳转)和过滤两个最主要功能。 其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,而过滤功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础。Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他服务的信息,也就是以后的访问微服务都是通过Zuul跳转后获得的。注意:Zuul
2021-05-06 16:54:45
178
原创 SpringCloud学习笔记(五)(狂神视频笔记)
SpringCloud(五)6、Ribbon:负载均衡(基于客户端)6.1 负载均衡以及RibbonRibbon是什么?Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。简单地说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon的客户端组件提供一系列完整的配置项,如:连接超时、重试等。简单地说,就是在配置文件中列出 LoadBalancer(简称LB:
2021-05-04 13:35:30
102
原创 SpringCloud学习笔记(四)(狂神视频笔记)
SpringCloud(四)5、Eureka服务注册与发现5.1 什么是EurekaEureka:怎么读Netflix在涉及Eureka时,遵循的就是API原则。Eureka是Netflix的一个子模块,也是核心模块之一。Eureka是基于REST的服务,用于定位服务,以实现云端中间件层服务发现和故障转移。服务注册与发现对于微服务来说是非常重要的,有了服务注册与发现,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于Dubbo的注册中心,比如Zookeeper
2021-05-02 10:22:49
138
1
原创 SpringCloud学习笔记(三)(狂神视频笔记)
SpringCloud(三)4、Rest学习环境搭建:服务提供者总体介绍我们会使用一个Dept部门模块做一个微服务通用案例Consumer消费者(Client)通过REST调用Provider提供者(Server)提供的服务。回忆Spring,SpringMVC,MyBatis等以往学习的知识。。。Maven的分包分模块架构复习一个简单的Maven模块结构是这样的:– app-parent:一个父项目(app-parent)聚合很多子项目(app-util,app-dao,a
2021-05-02 10:14:41
198
2
原创 SpringCloud学习笔记(二)(狂神视频笔记)
SpringCloud(二)3、SpringCloud入门概述Spring官网:https://spring.io/SpringCloud,基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于Netflix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。SpringCloud利用SpringBoot的开发便利性,巧妙地简化了分布式系统基础设施的开发,SpringCloud为开发人员提供了快速构建分布式
2021-05-02 10:11:20
115
原创 SpringCloud学习笔记(一)(狂神视频笔记)
SpringCloud(一)微服务架构4个核心问题服务很多,客户端该怎么访问?这么多服务,服务之间如何通信?这么多服务,如何治理?服务挂了怎么办?解决方案: Spring Cloud 不是一门技术,是一个生态!Spring Cloud NetFlix:一站式解决方案!服务很多,客户端该怎么访问?api网关,zuul组件这么多服务,服务之间如何通信?Fegin — HttpClient — Http通信方式,同步,阻塞这么多服务,如何治理?服务注册发现:
2021-04-24 18:32:47
133
原创 Swagger(狂神视频笔记)
Swagger学习目标:了解Swagger的概念及作用掌握在项目中集成Swagger自动生成API文档Swagger简介前后端分离前端 -> 前端控制层、视图层后端 -> 后端控制层、服务层、数据访问层前后端通过API进行交互前后端相对独立且松耦合产生的问题前后端集成,前端或者后端无法做到“及时协商,尽早解决”,最终导致问题集中爆发解决方案首先定义schema [ 计划的提纲 ],并实时跟踪最新的API,降低集成风险Swagger号称世界
2021-04-23 17:47:59
99
原创 异步、定时、邮件任务(狂神视频笔记)
异步、定时、邮件任务异步任务创建一个service包创建一个类AsyncService异步处理还是非常常用的,比如我们在网站上发送邮件,后台会去发送邮件,此时前台会造成响应不动,直到邮件发送完毕,响应才会成功,所以我们一般会采用多线程的方式去处理这些任务。编写方法,假装正在处理数据,使用线程设置一些延迟,模拟同步等待的情况;@Servicepublic class AsyncService { public void hello(){ try {
2021-04-23 17:34:44
161
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人