自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 MongoDB事务机制

这个过程就好比如你去吃早餐,你点完餐了,并且吃完早餐了,没付钱你就跑了,这不符合正常的流程,要保证你是否付钱了,现在有收款语音播报器,能清楚你是否付了钱了。写入数据只到达主节点,没有到达其他节点,一旦主节点出现故障,从节点没来得及复制数据,从而导致脏数据的出现。安全的读写分离,有利于提高效率,并且确保数据安全,其中的措施是将写入和读取都使用majority这个值,确保数据在多个节点都是存在的,并且要选取备节点进行读取。读取处于事务中的数据时,需要知道从那读,以及能读取什么样的数据。

2024-09-12 15:52:41 1229

原创 MongoDB高可用和分片集群知识

主节点和备节点之间是通过opLog进行同步数据的,opLog是一个固定集合的结构,其中主节点向opLog写入数据,备节点在opLog中读取数据,以达到同步。在大数据发展的时代,数据存储会在多个不同的机器上,要进行分布式的存储,进行分片是一个好的措施,将数据按某种方式进行切分存储在不同的机器上。配置节点: 配置节点不用于存储数据,而是保存了整个分片集群中的元数据,其中包含各个集合的分片策略,以及分片的路由表等。数据分片: 分片用于存储真正的数据,并提供最终的数据读写访问,通常是复制集的形式存在。

2024-09-11 23:37:29 1390

原创 ①MongoDB基本知识①

MongDB属于非关系型数据库一派,没有固定的数据格式存储,是一个具备高性能、高拓展的文档型数据库,数据以BSON(JSON的二进制)的格式存储。

2024-09-11 14:44:19 1259

原创 ①flutter简介和环境构建①

flutter介绍及环境安装

2024-08-23 17:22:27 1015

原创 Vue-03-计算属性和监视属性

计算属性和监视属性

2022-10-03 23:25:21 458 1

原创 Vue框架-02-数据和事件

Vue的数据代理和点击事件

2022-09-30 22:23:10 598

原创 Vue框架-01-了解并使用Vue

初学Vue

2022-09-26 22:52:53 496

原创 JUC并发编程

JUC并发学习

2022-08-10 15:07:21 581

原创 Redis-01-Nosql概述

redis学习

2022-07-31 17:28:05 389

原创 Docker容器数据卷讲解

Docker数据卷

2022-07-18 21:01:06 432

原创 Spring Cloud Alibaba组件Nacos

Nacos服务注册中心和配置中心

2022-06-29 19:18:34 566

原创 SpringCloud-06-Config

Spring Cloud Config学习,实现手动刷新和动态刷新配置文件

2022-06-25 19:06:21 361

原创 springcloud-服务熔断

SpringCloud之服务熔断雪崩效应(熔断器的背景)    在微服务架构中,一个应用由多个服务组成。相互依赖,依赖关系错综复杂。若有一个服务因为故障原因,可能会导致整个服务崩溃。    例如一个微服务架构存在A、B、C、D、E、F等多个服务,它们的依赖关系如下图。图1:服务依赖关系    请求1调用A、D、E、F四个服务才能完成。请求 2 需要调用 B、E、D 三个服务才能完成,请求 3 需要调用服务 C、F、E、D 四个服务才能完成。微服务之间的调用,就是所谓的扇出,当扇出的链路上服务E发

2022-05-23 23:05:50 9829

原创 Springcloud-04-负载均衡

Spring Cloud的负载均衡策略Spring Cloud的负载均衡策略方式有两种:基于微服务名字(Ribbon)接口和注解方式(Feign)负载均衡分类集中式负载均衡:在服务提供者和服务消费者之间使用独立的LB设施,如Nginx(反向代理服务器),由该设施负责把访问请求基于某种策略转发到服务的提供方!进程式负载均衡:将负载均衡逻辑集成到服务消费方,消费方通过去注册中心获取可用的服务列表,从服务列表中基于某种策略选取其中一个合适的服务节点。Ribbon属于进程式LB,它

2022-05-20 00:20:48 229

原创 SpringCloud-03-Eureka

SpringCloud_EurekaEureka简介    Eureka是SpringCloud中用于服务注册与发现的机制,其是Netfilx下的子模块,也是核心模块之一。Eureka是基于REST风格的服务,用于定义服务,以实现云端中间件层服务发现和故障转移,服务注册与发现是微服务的重要原则之一,有了服务注册与发现,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于Dubbo的注册中心,比如ZooKeeper。Eureka原理Eureka基本架构Spring

2022-05-17 23:42:04 220

原创 SpringCloud-02-入门讲解

