全局过滤器作用于所有的路由,不需要单独配置,我们可以用它来实现很多统一化处理的业务需求,比如权限认证,IP访问限制等等。官方文档:https://docs.spring.io/spring-cloud-gateway/docs/current/reference/html/#gatewayfilter-factories 基于官方我们编写全局过滤器代码package cn.itcast.gateway; import org.springframework.cloud.gateway.filter.GatewayFilterChain; import&nb...阅读全文>>
Spring Cloud Gateway路由匹配是Spring WebFlux基础功能的一部分,在Spring Cloud Gateway中内置了很多路由断言工厂类。不同的断言工厂类针对HTTP请求的不同属性。多个断言工厂类可以使用逻辑“and”进行组合使用。官方文档:https://spring.io/projects/spring-cloud-gateway https://docs.spring.io/spring-cloud-gateway/docs/current/reference/html/#the-after-route-predicate-factory ...阅读全文>>
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步服务、组服务等。zookeeper安装单机模式http://www.javacui.com/opensource/445.html 解压压缩包,并拷贝到指定目录tar -xvf apache-zookeeper-3.6.3-bin.tar.gz cp -r apache-zookeeper-3.6.3-bin...阅读全文>>
分布式锁服务宕机,ZooKeeper一般是以集群部署,如果出现ZooKeeper宕机,那么只要当前正常的服务器超过集群的半数,依然可以正常提供服务持有锁资源服务器宕机,假如一台服务器获取锁之后就宕机了, 那么就会导致其他服务器无法再获取该锁. 就会造成死锁问题, 在Curator中, 锁的信息都是保存在临时节点上, 如果持有锁资源的服务器宕机, 那么ZooKeeper 就会移除它的信息, 这时其他服务器就能进行获取锁操作。zookeeper安装单机模式http://www.javacui.com/opensource/445.html SpringBoot集成Curator实现Zoo...阅读全文>>
Zookeeper是一个Apache开源的分布式的应用,为系统架构提供协调服务。从设计模式角度来审视:该组件是一个基于观察者模式设计的框架,负责存储和管理数据,接受观察者的注册,一旦数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的观察者做出相应的反应,从而实现集群中类似Master/Slave管理模式。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。zookeeper安装单机模式http://www.javacui.com/opensource/445.html SpringBoot集成C...阅读全文>>
Zookeeper是一个Apache开源的分布式的应用,为系统架构提供协调服务。从设计模式角度来审视:该组件是一个基于观察者模式设计的框架,负责存储和管理数据,接受观察者的注册,一旦数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的观察者做出相应的反应,从而实现集群中类似Master/Slave管理模式。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。zookeeper安装单机模式http://www.javacui.com/opensource/445.html 官网https://cur...阅读全文>>
HTTP Referer是Header的一部分,当浏览器向Web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器借此可以获得一些信息用于处理。server { listen 80; server_name localhost; access_log logs/access.log main; location ~ .*\.(jpg|gif|png)$ { v...阅读全文>>
W3C标准:CROS,全称是跨域资源共享 (Cross-origin resource sharing),它的提出就是为了解决跨域请求的。跨域资源共享(CORS)标准新增了一组 HTTP 首部字段,允许服务器声明哪些源站有权限访问哪些资源。另外,规范要求,对那些可能对服务器数据产生副作用的HTTP 请求方法(特别是 GET 以外的 HTTP 请求,或者搭配某些 MIME 类型的 POST 请求),浏览器必须首先使用 OPTIONS 方法发起一个预检请求(preflight request),从而获知服务端是否允许该跨域请求。服务器确认允许之后,才发起实际的 HTTP 请求。在预检请求的返回中,...阅读全文>>
Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。之前写过Nginx启动关闭重启用脚本实现:http://www.javacui.com/tool/609.html ,下面是把Nginx服务注册到系统中,达到可以使用systemctl来管理的目的。vim /usr/lib/systemd/system/nginx.service编辑内容:[Unit] Description=nginx web serv...阅读全文>>
Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。Centos上安装Nginxhttp://www.javacui.com/service/493.html Nginx日志格式配置http://www.javacui.com/tool/610.html #定义Nginx运行的用户和用户组 user www www; # 是否后台运行 # daemon on; #...阅读全文>>