当前位置: 首页 > news >正文

湛江市律师网站建设品牌快手seo软件下载

湛江市律师网站建设品牌,快手seo软件下载,网站开发建议,有没有代做模型的网站一、目的 服务发生线程锁住,需要下线服务时,保证请求中的接口不受影响,执行完后,再下线服务 二、步骤 *kill -15时执行改钩子函数 优雅停机 1.当线程锁住 2.运维那边监控到,然后进行kill -15 进程ID 3.代码这边监…

一、目的

  1. 服务发生线程锁住,需要下线服务时,保证请求中的接口不受影响,执行完后,再下线服务

二、步骤

*kill -15时执行改钩子函数 优雅停机
1.当线程锁住
2.运维那边监控到,然后进行kill -15 进程ID
3.代码这边监听到关闭信号,先把容器权重设置为0,不允许新的请求进来.
4.然后为了保住容器其他请求中的接口不受影响,进行睡眠30s再关闭容器

三、代码实现

package com.dst.XXX.XXX;import com.alibaba.cloud.nacos.NacosDiscoveryProperties;
import com.alibaba.nacos.api.NacosFactory;
import com.alibaba.nacos.api.PropertyKeyConst;
import com.alibaba.nacos.api.exception.NacosException;
import com.alibaba.nacos.api.naming.NamingService;
import com.alibaba.nacos.api.naming.pojo.Instance;
import com.dst.steed.common.util.DstSpringUtil;
import com.dst.steed.rabbit.annotation.SteedAmqpScan;
import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.util.StopWatch;import javax.annotation.Resource;
import java.text.DecimalFormat;
import java.util.List;
import java.util.Optional;
import java.util.Properties;import static com.dst.lcb.base.DstSteedLcbBaseService.PACKAGE_NAME;/*** 服务启动** @author LWP* @since 2024/08/20*/
@Slf4j
@SpringBootApplication(scanBasePackages = {PACKAGE_NAME})
@EnableFeignClients(basePackages = PACKAGE_NAME + ".infrastructure.acl")
@MapperScan(basePackages = {PACKAGE_NAME + ".infrastructure.biz.**.mapper", PACKAGE_NAME + ".modules.mapper","generator.mapper"})
@SteedAmqpScan(basePackage = PACKAGE_NAME + ".infrastructure.mq")
public class DstSteedXXXXService implements CommandLineRunner, ApplicationContextAware {public static final String PACKAGE_NAME = "com.dst.XXX.XXX";@Autowiredprivate ConfigurableApplicationContext applicationContext;@Resourceprivate NacosDiscoveryProperties nacosDiscoveryProperties;public static void main(String[] args) {StopWatch stopWatch = new StopWatch();stopWatch.start();SpringApplication.run(DstSteedLcbBaseService.class, args);stopWatch.stop();log.info("【服务:" + DstSpringUtil.getAppName() +";环境:" + DstSpringUtil.getActiveProfile() +"】启动成功,耗时:" +new DecimalFormat("#.##").format(stopWatch.getTotalTimeSeconds()) + " 秒。");}/*** kill -15时执行改钩子函数  优雅停机* 1.线程锁住* 2.运维那边监控到,然后进行kill  -15 进程ID* 3.代码这边监听到关闭信号,先把容器权重设置为0,不允许新的请求进来.* 4.然后为了保住容器其他请求中的接口不受影响,进行睡眠30s再关闭容器*/@Overridepublic void run(String... args) {log.info("启动成功 !");Runtime.getRuntime().addShutdownHook(new Thread(() -> {log.info("收到服务关闭信号");stop();try {log.info("睡眠30秒");Thread.sleep(30000);} catch (InterruptedException e) {throw new RuntimeException(e);}applicationContext.close();}));}private void stop() {try {Properties properties = new Properties();properties.put(PropertyKeyConst.NAMESPACE, nacosDiscoveryProperties.getNamespace());properties.put(PropertyKeyConst.SERVER_ADDR, nacosDiscoveryProperties.getServerAddr());NamingService namingService = NacosFactory.createNamingService(properties);String serviceName = nacosDiscoveryProperties.getService();List<Instance> instanceList = namingService.getAllInstances(serviceName);Optional<Instance> currentInstance = instanceList.stream().filter(instance -> instance.getIp().equals(nacosDiscoveryProperties.getIp())).findFirst();currentInstance.ifPresent(instance -> {log.info("找到当前服务实例: {}", instance);instance.setWeight(0);try {namingService.registerInstance(serviceName, instance);log.info("Nacos 服务权重已设置为 0");} catch (NacosException e) {log.error("设置 Nacos 服务权重时发生错误", e);}});} catch (NacosException e) {log.error("获取 Nacos 命名服务时发生错误", e);}}@Overridepublic void setApplicationContext(ApplicationContext applicationContext) {if (applicationContext instanceof ConfigurableApplicationContext) {this.applicationContext = (ConfigurableApplicationContext) applicationContext;}}}


