没有网关,我们的微服务消费端,全都要对外网进行暴露。每个微服务消费端,都要进行自己的安全过滤,身份验证,这无疑增加了开发工作量。另外一个原因,如果有安全规则问题,需要更新维护,那么,所有的服务消费端都要更新一遍。
所以,我们需要对请求进行统一的收口,统一的过滤,这是网关最重要的作用。其次,配合服务注册与发现,网……继续阅读 »
6年前 (2019-06-04) 1369浏览 0评论
0个赞
在一个分布式系统里,许多依赖不可避免的会调用失败,比如超时、异常等,为了解决这个问题,业界提出了断路器模型。如何能够保证在一个依赖出问题的情况下,不会导致整体服务失败,这个就是Hystrix需要做的事情。Hystrix提供了熔断、隔离、Fallback、cache、监控等功能,能够在一个、或多个依赖同时出现问题时保证系统依然可用。较底……继续阅读 »
6年前 (2019-06-03) 1863浏览 0评论
0个赞
今天在实现feign远程调用文件上传服务的时候踩了一些坑,特此记录下
第一个坑 多参数传递问题
Method has too many Body parameters: public abstract 。。。。
当使用Feign时,如果发送的是get请求,那么需要在请求参数前加上@RequestParam注解修饰,Controller里面可以不加该注解修……继续阅读 »
6年前 (2019-06-03) 5358浏览 0评论
11个赞
整体框架划分
整个框架的搭建采用SpringCloud,自然我们的服务网关采用Zuul,客户端访问后台各个服务先通过网关进行初步权限认证(Zuul+jwt),通过网关后在进行其他菜单权限的校验,此处需要提供权限校验的服务。各个服务注册到阿里的Nacos注册中心,由Nacos进行服务注册和服务发现,各个服务的调用采用FeignClien……继续阅读 »
6年前 (2019-06-02) 1777浏览 0评论
0个赞
最近自己做的小项目采用前后端完全分离去做,结果出现 invalid cors request 的跨域问题。之前只是简单了解过跨域,解决方式大部分是采用jsonp的形式。
什么叫做跨域
浏览器为了防止CSRF攻击,避免恶意攻击而带来的风险而采取的同源策略限制。浏览器对于javascript的同源策略的限制,例如a.cn下面的js不能调……继续阅读 »
6年前 (2019-05-24) 1937浏览 0评论
3个赞
保证线程执行顺序:
原题目:
public static void main(String[] args) {
System.out.println("start");
new Thread(()-> System.out.println(1)).start();
S……继续阅读 »
6年前 (2019-05-23) 1177浏览 0评论
0个赞
今天在看HashMap 的时候,看着它继承了AbstractMap并且还实现了Map接口,按道理说只继承AbstractMap就够用了,为什么还要实现Map接口呢。
看了下主要有两种说法:
1.代理(动态代理的反射机制)
第一种是代理,我首先想到的也是这种,因为如果不实现Map接口,我们通过反射机制就无法获取HashMap 是否是Ma……继续阅读 »
6年前 (2019-05-15) 1364浏览 0评论
0个赞
什么是webpack
webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。
&nbs……继续阅读 »
6年前 (2019-04-14) 1335浏览 0评论
0个赞
一、升级npm
npm i -g npm
二、删除package-lock.json
三、删除缓存目录下的所有数据
npm cache clean –force
四、验证缓存数据的有效性和完整性,清理垃圾数据
npm cache verify
五、包问题
包是在windows下发布的,在linux安装错误。
排查方法:看日志,去除相关的包配置,再安装测试
&……继续阅读 »
6年前 (2019-04-11) 1436浏览 0评论
0个赞
React创建组件的两种方式
组件从概念上看就像是函数,它可以接收任意的输入值(称之为“props”),并返回一个需要在页面上展示的React元素。
定义一个组件最简单的方式是使用JavaScript函数:
function Welcome(props) {
return <h1>Hell……继续阅读 »
6年前 (2019-04-05) 1350浏览 0评论
0个赞