自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

战无道的博客

一些自我学习的笔记,请大佬们多多指教!

  • 博客(15)
  • 收藏
  • 关注

原创 SpringCloud-7-配置中心

一、创建配置中心微服务4041把所有配置文件都扔到git仓库里,修改配置文件,只需要发送一个post请求,不需要重启项目就能完成更新git创建仓库1.1 添加依赖其实和eureka一样,config也是个服务端,其他微服务连到这个模块就相当于客户端。注意:这个默认版本是2.2.1,其他版本如2.2.2会出现jar包冲突,nosuchmethod错误1.2 配置文件注意:你的git仓库是私有的就加上账号密码,公有的就可以不加server: port: 4041eureka:

2020-11-16 16:29:59 122

原创 SpringCloud-5-Hystrix

一、Hystrix概述熔断器,断路器,类似于家里的保险丝,保证分布式服务的安全运行1.1 服务雪崩在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应。服务雪崩效应是一种因“服务提供者"的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。如果下图所示: A作为服务提供者,B为A的服务消费者,C和D是B的服务消费者。A不可用引起了B的不可用,并将不可用像滚雪球一样放大到C和D时,雪崩效应就形成了。现实通常是更糟糕

2020-11-15 21:21:45 170

原创 SpringCloud-8-事务控制

一、事务1.1 概念事务控制必须保证同一个连接,spring打个注解就解决了,但分布式里控制不住,可能是在自己微服务里同时调用三个微服务,不同数据库不同虚拟机不同ip地址,肯定控制不住。解决方法:1. 把关联性比较强的几个表放在一个微服务里,spring打个注解就可以用了2. 分布式用seata解决//seata中文网http://seata.io/zh-cn/https://github.com/seata/seatahttps://github.com/seata/seat

2020-11-15 00:18:06 2116

原创 SpringCloud-6-Zuul网关

一、网关作用nginx结构图就是一个微服务的统一入口,网关会根据路径进行分配,发送给不同的模块1.1 概述1.2 常见的API网关实现方式Kong基于Nginx+Lua开发,性能高,稳定,有多个可用的插件(限流、鉴权等等)可以开箱即用。问题:只支持Http协议;二次开发,自由扩展困难;提供管理API,缺乏更易用的管控、配置方式。ZuulNetflix开源,功能丰富,使用JAVA开发,易于二次开发;需要运行在web容器中,如Tomcat。问题:缺乏管控,无法动态配置;依赖组件较多;处

2020-11-12 06:51:51 141 1

原创 SpringCloud-4-OpenFeign

一、概念1.1什么是Ribbon1.2重要作用基于ribbon实现服务调用调用的服务可能会崩掉,实现客户端负载均衡,nginx是实现服务器的负载均衡二、OpenFeign(最好的调用方式)不使用RestTemplate,定义接口(服务名),方法(请求路径)在分布式服务出现以前用WebService:Web服务;还有.NET Remote远程调用三、Hystrix:熔断器三个状态:默认关闭;打开直接进入降级;打开后半开放出一个请求,请求成功就关闭,失败了就继续打开3.1 降级正常请求

2020-11-12 06:51:15 134

原创 SpringCloud-3-Ribbon

一、概念1.1什么是Ribbon1.2重要作用基于ribbon实现服务调用调用的服务可能会崩掉,实现客户端负载均衡,nginx是实现服务器的负载均衡二、OpenFeign(最好的调用方式)不使用RestTemplate,定义接口(服务名),方法(请求路径)在分布式服务出现以前用WebService:Web服务;还有.NET Remote远程调用三、Hystrix:熔断器三个状态:默认关闭;打开直接进入降级;打开后半开放出一个请求,请求成功就关闭,失败了就继续打开3.1 降级正常请求

2020-11-12 06:50:11 167 1

原创 SpringCloud-2-Eureka注册中心