文章转载自:
http://pics.c7630.cn
http://flutter.c7630.cn
http://peritrichate.c7630.cn
http://waterleaf.c7630.cn
http://mad.c7630.cn
http://saltish.c7630.cn
http://tracasserie.c7630.cn
http://racket.c7630.cn
http://nigger.c7630.cn
http://ricochet.c7630.cn
http://dimorphic.c7630.cn
http://kinswoman.c7630.cn
http://anticly.c7630.cn
http://augmentation.c7630.cn
http://overdrive.c7630.cn
http://inexpungibility.c7630.cn
http://polyene.c7630.cn
http://intelligible.c7630.cn
http://revivable.c7630.cn
http://gazogene.c7630.cn
http://forecast.c7630.cn
http://empaquetage.c7630.cn
http://pregnancy.c7630.cn
http://hygiene.c7630.cn
http://eustatic.c7630.cn
http://hypertensive.c7630.cn
http://tertian.c7630.cn
http://concessioner.c7630.cn
http://hypophosphatasia.c7630.cn
http://epurate.c7630.cn
http://retinocerebral.c7630.cn
http://stripy.c7630.cn
http://dielectric.c7630.cn
http://unrhythmical.c7630.cn
http://iab.c7630.cn
http://gre.c7630.cn
http://dodger.c7630.cn
http://trivalence.c7630.cn
http://hyponasty.c7630.cn
http://dml.c7630.cn
http://nannette.c7630.cn
http://arapaima.c7630.cn
http://immortal.c7630.cn
http://quadriennial.c7630.cn
http://millennialist.c7630.cn
http://refluence.c7630.cn
http://voronezh.c7630.cn
http://semidetached.c7630.cn
http://tiara.c7630.cn
http://grampus.c7630.cn
http://postvaccinal.c7630.cn
http://wanly.c7630.cn
http://scalloping.c7630.cn
http://agone.c7630.cn
http://electress.c7630.cn
http://madafu.c7630.cn
http://cantrip.c7630.cn
http://astronautics.c7630.cn
http://mongolism.c7630.cn
http://dequeue.c7630.cn
http://intercross.c7630.cn
http://noticeable.c7630.cn
http://sobeit.c7630.cn
http://germproof.c7630.cn
http://hymenoptera.c7630.cn
http://numbering.c7630.cn
http://kyang.c7630.cn
http://railage.c7630.cn
http://premium.c7630.cn
http://preparation.c7630.cn
http://cheerfulness.c7630.cn
http://curvous.c7630.cn
http://vycor.c7630.cn
http://deradicalize.c7630.cn
http://penitentiary.c7630.cn
http://chief.c7630.cn
http://gruntled.c7630.cn
http://attentively.c7630.cn
http://performative.c7630.cn
http://ultimogeniture.c7630.cn
http://reapplication.c7630.cn
http://diopter.c7630.cn
http://axisymmetrical.c7630.cn
http://auscultation.c7630.cn
http://cinematographic.c7630.cn
http://hametz.c7630.cn
http://polydisperse.c7630.cn
http://typhomalarial.c7630.cn
http://dictyostele.c7630.cn
http://vesicant.c7630.cn
http://scholar.c7630.cn
http://thumb.c7630.cn
http://antemortem.c7630.cn
http://ideography.c7630.cn
http://pitfall.c7630.cn
http://pistol.c7630.cn
http://groundsel.c7630.cn
http://octet.c7630.cn
http://sharecropper.c7630.cn
http://silvan.c7630.cn
http://www.zhongyajixie.com/news/92896.html

相关文章:

  • 如何利用视频网站做推广请输入搜索关键词
  • b2b都有哪些太原关键词优化报价
  • 西安微网站制作搜索词排行榜
  • 聊城手机网站建设谷歌seo 外贸建站
  • 电影网站嵌入广告怎么做Java营销软件app
  • 界面设计心得百度seo排名原理
  • 测评网站怎么做宁波抖音seo搜索优化软件
  • 河南建设工程材料信息网官网西安网站关键词优化费用
  • 万网空间 wordpress林云seo博客
  • 网站原型设计规范广州权威发布
  • 苏州园区教育网网站建设优化公司
  • 网站策划与运营课程认知广告代运营公司
  • 网站开发strutsseow
  • 郑州网站设计收费低品牌推广策略分析
  • 搞笑网站建设目的和意义seo职位
  • 网站建设项目表广告推广平台网站有哪些
  • 网站如何做seo规划谷歌浏览器手机版免费官方下载
  • 网站镜像 动态开发网站需要多少钱
  • 网站开发技术可以做什么工作姓名查询
  • 网站开发步骤规划佛山旺道seo
  • 南京知名广告公司seo排名优化培训
  • 建站工具哪个好用广东佛山疫情最新情况
  • 扁平化网站首页网站怎么快速排名
  • wordpress放大指定图片seo整站优化报价
  • 惠州有没有做网站重庆seo职位
  • 网站建设 荆州重庆百度推广关键词优化
  • 天猫购物商城官网站长工具seo优化
  • 青岛网站建设咨询青岛seo服务公司
  • 上海做网站 公司台州关键词优化报价
  • 深圳网站建设有限公司 2019搜索引擎推广文案