Spring Cloud微服务架构
文章平均质量分 89
Spring Cloud微服务架构
泡老师大迷弟
吃饭睡觉敲键盘
展开
-
Docker运维技术01-Docker简介
目录Docker技术简介概述版本说明Docker 核心对象镜像(Image)容器(Container)Docker 应用架构分析架构图Docker运行机制总结(Summary)Docker技术简介概述Docker是一个虚拟化平台( 官网https://www.docker.com/),诞生于 2013 年初,基于 Google 公司的 Go 语言进行实现。可以通过虚拟化方式,为应用提供可运行的容器。基于这种方式,可更快地打包、测试以及部署应用程序。原创 2021-09-29 19:51:38 · 266 阅读 · 0 评论 -
微服务架构12-拓展数据库04
拓展业务描述增加数据库访问第一:登录用户信息来自数据库(用户自身信息以及用户对应的权限信息)第二:将上传的文件信息写入到数据库(自己做)第三:将登录操作,文件上传操作的操作日志写入到数据库.(自己做)增加服务之间的调用第一:认证服务调用系统服务(获取用户以及用户权限)第二:认证服务与资源服务都调用系统服务(将日志传递给系统服务,进行数据的持久化)-自己做系统服务设计及实现业务描述系统服务sca-system工程用于提供其它服务需要的基础数据,例如用户信息,日志信息的记录等,原创 2021-09-28 19:25:09 · 196 阅读 · 0 评论 -
微服务架构11-单点登录系统03
#基于用户名获取用户信息select * from tb_users where username= 'admin';#基于用户id获取用户角色select role_id from tb_user_roles where user_id =1;#基于角色id获取菜单idselect menu_id from tb_role_menus where role_id =1;#基于菜单id获取菜单对应的权限标识select permission from tb_menus where id in.原创 2021-09-28 17:26:27 · 245 阅读 · 0 评论 -
微服务架构10-单点登录系统02
Security 认证流程分析(了解)目前的登陆操作,也就是用户的认证操作,其实现主要基于Spring Security框架,其认证简易流程如下:颁发登陆成功令牌构建令牌配置对象本次我们借助JWT(Json Web Token-是一种json格式)方式将用户相关信息进行组织和加密,并作为响应令牌(Token),从服务端响应到客户端,客户端接收到这个JWT令牌之后,将其保存在客户端(例如localStorage),然后携带令牌访问资源服务器,资源服务器获取并解析令牌的合法性,基于解析.原创 2021-09-27 19:48:02 · 259 阅读 · 0 评论 -
微服务架构-05
Sentinel简介背景分析在我们日常生活中,经常会在淘宝、天猫、京东、拼多多等平台上参与商品的秒杀、抢购以及一些优惠活动,也会在节假日使用12306 手机APP抢火车票、高铁票,甚至有时候还要帮助同事、朋友为他们家小孩拉投票、刷票,这些场景都无一例外的会引起服务器流量的暴涨,导致网页无法显示、APP反应慢、功能无法正常运转,甚至会引起整个网站的崩溃。我们如何在这些业务流量变化无常的情况下,保证各种业务安全运营,系统在任何情况下都不会崩溃呢?我们可以在系统负载过高时,采用限流、降级和熔断,三种措施原创 2021-09-22 12:49:02 · 304 阅读 · 0 评论 -
微服务架构09-单点登录系统01
简介背景分析传统的登录系统中,每个站点都实现了自己的专用登录模块。各站点的登录状态相互不认可,各站点需要逐一手工登录。例如:这样的系统,我们又称之为多点登陆系统。应用起来相对繁琐(每次访问资源服务都需要重新登陆认证和授权)。与此同时,系统代码的重复也比较高。由此单点登陆系统诞生。单点登陆系统单点登录,英文是 Single Sign On(缩写为 SSO)。即多个站点共用一台认证授权服务器,用户在其中任何一个站点登录后,可以免登录访问其他所有站点。而且,各站点间可以通过该登录状态直接.原创 2021-09-26 19:09:15 · 319 阅读 · 0 评论 -
微服务架构-06-sentinel
熔断@Componentpublic class ServiceBlockExceptionHandler implements BlockExceptionHandler { /**一旦服务被限流或降级了,sentinel系统底层提供的拦截器会 * 调用此方法对异常进行处理*/ @Override public void handle(HttpServletRequest httpServ...原创 2021-09-22 11:24:07 · 400 阅读 · 0 评论 -
微服务架构-03
客户端与服务端交互客户端package com.cy;import java.io.IOException;import java.io.ObjectOutput;import java.io.ObjectOutputStream;import java.io.OutputStream;import java.net.Socket;/** * 网络中的客户端对象 * */public class Browser { public static void main(S原创 2021-09-16 19:32:13 · 302 阅读 · 0 评论 -
微服务架构07-gateway网关
网关简介背景分析我们知道,一个大型系统在设计时,经常会被拆分为很多个微服务。那么作为客户端要如何去调用 这么多的微服务呢?客户端可以直接向微服务发送请求,每个微服务都有一个公开的URL,该URL可以直接映射到具体的微服务,如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用。这样的架构,会存在着诸多的问题,例如,客户端请求不同的微服务可能会增加客户端代码或配置的复杂性。还有就是每个服务,在调用时都需要独立认证。并且存在跨域请求,也在一定程度上提高了代码的复杂度。基于微服务架构中的原创 2021-09-23 20:00:39 · 278 阅读 · 0 评论 -
微服务架构02-nacos注册中心
目录Nacos注册中心简介背景分析Nacos概述构建Nacos服务准备工作下载与安装初始化配置服务启动与访问服务注册与调用入门(重点)业务描述生产者服务创建及注册消费者服务发现及调用小节面试分析服务负载均衡设计及实现(重点)入门案例@LoadBalancedRibbon负载均衡策略(了解)小节面试分析providerconsumerNacos注册中心简介背景分析在微服务中,首先需要面对的问题就是如原创 2021-09-16 10:37:58 · 525 阅读 · 0 评论 -
微服务架构08-微服务文件上传
目录项目简介业务描述初始架构设计工程创建及初始化工程结构创建父工程创建文件服务工程创建客户端服务工程父工程初始化文件资源服务实现添加项目依赖服务初始化配置构建项目启动类Controller逻辑实现跨域配置实现客户端工程逻辑实现添加依赖构建项目启动类创建文件上传页面启动服务访问测试API网关(Gateway)工程实践概述服务调用架构工程项目结构设计创建网关工程及初始化网关跨域配置启动工程进行服务访问原创 2021-09-24 17:06:44 · 1058 阅读 · 0 评论 -
微服务架构01-微服务简介
微服务简介背景分析讲微服务之前,我们先分析以下单体应用。所谓单体应用一般是基于idea/eclipse,maven等建一个工程,然后基于SpringBoot,spring,mybatis框架进行整合,接下来再写一堆dao、mapper、service、controller,再加上一些的配置文件,有可能还会引入redis、elasticsearch、mq等其它项目的依赖,开发好之后再将项目打包成一个jar包/war包。然后再将包扔到类似tomcat这样的web服务中,最后部署到公司提供给你的linux原创 2021-09-16 08:59:54 · 127 阅读 · 0 评论 -
微服务架构-04
配置中心简介背景分析我们知道,除了代码之外,软件还有一些配置信息,比如数据库的用户名和密码,还有一些我们不想写死在代码里的东西,例如像线程池大小、队列长度等运行参数,以及日志级别、算法策略等, 还有一些是软件运行环境的参数,如Java 的内存大小,应用启动的参数,包括操作系统的一些 参数配置…… 所有这些东西,我们都叫做软件配置。以前,我们把软件配置写在一个配置文件中,就像 Windows 下的 ini 文件,或是 Linux 下的 conf 文件。然而,在分布式系统下,这样的方式就变得非常不好管理原创 2021-09-17 19:10:24 · 142 阅读 · 0 评论