springboot 2.3新特性?(sleep和yield的区别?)
- 2024-01-05 13:48:53
- 79
1.springboot 2.3有哪些新特性?
2.3.0新增功能-优雅关机
目前SpringBoot内置的四个嵌入式Web Servlet (Jetty、Reactor Netty、Tomcat和Undertow)以及响应式和基于Servlet的Web应用都支持优雅关机。
配置宽限期后,当Web服务器关闭时,它将不再允许新的请求,并将等待活动请求的宽限期完成。
演示尝试
1.创建一个新的Spring-web项目并引入SpringBoot的最新版本2.3.0.RELEASE。
& lt属国
& ltgroupid org . spring framework . boot & lt;/groupId
& ltartifactid spring-boot & lt;/artifactId
& lt版本2 . 3 . 0 . release & lt;/版本
& lt/依赖关系
优雅关机要求Tomcat的版本必须是9.0.33或以上,Spring-boot 2 . 3 . 0 . release内置的Tomcat是9.0.35,所以默认支持,不需要再考虑。
2.在application.properties中添加配置
# #打开正常关机,如果没有配置为默认的立即关机,则立即停止。
服务器关闭=正常
# #正常停机宽限期
spring . life cycle . time out-per-shut down-phase = 20秒
3.编写接口代码测试
@GetMapping(睡眠)
公共字符串睡眠(整数超时){
尝试{
log.info(开始睡眠:{},超时);
时间单位。SECONDS.sleep(超时);
log.info(结束睡眠:{},超时);
}catch(异常e){
e . printstacktrace();
}
返回睡眠:+超时;
}
蓝狮登陆开户基本思路是上面的宽限期配置为20秒,然后我们提供一个接口自定义睡眠时间,调用接口两次,分别输入15秒和30秒的参数,请求后立即停止,观察日志输出结果。如果15秒的输入请求能成功输出并显示相应页面,30秒的输入请求会相应异常,那么优雅关机是正常的!
1.Spring Boot 2.3引入了许多新功能。2.该版本的新特性包括:支持Kotlin协调;增加了Spring云服务内网注册的实现方法;引入基于构建的缓存依赖,以支持更好的跨服务缓存;自动配置现在支持自定义条件;在执行机构中增加了关闭模块;介绍了千分尺支架。3.总的来说,Spring Boot 2.3的新特性比之前的版本更加完善,使用更加方便,给程序员带来了更好的开发体验和更大的扩展空间。
2.睡眠和产量有什么区别?
1.线程进入不同的状态。sleep方法使线程进入阻塞状态,yield方法使线程进入就绪状态。
2.是否考虑线程优先级sleep方法不会考虑线程优先级。当一个线程调用sleep方法释放CPU时,所有具有优先级的线程都将有机会获得CPU。yield方法将考虑线程优先级。当一个线程调用sleep方法释放CPU时,具有相同优先级或更高优先级的线程将有机会获得CPU。
3.便携式睡眠法比屈服法具有更好的可移植性。
Python中sleep和yield的主要区别如下:1。sleep是暂停当前线程一段时间,参数是秒。Yield就是把当前线程让给其他线程,让其他线程先执行,如果没有其他线程,就继续执行当前线程。2.sleep一般用来暂停当前线程的执行一段时间,yield用来实现协程和异步编程。3.睡眠不会放弃CPU,只是执行权,会等到时间到了再继续执行。Yield可以放弃CPU,让其他线程执行。如果其他线程没有准备好,它们将继续执行当前线程。