背景
Spring Cloud已经不打算集成zuul的2.x版本,并且已基于webflux实现了性能相当不错的Spring Cloud Gateway网关,通过Spring Cloud Gateway 2.x版本与zuul1.x版本做性能对比,发现gateway网关的性能总体表现确实比zuul网关会好一些,从长远考虑,我们线上环境的网关需要从zuul网关切换到Spring Cloud Gateway。下面将给大家介绍一下整个切换过程,与切换过程中遇到了哪些坑。
SpringCloudGateway由于版本过低造成的异常报错
Spring Boot 2.0.0或起初的几个版本 gateway都不太稳定,最好升级到最新的稳定版本。
否则会报以下错误,报错场景:
- 页面请求接口时
postman请求接口时
但是通过命令curl请求接口却是正常的,非常奇怪
1 | 2019-08-13 17:32:50.052 ERROR 8 --- [or-http-epoll-4] .a.w.r.e.DefaultErrorWebExceptionHandler : Failed to handle request [GET http://xxxxxxx/xxxx?productcode=1223&price=12&statecode=1] |