How to prevent IIS from idling .NetCore API for Hangfire












0














I have a published .NET Core 2.0 API in production hosted through IIS.
This API has a hangfire dashboard and a single recurring job running through it.



This API exposes a service layer to us developers for jobs that we need to perform on certain databases so it is not always being hit with traffic - perhaps only occasionally when a dev hits an endpoint. The Recurring job runs hourly.



My Problem: Once the site receives no traffic for a while IIS idles the app effectively killing my hangfire job - I know this because in the dashboard when I click servers it says 0. As soon as I hit an endpoint on the API it spins back up.



What I've tried so far: In IIS Set startmode to AlwaysRunning and set the idle timeout to 0 for that specific application pool.



I know this is not working because every morning when I come into the office I check Kibana for logs that should be constant throughout the night due to the recurring hourly job but unfortunately nothing happens. As soon as I hit the API everything starts working again and the job queues.










share|improve this question
























  • Thread on timeouts with dotnet core github.com/aspnet/Hosting/issues/522
    – saj
    Nov 23 '18 at 13:44
















0














I have a published .NET Core 2.0 API in production hosted through IIS.
This API has a hangfire dashboard and a single recurring job running through it.



This API exposes a service layer to us developers for jobs that we need to perform on certain databases so it is not always being hit with traffic - perhaps only occasionally when a dev hits an endpoint. The Recurring job runs hourly.



My Problem: Once the site receives no traffic for a while IIS idles the app effectively killing my hangfire job - I know this because in the dashboard when I click servers it says 0. As soon as I hit an endpoint on the API it spins back up.



What I've tried so far: In IIS Set startmode to AlwaysRunning and set the idle timeout to 0 for that specific application pool.



I know this is not working because every morning when I come into the office I check Kibana for logs that should be constant throughout the night due to the recurring hourly job but unfortunately nothing happens. As soon as I hit the API everything starts working again and the job queues.










share|improve this question
























  • Thread on timeouts with dotnet core github.com/aspnet/Hosting/issues/522
    – saj
    Nov 23 '18 at 13:44














0












0








0







I have a published .NET Core 2.0 API in production hosted through IIS.
This API has a hangfire dashboard and a single recurring job running through it.



This API exposes a service layer to us developers for jobs that we need to perform on certain databases so it is not always being hit with traffic - perhaps only occasionally when a dev hits an endpoint. The Recurring job runs hourly.



My Problem: Once the site receives no traffic for a while IIS idles the app effectively killing my hangfire job - I know this because in the dashboard when I click servers it says 0. As soon as I hit an endpoint on the API it spins back up.



What I've tried so far: In IIS Set startmode to AlwaysRunning and set the idle timeout to 0 for that specific application pool.



I know this is not working because every morning when I come into the office I check Kibana for logs that should be constant throughout the night due to the recurring hourly job but unfortunately nothing happens. As soon as I hit the API everything starts working again and the job queues.










share|improve this question















I have a published .NET Core 2.0 API in production hosted through IIS.
This API has a hangfire dashboard and a single recurring job running through it.



This API exposes a service layer to us developers for jobs that we need to perform on certain databases so it is not always being hit with traffic - perhaps only occasionally when a dev hits an endpoint. The Recurring job runs hourly.



My Problem: Once the site receives no traffic for a while IIS idles the app effectively killing my hangfire job - I know this because in the dashboard when I click servers it says 0. As soon as I hit an endpoint on the API it spins back up.



What I've tried so far: In IIS Set startmode to AlwaysRunning and set the idle timeout to 0 for that specific application pool.



I know this is not working because every morning when I come into the office I check Kibana for logs that should be constant throughout the night due to the recurring hourly job but unfortunately nothing happens. As soon as I hit the API everything starts working again and the job queues.







iis .net-core asp.net-core-webapi hangfire






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 23 '18 at 8:25

























asked Nov 23 '18 at 8:19









cl0ud

32612




32612












  • Thread on timeouts with dotnet core github.com/aspnet/Hosting/issues/522
    – saj
    Nov 23 '18 at 13:44


















  • Thread on timeouts with dotnet core github.com/aspnet/Hosting/issues/522
    – saj
    Nov 23 '18 at 13:44
















Thread on timeouts with dotnet core github.com/aspnet/Hosting/issues/522
– saj
Nov 23 '18 at 13:44




Thread on timeouts with dotnet core github.com/aspnet/Hosting/issues/522
– saj
Nov 23 '18 at 13:44












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53442912%2fhow-to-prevent-iis-from-idling-netcore-api-for-hangfire%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53442912%2fhow-to-prevent-iis-from-idling-netcore-api-for-hangfire%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

What visual should I use to simply compare current year value vs last year in Power BI desktop

How to ignore python UserWarning in pytest?

Alexandru Averescu