一、Eureka服务注册中心所有模块的把自己的信息写到注册中心,模块间调用先在注册中心找到另一个模块的信息,查到就可以调用Eureka基本结构1.1 常见的注册中心(主要讲下zookeeper)Zookeeper有些公司在用,因为Dubbo推荐用这个,现在springcloud不推荐用,但也支持ZookeeperC:一致性A:可用性P:分区容忍性只能满足其中两个条件zookeeper:一个机器访问同步的服务器可以拿到数据,未同步的服务器就拿不到数据,那怎么实现一致性?(把信息同步到所

2020-11-12 06:49:40 130

原创 Vue-3-单文件组件

一、安装Vue脚手架工具(新版本)1.1 先安装node.js环境,下一步下一步即可管理员运行cmd,查看版本号,有的话说明安装成功node -v1.2 更换淘宝的镜像源npm config set registry https://registry.npm.taobao.org1.2 脚手架全局安装(只需要一次即可,不用反复安装)//官网npm install -g @vue/cli注意第一次安装的是3.0以下的版本,要3.0以上版本的话要卸载重新安装 npm uninsta

2020-11-08 18:52:07 929

原创 SpringCloud-1-概念及实现模块间调用

一、概念1.1系统架构的演变1.1.1 单体项目Web应用程序发展的早期,大部分web工程(包含前端页面,web层代码,service层代码,dao层代码)是将所有的功能模块,打包到一起并放在一个web容器中运行。优点:所有的功能集成在一个项目工程中项目架构简单,前期开发成本低,周期短,小型项目的首选。缺点:全部功能集成在一个工程中,对于大型项目不易开发、扩展及维护。系统性能扩展只能通过扩展集群结点,成本高、有瓶颈。技术栈受限。1.1.2垂直拆分当访问量逐渐增大,单一应用增加机器带

2020-11-07 14:28:10 1232 1

原创 Rebbitmq-3-SpringBoot整合

一、依赖二、配置自动配置+yml配置文件三、启用rabbitmq现在很多新的jar包不用打注解,有的老版本需要打,还是建议直接打上四、生产者五、消费者5.1 配置类配置声明及绑定配置类来配置,声明交换机、声明队列、绑定交换机也可以绑定交换机,一层一层传递这里注意绑定的是对象,要传对象过来或者直接写方法,一般不这么写5.2 消费者类监听六、确认消息6.1 生产者确认确认信息选择,通过干预spring生命周期就是在创建对象之前,要进行确认消息的选择,类似于原

2020-11-06 13:47:13 99

原创 RabbitMQ-2-工作模式及参数配置

一、workqueues多个消费者监听同一个队列,提高处理速度相比简单模式多加了消费者,类似于分布式,加快了处理消息的速度实际项目只声明一次队列,一般声明在消费者,因为消费者是一直运行的,不能关闭资源代码加一个消费者,就是复制一份消费者类即可,偶数就平均分配,奇数就一边2个一边3个二、publish/subscribe发布订阅(又叫扇出模式)将一个交换机里面的消息给多个队列,(消息同时发送到邮件队列和短信队列,两个消费者,一个监听邮件,一个监听短信(sms:short messaging se

2020-11-04 16:49:17 495

原创 RabbitMQ-1-概念及简单应用

一、为什么使用RabbitMQ只要写入数据库就响应给用户,用户体验比较好,发送邮件和短信就慢慢发1.1串行方式1.2 并行方式开两个线程快一些1.3 消息队列(这种最好)彻底分开为两个程序一个程序往队列里放消息,只负责把消息写入数据库;另一个程序就等待处理消息,拿到消息去发邮件或者发短信。只要消息写入消息队列,就算注册成功。1.4 作用应用解耦:写数据库和发送短信邮件分开流量削峰:流量高的时候不要一起处理,都放到消息队列里,拿一个处理一个,就不会丢数据了,解决了数据库连接

2020-11-04 16:48:45 227 2

原创 Vue-2-表单、组件

一、表单1.1双向数据绑定v-model(vue独有的功能,其他框架都没有)v-model相当于替代了value的属性,但是它更高级,因为双向操作,改变data里的数据,input框的值跟着变,改变input框里的值,data里的数据也跟着变,这个功能是vue独有的,react都没有,很强大。上下跟着变1.2 ref取名有时不想用双向绑定,只是想获得输入框的值失去焦点获得输入框的值,自己取名叫myInput,类似于原生js操作节点来获取值;不仅仅只能拿到输入框的值,可以拿到任何元素的值,@r

2020-11-02 22:30:08 498

原创 Redis-5-实际应用

一、session丢失本地请求不同服务器,session会覆盖二、分布式SpringSession共享之前的方法:session广播Spring-Session:把session数据存到redis中,每次getSession不去session中找,去redis中找,就不会丢了token:客户端携带token,分布式使用2.1添加依赖也是个小框架2.2 使用在启动类上打个注解即可,会自动将session存入redis三、Redis秒杀3.1商品数量:超卖解决方法:不用加锁,使

2020-11-02 19:57:18 121

原创 Vue-1-实例、渲染、监听事件

一、概念渐进的意思是我们可以用vue只写一个页面,慢慢的把整个项目用vue替换掉结合了React和Angular,也有自己的优点二、Vue实例页面的值都是从data里来的,随data值的改变而刷新,不用像render那样,只要改变就渲染整个页面2.1datadata是Vue中存放数据的属性,该属性的值有两种:对象返回对象的函数(推荐,因为一开始简单的可以用,到后面复杂项目对象就用不了了),实际上就必须是对象:function可省略需要用到和保存的数据继续在data里存就好

2020-11-01 19:31:47 743

空空如也

空空如也

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

TA关注的人

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