跟踪源码来分析一个 empty file=404 的坑, WebFlux 我要鲨了你呀!
SpringCloudGateway 这东西在现在市面上用的还是不多的,毕竟这框架基于 WebFlux,而WebFlux是 Reactor 模式的架构, 和一般 Java 开发人形成的开发逻辑不太能匹配上, 学习曲线就比较陡峭。 可惜我就偏偏在使用到 SpringCloudGateway 这玩意的时候遇到了个坑, 并且还从Google搜到百度, 从官方文档看到StackOverflow ...
点滴心得,在此分享
SpringCloudGateway 这东西在现在市面上用的还是不多的,毕竟这框架基于 WebFlux,而WebFlux是 Reactor 模式的架构, 和一般 Java 开发人形成的开发逻辑不太能匹配上, 学习曲线就比较陡峭。 可惜我就偏偏在使用到 SpringCloudGateway 这玩意的时候遇到了个坑, 并且还从Google搜到百度, 从官方文档看到StackOverflow ...
因为最近有在 CentOS7 上实战部署了一个 Redis 6节点的主从集群 (三主三从) 所以整理了一份超速部署文档, 任谁看了都可以简单+快速的搞起一个Redis Cluster模式的集群。 话不多说下边直接安排 环境 CentOS 7 Redis 5 首先是 Redis5 安装 安装依赖包 yum -y install gcc automake autoconf libt ...
如果有人新启一个项目需要实现全文检索的功能。 不少人可能第一时间就想到ES, 但ES实在是有点重了。 再怎么说也要吃个2G内存吧。 并且由于ES是个中间件, 使用的话系统复杂度又会有一个指数级的上升, 我认为可预计的需要搜索的数据量级不会达到千万级别的话, 没太大必要。 干脆直接用 PostgreSQL 解决这个问题得了 ...
应用开发时, 有人可能会有机会遇到需要自己制定模板语法的时候。 比如这几个场景: 1、 回复/评论/私聊 系统 的表情、链接 。 这种模块一般都不会采取富文本的形式来保存, 而是自己制定一个模板语法如 [默认表情: 滑稽] 然后在渲染时再渲染成HTML 2、系统消息推送时携带链接, 并不是每个运营人员都会学习HTML 3、 ...
关于数据库字段与实体类中枚举的映射也算不上花活了。在业务开发中还是比较有必要的。 比如一个实体类里有个 state 字段, 里面包含了几种状态如: 初始化、进行中、已完成; 像这种类似于一个对象的状态都是可以被枚举出来的, 同时也可能携带一定的业务逻辑与状态之间切换的规则。 此时如果直接使用数字类型/字 ...
虽说现在连 SpringBoot 都抛弃 Maven 开始使用 Gradle 来构建了,可关于Gradle这个工具呢在用的人还是挺少的,在网上搜的资料也大多还都是基于安卓项目的配置。 当然 Java 的也会有, 不过基本上都是些很基础的单个项目的构建法,复杂的很少。而一个真实的企业级应用中项目构建会涉及到的点还是比较多的,网上搜 ...
关于限流这种机制呢也算是老生常谈了, 毕竟在业务开发中实在是很多地方都会用到。比如第三方接口调用限制、并发访问数控制等… 而具体的限流算法在单机中很容易就可以实现, 在java的世界里既有开源库Guava的RateLimiter, 也有JUC中自带的 Semaphore、BlockingQueue等。拿来随手就可以使用。 &nbs ...
关于OAuth2协议, 相信有一定开发经验的开发者也不陌生了。 毕竟只要涉及到 多端应用、第三方登陆、API接口调用 总会接触到这个概念。 这里就主要探讨一下在微服务体系中使用 OAuth2 协议实现鉴权方案时,如何最大化减少网络通信次数,从而提升系统的响应速度。 准备讨论的架构是我个人对于 OAuth2 这个协议在微 ...
当网站业务快速发展,数据量不断地上升,那么不可避免的底层DB压力会越来越大。 一般最开始都可以靠更换硬件来解决,加钱上更好的机子是最简单的方案,但这只限于你的增加的硬件费用算起来相对经济以及确实单机能顶得住业务量来说的。 但是在你业务激增的情况下,数据和访问量的增长势必会突破单机的极限,即单 ...
最近在自己搭一个使用 SpringSecutiryOAuth2 的认证服务器, 这里的接口基于 SpringMVC, 而资源服务器是 SpringCloudGateway 建立的网关层,实现是 WebFlux。 目的是为了在网关层做所有的鉴权操作。 其实一切都还好,ajax 登陆、OAuth2密码模式的 token 获取、token刷新等 都有序进行中。 认证的整个流 ...