SpringCloud    基于上篇文章的说的问题,我们来谈谈SpringCloud是什么?SpringCloud是什么?SpringCloud官网     Spring Cloud是基于SpringBoot的一整套实现微服务的框架 ,它提供微服务开发所需要的配置管理、服务发现、断路器(熔断机制)、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等组件。从官网图片可以看出来,SpringBoot是可以用来构建项目,而SpringCloud是用来协调基于SpringBoo

2022-05-17 21:26:03 221

原创 SpringCloud-01-微服务和微服务架构

SpringCloud1.前提    了解一个新事物,要从问题着手,带着问题去探索我们的新事物。常见的面试题什么是微服务?微服务之间是如何独立通讯(通信或产生联系)的?SpringCloud 和Dubbo有那些区别?SpringBoot 和SpringCloud,请谈谈你对它们的理解什么是服务熔断?什么是服务降级?微服务的优缺点分别是什么? 说下你在项目开发中遇到的坑你所知道的微服务技术栈有哪些?Eureka和Zookeeper都可以提供服务注册与发现的功能,请说说二者的区别?…

2022-05-14 22:05:38 283

原创 springboot-23-整合dubbo

Dubbo简介    Apache Dubbo是一款微服务开发框架,提供RPC通信和微服务治理功能两大关键能力。使用了Dubbo开发的微服务,将具备相互之间的远程发现和通信能力,同时利用Dubbo提供的丰富服务治理能力,可以实现诸如服务发现,负载均衡,流量调度等服务治理诉求,    Dubbo提供了从服务定义、服务发现、服务通信到流量管控等几乎所有的服务治理能力,并且尝试从使用上对用户屏蔽底层细节,以提供更好的易用性。    Dubbo中所提到的服务,通常是指RPC粒度的,提供某个具体业务增删改功能的

2022-05-06 11:36:54 297

原创 dubbo-03-第一个dubbo项目

dubbo的使用参考文档1. 环境搭建开发工具准备环境 : maven 3.6以上,jdk 1.8需导入的jar包 <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>

2022-05-06 09:36:36 288

原创 SpringBoot-22-整合Shiro

1. Apache Shiro简介1.1 什么是Apache Shiro?它是一个强大灵活的强大开源安全框架,可以干净利落地处理身份认证,授权,企业会化管理和加密。Apache Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Apache Shiro的首要目标就是易于使用和理解,在可能的情况下掩盖复杂性,并公开一个干净直观的API,以简化开发人员确保其应用程序安全的工作。1.2 Apache Shiro的特点:根据官网我

2022-05-02 00:01:54 279

原创 Dubbo学习-03-zookeeper和Dubbo Admin安装

zookeeperzookeeper简介    zookeeper的中文意思是动物管理员,是一向适用于分布式应用程序的高性能协调服务,用于维护配置信息、命名、提供分布式分布和提供组服务。    zookeeper是Apacahe Hadoop的子项目,是一种树形目录,支持变更推送,适合作为Dubbo服务的注册中心,工业强度较高,可用于生成环境,并推荐使用。zookeeper安装:环境准备了解知识点:    ZooKeeper由多个组件完成,包括客户端,服务器,本机客户端,Contrib等组件

2022-04-29 22:04:04 5707

原创 Dubbo框架学习-02-Duboo概念&&架构

