IIS部署的应用无法自动注册到Nacos
问题描述:
自己开发的某系统后台API接入nacos,在IIS上部署无法自动注册到nacos服务列表中。其根本原因是网站处于休眠状态,当某请求访问该网站时,网站被激活,nacos注册成功。
但这块有个问题,当网站运行一段时间后,因为IIS程序池的回收导致网站在nacos中掉线。
解决方案:
以下内容出自:https://my.oschina.net/u/267603/blog/3191151
原理说明:
IIS应用初始化会在网站第一次创建后或者对应网站的应用程序池回收后,自动开启新程序池,并启动网站初始化,模拟一次正常请求,使网站一直处于在线状态。配置说明:
(1)设置启用应用程序池(AlwaysRunning):保证应用程序池在第一次创建或者被回收后,能自动再次重启运行。
(2)设置启用网站程序预加载(true):保证程序池在启动过后,网站能响应预加载动作。
(3)配置网站默认预加载路径:保证程序在程序池启动后,网站预加载过程中,能快速编译程序并进驻内存,保证请求快速响应。
本文以IIS8.5,Windows Server 2012R2做为案例
- 安装IIS应用程序初始化功能
如下图: 
- 设置应用程序池 启动模式为“Always runing”
如下图,操作方法:应用程序池 -> 选中网站对应程序池 -> 点击高级设置 ->设置启动模式为 AlwaysRunning
- 设置网站预加载
如下图: 操作方法:选中网站 ->点击高级设置->设置预加载已启用为True 。
- 设置配置编辑器,设置默认预加载请求
打开配置编辑器,如下图:
在左上角配置节点选择system.webServer/applicationInitialization,其他配置如红圈中 ,如下图:
在集合中添加一个初始化请求地址(用于IIS初始化默认请求地址),添加完成后,点击配置界面右侧的”应用“按钮,并重启应用程序池和网站,如下图:


还可以在 Web.config 配置文件中设置以上属性:<system.webServer>
<applicationInitialization doAppInitAfterRestart="true">
<add initializationPage="api/UsersManage/Login?username=×××××q&password=111" hostName="http://localhost:2002/" />
</applicationInitialization>
</system.webServer>备注:此流程可以借助第三方工具或者服务模拟网站请求达到相同目的
IIS部署的应用无法自动注册到Nacos的更多相关文章
- SpringBoot部署到外部Tomcat无法注册到Nacos服务端
事情经过 近期做一个项目投标演示(POC)环境支持,需要集成Nacos服务端.考虑到现有项目中已经有了Nacos相关依赖,那还不简单?新建个服务端,配置几下重启不就搞定了吗?然而事情远没有想得这么简单 ...
- SpringCloud War 包部署导致服务未正常注册到 Nacos 问题
转载地址:https://blog.csdn.net/qq_28379809/article/details/103773149
- 从 HTTP 到 HTTPS - IIS 部署免费 HTTPS
这篇文章首发于我的个人网站:听说 - https://tasaid.com/,建议在我的个人网站阅读,拥有更好的阅读体验. 这篇文章与 博客园 和 Segmentfault 共享. 前端开发QQ群:3 ...
- 自动注册 IIS6 的 MIME 类型
原文 自动注册 IIS6 的 MIME 类型 由于IIS5和IIS6有很多的MIME类型没有设置,其中还包括了FLV(video/x-flv),上篇文章描述了制作<IIS6 自动安装>,而 ...
- 打通版微社区(4):微信第三方服务部署——JSP的IIS部署
写在前面: 本机环境2008R2.tomcat8 网上搜了很多JSP的IIS部署,内容大部分是相近的,这些文章最早出现在2012的样子.大概的原理就是通过ISAPI方式对IIS进行扩展(这个扩展是to ...
- 通过IIS部署Flask项目
本文主要介绍在Windows Server 2012R2上通过IIS部署Flask项目的过程,以及对TTFB延迟大问题的思考.关于如何申请云服务器,注册(子)域名,备案,开放云服务器端口,获取SS ...
- IIS部署站点相关经验总结
IIS部署站点相关经验总结 1.IIS和.net4.0安装是有先后顺序的,应该先安装.net framework 4.0,再安装IIS.如果按相反顺序安装的话,IIS中看不到4.0相关的东西,那么只能 ...
- C#实现Dll(OCX)控件自动注册的两种方法 网上找的 然后 自己试了试 还是可以用的
尽管MS为我们提供了丰富的.net framework库,我们的程序C#开发带来了极大的便利,但是有时候,一些特定功能的控件库还是需要由第三方提供或是自己编写.当需要用到Dll引用的时候,我们通常会通 ...
- iis 部署 webapi2.0 访问报错解决
本机安装的VS2013 开发环境,在IIS部署WebApi2.0时,应用程序池并没有.NET4.5的选项. 网上搜索一番得知: 1..NET 4.5本质上还是4.0,属于递增式的更新,所以对IIS 来 ...
- IIS部署WCF
IIS部署WCF [转载自——http://www.cnblogs.com/starksoft/p/4992059.html] 1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协议的服 ...
随机推荐
- day30:TCP&UDP:socket
目录 1.TCP协议和UDP协议 2.什么是socket? 3.socket正文 1.TCP基本语法 2.TCP循环发消息 3.UDP基本语法 4.UDP循环发消息 4.黏包 5.解决黏包问题 1.解 ...
- 这样也行,在lambda表达式中优雅的处理checked exception
目录 简介 lambda表达式中的checked exception lambda中的unchecked exception 对lambda的最终改造 总结 简介 最近发现很多小伙伴还不知道如何在la ...
- YII2.0的文件上传, 并把文件名称重新编译
/** *@Action 文件上传示例 *@这里我们演示的是一个YII2.0的文件上传, 并把文件名称重新编译 *@我们上传的是一个叫 photo 的jpg和png格式的文件 */ Controlle ...
- ROS用hector创建地图
ROS用hector创建地图 连接小车 ssh clbrobot@clbrobot 激活树莓派 roslaunch clbrobot bringup.launch 打开hector_slam 重新开终 ...
- DRF的Serializer组件(源码分析)
DRF的Serializer组件(源码分析) 1. 数据校验 drf中为我们提供了Serializer,他主要有两大功能: 对请求数据校验(底层调用Django的Form和ModelForm) 对数据 ...
- Finalshell
使用VMware可以得到Linux虚拟机,但是在VMware中操作Linux的命令行页面不太方便 1.内容的复制.粘贴跨越VMware不方便 2.文件的上传.下载跨越VMware不方便 3.也就是和L ...
- 2022-06-26:以下golang代码输出什么?A:true;B:false;C:编译错误。 package main import “fmt“ func main() { type
2022-06-26:以下golang代码输出什么?A:true:B:false:C:编译错误. package main import "fmt" func main() { t ...
- 2021-06-03:布尔运算。给定一个布尔表达式和一个期望的布尔结果 result,布尔表达式由 0 (false)、1 (true)、& (AND)、 | (OR) 和 ^ (XOR) 符号组成。
2021-06-03:布尔运算.给定一个布尔表达式和一个期望的布尔结果 result,布尔表达式由 0 (false).1 (true).& (AND). | (OR) 和 ^ (XOR) 符 ...
- 2021-10-19:缺失的区间。给定一个排序的整数数组 nums ,其中元素的范围在 闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间。力扣163。
2021-10-19:缺失的区间.给定一个排序的整数数组 nums ,其中元素的范围在 闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间.力扣163. 福大大 答案2021-1 ...
- Prompt learning 教学[技巧篇]:通过增加示例、引导词、特殊符号指令等方式让chatgpt输出更好的答案
Prompt learning 教学[技巧篇]:通过增加示例.引导词.特殊符号指令等方式让chatgpt输出更好的答案 技巧1:To Do and Not To Do 在问答场景里,为了让 AI 回答 ...