06 2021 档案

摘要:简介 什么是nginx? Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强。 主要功能 nginx主要有三大功能:反向代理、负载均衡、动静分离。 反向代理 反向代理(reverse pro 阅读全文
posted @ 2021-06-27 21:57 bGpi 阅读(1018) 评论(0) 推荐(0)
摘要:介绍 在SpringBoot中,拦截器HandlerInterceptor 的功能跟过滤器类似,但是提供更精细的的控制能力:在request被响应之前、request被响应之后、视图渲染之前以及request全部结束之后。我们不能通过拦截器修改request内容,但是可以通过抛出异常(或者返回fal 阅读全文
posted @ 2021-06-25 23:03 bGpi 阅读(403) 评论(0) 推荐(0)
摘要:作用 在SpringBoot中,当需要获取到配置文件数据时,除了可以用Spring自带的@Value注解外,SpringBoot提供了一种更加方便的方式:@ConfigurationProperties。只要在bean上添加上这个注解,指定好配置文件的前缀,那么对应的配置文件数据就会自动填充到bea 阅读全文
posted @ 2021-06-23 23:39 bGpi 阅读(1288) 评论(0) 推荐(0)
摘要:一、创建异步对象 CompletableFuture提供了四个静态方法来创建一个异步操作。 //使用默认的线程池来回调 public static CompletableFuture<Void> runAsync(Runnable runnable) {...} //该方法指定自定义的线程池exec 阅读全文
posted @ 2021-06-22 22:28 bGpi 阅读(91) 评论(0) 推荐(0)
摘要:Java中的Class ThreadPoolExecutor public class ThreadPoolExecutor extends AbstractExecutorService 该类是线程池的核心类,使用线程池时就是实例化该类的过程,这个类提供了4个构造方法: //创建一个新的 Thre 阅读全文
posted @ 2021-06-20 18:33 bGpi 阅读(227) 评论(0) 推荐(0)
摘要:背景 最近接到一个项目任务,需要实现一个商品的定时上下架的功能,且可以修改这个定时任务,还有默认销毁的机制存在,即如果对一个商品设置了定时上架的任务,在未执行前手动上架,则之前设置的定时任务自动失效,这对使用PHP来解决还是比较棘手的。 现状分析 一种可以使用暴力的方式,即对于请求的定时任务设置线程 阅读全文
posted @ 2021-06-20 00:00 bGpi 阅读(427) 评论(0) 推荐(0)
摘要:背景 最近在做项目架构重构的工作,主要是将之前的php框架迁移到java框架里来,需要对之前的接口做兼容,因为之前接口访问对参数做了编码,需要在网关中做统一处理,且对于所有访问的请求做日志记录,解决方案就用到写全局过滤器的方式来处理。其中对于请求数据的流需要多次获取并修改,但是SpringBoot版 阅读全文
posted @ 2021-06-19 23:02 bGpi 阅读(500) 评论(0) 推荐(0)
摘要:背景 在项目开发中,经常会遇到需要存储不定长的对象数组,如上传一组图片、添加一道题目等等,这个时候在数据库中存储一般需要用到存储长度较大的blob类型,在java的实体类中对应blob类型的是byte数组。 思路 为了存储的数据格式兼容性更高,我采用的是借助json的方式来处理,即存储前,我将对象整 阅读全文
posted @ 2021-06-17 23:49 bGpi 阅读(3741) 评论(0) 推荐(0)
摘要:背景 SpringBoot中设置跨域的方式也有很多,常见的可以参考网上设置的方式。我在实际开发中,需要用到gateway的全局过滤器做参数处理,遇到了跨域失败的情况,因为我使用的是gateway做网关处理,所有的请求都会经过gateway进行分发,因此我直接单独在gateway的配置文件中进行的跨域 阅读全文
posted @ 2021-06-17 23:05 bGpi 阅读(1385) 评论(0) 推荐(0)