Dubbo介绍    Apache Dubbo |ˈdʌbəʊ| 是阿里巴巴开发的一款高性能、轻量级开源的Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。    Dubbo致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案dubbo官网: (http://dubbo.apache.org)1.服务发现    服务发现,即消费端自动发现服务地址列表的能力,是微服务框架需要具备的关键能力,借助于自动化服务发现,微服

2022-04-29 10:50:19 758

原创 Dubbo框架学习-01-分布式系统相关概念

背景    传统项目和互联网项目,传统项目面向企业,互联网项目面向网民。互联网项目相比于传统项目要求更严格,面向网民,用户要求的美观,功能,速度,和稳定性更好,其中对于速度和稳定性对于后台息息相关。针对于互联网项目和企业项目的大规模数据,单个计算机无法完成数据的计算任务和存储任务,分布式系统能帮我们解决这个问题,利用多台计算机来完成计算任务和存储任务。通过分布式系统能解决流量大,并发高的问题。     开发一个大型互联网项目架构目标:高性能:提高快速的访问体验高可用: 网站服务可以一直正常访问

2022-04-28 13:02:52 206

原创 SpringBoot-22-邮件任务

邮件任务介绍    邮件是在社交、学习或者工作中使用非常广泛的工具,在日常开发中我们需要去学习它,对于邮件分为简单邮件和复杂邮件,在实际开发中,SpringBoot会去整合邮件任务,对于简单的邮件使用MailSender来实现,复杂的邮件通过MailSender的实现类JavaMailSender来实现。邮件的类型    发送邮件实现方式有多种,可以根据需求进行发送相应的邮件,主要分为以下几种:发送简单的邮件发送复杂的邮件发送带有HTML的复杂邮件实现准备工作1. 引入pom依赖 

2022-04-14 12:53:08 1018

原创 SpringBoot-21-异步&定时任务

异步任务&定时任务 异步任务 异步任务知识介绍 在多线程时,后台执行多个任务,我们需要同步等待。此时前台不会给出任何响应,可以采用多线程的方式解决这个问题。 SpringBoot采用异步注解的方式来解决这个问题,让我们在同步等待的时候,响应前台页面,无需等待,后台代码执行依旧实现异步任务       在SpringBoot实现异步任务很简单,在同步等待的任务中添加@Async注解,然后在SpringBoot添加@EnableAsync代码实现在com.liang.se

2022-04-12 23:15:48 3546

原创 SpringBoot-20-集成Swagger

Swagger简介 1.Swagger是什么? Swagger是一框优秀的前后端分离API框架,能提高我们的开发效率,用于生成、描述、调用、可视化Restful风格的Web服务。 Swagger衍生出的一系列项目和工具,可以做到生成各种格式的接口文档,生成多种语言的的客户端和服务器端代码,更新Swagger描述文件,就可以自动生成接口文档,服务端代码,做到调用端代码,服务器代码,接口文档的一致性.2.Swagger的产生背景 前后端集成,前端和后端无法做到"及时协商,

2022-04-10 15:03:38 463

原创 SpringBoot-19-自定义starter

自定义Starter1.Starter介绍    starter场景启动器是Spring Boot中一种非常重要的机制,它将繁琐的配置统一集成到stater中,我们只需要通过在Maven将starter的依赖导入项目,SpringBoot 就能自动扫描并加载相应的默认配置。starter的出现简化了开发人员的工作量,从繁琐的框架配置中解救出来,让更多的时间专注在业务逻辑的开发,提高了开发效率。2.命名规范 &ensp  SpringBoot 提供的 starter 以 spring-boot

2022-03-31 16:50:05 491

原创 SpringBoot-18-注册Web原生组件

注册原生组件    在Java Web阶段我们学过的Web原生组件有Servlet、Filter、Listener等,但在Spring Boot项目中我们的项目默认是以Jar包方式进行部署的,而不是war方式,所以默认没有web.xml,自然不能通过web.xml来配置使用原生组件,因此Spring Boot给我们提供了两种方式来注册这些原生组件。使用RegistrationBean注册通过注解扫描注册1.使用RegistrationBean注册我们可以通过配置类中使用Registration

2022-03-29 23:22:35 172

原创 SpringBoot-17-异常处理

SpringBoot异常处理    在web开发中,会遇到一些异常,这通常需要一个统一的异常处理机制,保证客户端能接受到友好的提示。Spring Boot 中存在的异常处理机制有两种:默认异常处理机制和全局异常处理机制。 1. 默认异常处理机制Spring Boot 默认提供了一套默认的异常处理机制,一旦程序出现了异常,Spring Boot 就会自动识别出客户端的类型(浏览器客户端或机器客户端),并根据客户端的不同,以不同的形式展示异常信息对于浏览器客户端而言,Spring Boot会响应一个

2022-03-29 13:27:28 831

原创 springboot-15-页面国际化

Spring Boot国际化① 国际化介绍国际化(Internationalization 简称 I18n,其中“I”和“n”分别为首末字符,18 则为中间的字符数)是指软件开发时应具备多种语言和地区的功能。换句话说就是,开发的软件需要能同时应对不同国家和地区的用户访问,并根据用户地区和语言习惯,提供相应的、符合用户阅读习惯的页面和数据。② 实现国际化Spring Boot实现国际化,准备工作如下:1.IDEA设置编码问题要统一设置properites的编码问题,不然会出现乱码打开settin

2022-03-23 18:31:03 1125

原创 SpringBoot-14-整合Mybatis

整合MybatisMyBatis 是一个半自动化的 ORM 框架,所谓半自动化是指MyBatis只支持将数据库查出的数据映射到POJO实体类上,而实体到数据库的映射则需要我们自己编写SQL语句实现。,相较于Hibernate 这种完全自动化的框架,Mybatis 更加灵活,我们可以根据自身的需求编写 sql 语句来实现复杂的数据库操作。随着Spring Boot的流行,Mybatis 也开发了一套基于Spring Boot模式的starter: mybatis-spring-boot-spring。使用

2022-03-22 10:52:57 1728

原创 springboot-12-JDBCTemplate

JDBCTemplate    引入spring-boot-starter-jdbc,引入了默认的数据源(com.zaxxer.hikari.HikariDataSource),拿到数据库连接,我们就可以操作数据库了,Spring本身对原生的JDBC做了轻量级的封装,即JdbcTemplate。    数据库的CRUD方法都在JdbcTemplate中,Spring Boot除了帮我们配置默认的数据源,还给我们配置好了JdbcTemplate在容器中,程序员只需要注入即可使用,JdbcTemplate的

2022-03-19 16:42:20 1139

原创 SpringBoot-11-JDBC原理解析

SpringBoot-11-JDBC SpringData简介对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理。Spring Data 官网查看数据库相关的启动器 :官方文档整合JDBC1.创建一个新项目:springboot-04-jdbc,引入相应的模块2.项目搭建好后,查看spring Boot给我们导入的场景启动器和依赖3.在全局(appication.yaml)

2022-03-19 14:58:58 869

原创 SpringBoot-10-Thymeleaf

ThymeleafThymeleaf是一款用于渲染XML/XHTML5/HTML5内容的模板引缉。它与JSP,Velocity,FreeMaker等模板引缉类似,也可以轻易地与Spring MVC等web框架集成。与其他模板引缉相比,Thymeleaf最大的特点是,既是不启动Web应用,也可以直接在浏览器中打开并正确的显示模板内容。1.Thymeleaf简介过去我们使用jsp页面来实现页面的动态效果,实现数据的显示和交互。但SpringBoot项目是以jar的方式,不是war,而且使用的是内嵌的Tom

2022-03-18 21:56:16 721

原创 SpringBoot-09-拓展SpringMVC

拓展Spring MVC介绍Spring Boot 摒弃了传统 xml 配置文件,通过配置类(标注 @Configuration 的类,相当于一个 xml 配置文件)以 JavaBean 形式进行相关配置。Spring Boot 对 Spring MVC 的自动配置可以满足我们的大部分需求,但是我们也可以通过自定义配置类(标注 @Configuration 的类)并实现 WebMvcConfigurer 接口来定制 Spring MVC 配置,例如拦截器、格式化程序、视图控制器等等。SpringBoo

2022-03-18 16:04:54 582

原创 SpringBoot-09-Web开发静态资源处理

Web开发静态资源处理问题既然Spring Boot 提供了web场景的启动器,那么它是如何去处理静态资源的呢?我们的静态资源存放在什么位置呢?SpringBoot给我们提供了大量的自动配置类,而WebMVCAutoConfiguration就是Spring Boot给我们提供来支持web开发的自动配置类。静态资源处理规则在过去,我们项目的静态资源(如css,js等文件)是放在webapp下,现在pom打包方式是以jar的方式,那么Spring Boot是如何去处理对于静态资源存放的问题呢?Sp

2022-03-17 20:22:39 1709

原创 springboot-08-Web启动器

spring-boot-starter-web(Web启动器)简介Spring MVC是Spring提供的一个基于MVC设计模式的轻量级开发框架,其本身是Spring框架的一部分,与Spring无缝集成。Spring Boot是在Spring基础上创建的一款开源框架,它提供spring-boot-starter-web(Web场景启动器)为Web开发提供支持。其中spring-boot-starter-web为我们提供了大量的自动配置类,并嵌入了Servlet容器以及SpringMVC的依赖,使用于大

2022-03-16 22:31:01 601

原创 SpringBoot-06-导入Spring配置

导入Spring配置默认情况下,Spring Boot 中是不包含任何的 Spring 配置文件的,即使我们手动添加 Spring 配置文件到项目中,也不会被识别。那么 Spring Boot 项目中真的就无法导入 Spring 配置吗?答案是否定的。SpringBoot给我们提供了两种导入Spring配置的方式:使用@ImportResource注解加载Spring配置使用全注解的方式加载Spring配置@ImportResource在主启动类使用@ImportResource注解

2022-03-14 17:54:08 1038

原创 SpringBoot-05-Profile&JSR303

SpringBoot-Profile Profile(多环境配置)在实际开发中,一个项目通常会存在多种环境。Profile在不同环境下使用不同的配置提供了支持,可以通过激活,指定参数来快速切换环境。多Profile文件方式当我们项目中有多个环境时,我们要对不同的环境进行区分区分格式: application-{profile}.properties/yamlprofile用来指定不同的环境,通常使用简称,例如dev、test、和prod等等。properties配置在resources

2022-03-14 14:33:55 362

原创 SpringBoot-04-YAML配置绑定

YAML YAML简介

2022-03-13 21:43:16 1107

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除