
分布式
文章平均质量分 90
叶子的翅膀
不积跬步,无以至千里
展开
-
从0到1学SpringCloud第十篇:登录鉴权和IP防刷
文章内容输出来源:拉勾教育Java高薪训练营1. 前言1.1 说明本文将对案例的判断是否登录以及非业务需求(注册限制)进行实现。在欢迎页面需要获取到登录用户的邮箱信息,这个请求api/users/info就要判断下用户是否登录,如果未登录则返回相应信息,让用户可以去登录后再操作 在注册页面,一个IP可以注册多次,但也不能让他们无节制的注册。所以需要限制一个IP最多可以注册多少次;一个IP的多次注册不能太频繁,要有时间间隔。实现的技术将使用GateWay提供的过滤器功能,它能够拦截请求.原创 2021-01-27 13:05:17 · 1465 阅读 · 0 评论 -
从0到1学SpringCloud第九篇:登录限流
文章内容输出来源:拉勾教育Java高薪训练营1. 前言1.1 说明本文将针对于用户登录接口进行限制它的请求频率,进行限流防刷。使用到了Sentinel进行相应的实践应用。1.2 什么是SentinelSentinel 是阿里巴巴开源的,面向分布式服务架构的高可用防护组件。主要以流量为切入点,从流量控制、流量整形、熔断降级、系统自适应保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。Sentinel 分为两个部分:核⼼库:(Java 客户端)不依赖任何框架/库,能够运⾏于.原创 2021-01-05 13:15:32 · 360 阅读 · 0 评论 -
从0到1学SpringCloud第八篇:API网关
文章内容输出来源:拉勾教育Java高薪训练营1. 前言1.1 说明现在我们是有三个服务:邮箱、验证码、用户。每个服务都有自己的请求端口。本文我们将引入GateWay网关,做为整个项目的访问入口,然后将流量转发至对应的服务。1.2 什么是GateWayGateWay是Spring Cloud的⼀个全新项⽬,⽬标是取代Netflix Zuul,它基于Spring5.0+SpringBoot2.0+WebFlux等技术开发。GateWay天⽣就是异步⾮阻塞的,基于Reactor模型。当.原创 2020-12-31 15:06:14 · 441 阅读 · 0 评论 -
从0到1学SpringCloud第七篇:分布式配置中心
文章内容输出来源:拉勾教育Java高薪训练营1. 前言1.1 说明前面使用了Nacos做为了服务的注册中心。然后Nacos也提供了配置管理的功能。本文就将使用Nacos提供的配置功能,对用户登录注册服务中的数据库连接信息、邮箱服务器的连接信息进行配置。然后各个服务就去找Nacos拿相应的配置进行使用。1.2 什么是Nacos的配置管理Nacos 提供用于存储配置和其他元数据的key/value存储,为分布式系统中的外部化配置提供服务器端和客户端支持。它的控制台很方便的提供了编辑配置.原创 2020-12-25 13:13:58 · 333 阅读 · 0 评论 -
从0到1学SpringCloud第六篇:服务远程调用
文章内容输出来源:拉勾教育Java高薪训练营1. 前言1.1 说明前面已经将三个服务注册到了Nacos服务端了。接下来就要继续改造三个服务的相互调用:验证码服务调用邮箱服务提供的发送邮件,用户服务调用验证码服务提供的校验服务。原先是直接通过HTTP请求进行调用。而针对于分布式服务来说,HTTP调用相比而言就单薄了些。更多的是使用RPC来调用。因为良好的rpc调用是面向服务的封装,针对服务的可用性和效率等都做了优化。单纯使用http调用则缺少了这些特性。本文就介绍下如何使用Dubbo来.原创 2020-12-18 11:07:30 · 933 阅读 · 0 评论 -
从0到1学SpringCloud第五篇:服务注册与发现
文章内容输出来源:拉勾教育Java高薪训练营1. 前言1.1 说明前面已经构建好了三个服务,并跑通了用户登录注册的业务流程。接下来,将会开始应用分布式技术对这个案例进一步的应用。这里主要使用了阿里巴巴开源的SpringCloudAlibaba(SCA)的相关技术。本文将介绍使用Nacos作为服务的注册发现中心,将用户、验证码、邮箱服务自动注册到Nacos服务端,然后服务消费方就可以通过Nacos感知到服务提供方的存在,进行调用。1.2 什么是NacosNacos是阿里巴巴开源的.原创 2020-12-17 09:27:02 · 214 阅读 · 0 评论 -
从0到1学SpringCloud第四篇:Nginx的配置
文章内容输出来源:拉勾教育Java高薪训练营1. 问题说明通过前面几篇,整个案例的业务逻辑都处理完了,提供了以下的动态资源服务用户服务:http://localhost:8081 验证码服务:http://localhost:8083 邮箱服务:http://localhost:8082因为前后端分离,还有一个静态资源的服务也是不一样的端口。在前面测试的时候,因为各个服务的请求端口不一样,在静态页面上调用时出现了跨域的问题。这里,考虑通过在Nginx上配置静态资源和动态资源服务.原创 2020-12-04 11:07:49 · 441 阅读 · 0 评论 -
从0到1学SprignCloud第三篇:用户业务实现以及前端交互
文章内容输出来源:拉勾教育Java高薪训练营本文接着实现用户服务的业务逻辑,还有前端的登录、注册、欢迎页面的交互1. 用户服务接口lagou-service-user项目1.1 创建实体类包括了用户实体User、用户令牌实体Token@Data@Entity@Table(name = "lagou_token")public class Token { @Id @GeneratedValue(strategy = GenerationType.IDEN.原创 2020-12-03 10:38:53 · 538 阅读 · 1 评论 -
从0到1学SpringCloud第二篇:邮箱和验证码业务实现
文章内容输出来源:拉勾教育Java高薪训练营前期的准备后,接下来就可以编写业务逻辑代码。本文就针对于邮箱的发送邮件,验证码服务的生成以及校验的逻辑进行实现。1. 邮箱服务接口lagou-service-email项目1.1 在pom.xml配置文件中添加邮件的依赖<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId>.原创 2020-12-02 11:13:21 · 1438 阅读 · 0 评论 -
从0到1学SpringCloud第一篇:前期准备
文章内容输出来源:拉勾教育Java高薪训练营本文想通过一个用户登录注册的案例,一步一步的将学习到的SpringCloud的知识点串起来。从简单的需求做起,拆分服务实现业务逻辑。然后再将这个案例分布式化,实现服务的注册与发现、网关配置、服务的远程调用、分布式配置、限流防刷。接下来,先梳理下这个案例的前期准备:要实现什么样的功能、数据库表的设计、项目的搭建。1. 案例的业务需求1.1 注册需求在注册页面上,用户输入邮箱、密码、验证码,进行注册 在注册页面上,有一个获取验证码的按钮,点击.原创 2020-12-01 18:09:09 · 426 阅读 · 1 评论 -
Dubbo学习笔记-入门
文章内容输出来源:拉勾教育Java高薪训练营介绍Dubbo是一款高性能、轻量级的Java RPC框架(官网地址)提供了三大核心能力面向接口的远程方法调用智能容错和负载均衡服务自动注册和发现处理流程节点说明Provider:服务提供方,暴露服务Consumer:服务消费者,调用远程服务Registry:注册中心,服务注册与发现Monitor:监控中心,统计服务的调用次数和调用时间Container:服务运行容器,启动、加载、运行服务提供者调用关系说明实线是同步调用.原创 2020-11-26 23:41:14 · 1218 阅读 · 0 评论 -
Zookeeper学习笔记-安装以及基础命令
从官网下载直达地址解压tar -zxvf xxx.tar.gz创建zoo.cfg配置mv conf/zoo_sample.cfg zoo.cfg指定数据的存储目录# 进入zookeeper的目录下创建data目录mkdir data# 编辑zoo.cfg配置文件,在data配置项中指定上述data的路径启动sh bin/zkServer.sh start验证sh bin/zkServer.sh status登录客户端sh bin/zkCli.s.原创 2020-11-26 23:35:51 · 157 阅读 · 0 评论