{"id":62444,"date":"2025-03-15T15:32:13","date_gmt":"2025-03-15T14:32:13","guid":{"rendered":"https:\/\/qualityminds.com\/?p=62444"},"modified":"2025-04-15T10:20:14","modified_gmt":"2025-04-15T08:20:14","slug":"query-of-death","status":"publish","type":"post","link":"https:\/\/qualityminds.com\/de\/query-of-death\/","title":{"rendered":"\u201eQuery of Death\u201c &#8211; Wenn eine einzige Query deine gesamte Anwendung einfriert"},"content":{"rendered":"\n<section id=\"block-66794739c40b0\"  class=\"hero-section template11\">\n\t<div class=\"bg\">\n\t\t\t<\/div>\n\t<div class=\"container\">\n\t\t<div class=\"hero-section__wrapper flex flex-wrap justify-between\">\n\t\t\t<div class=\"hero-section__description\">\n\t\t\t\t<div class=\"text-element-wrapper\">\n\t\t\t\t\t<div class=\"text-element\">\n\n<h1 class=\"wp-block-heading has-text-align-left\"><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-theme-secondary-color\">\u201eQuery of Death\u201c <\/mark>&#8211; Wenn eine einzige Query deine gesamte Anwendung einfriert<\/strong><\/h1>\n\n<\/div>\n\t\t\t\t<\/div>\n\n\t\t\t\t\t\t\t<\/div>\n\n\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t<div class=\"hero-section__img\">\n\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"408\" height=\"409\" src=\"https:\/\/qualityminds.com\/wp-content\/uploads\/2025\/03\/Vorschaubild-SRE-Hauptposts-100.jpg\" class=\"attachment-full size-full\" alt=\"\" loading=\"eager\" srcset=\"https:\/\/qualityminds.com\/wp-content\/uploads\/2025\/03\/Vorschaubild-SRE-Hauptposts-100.jpg 408w, https:\/\/qualityminds.com\/wp-content\/uploads\/2025\/03\/Vorschaubild-SRE-Hauptposts-100-300x300.jpg 300w, https:\/\/qualityminds.com\/wp-content\/uploads\/2025\/03\/Vorschaubild-SRE-Hauptposts-100-150x150.jpg 150w\" sizes=\"(max-width: 408px) 100vw, 408px\" \/>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"social\">\n\t\t<div class=\"container\">\n\t\t\t<div class=\"social-wrapper flex items-center\">\n\t\t\t\tFolge uns\t\t\t\t\t<ul class=\"no-list no-margin social-list\">\n\t\t\t\t\t<li>\n\t\t\t\t<a href=\"https:\/\/www.linkedin.com\/company\/qualityminds-gmbh\/\" target=\"_blank\" aria-label=\"share on social media\" rel=\"noopener\">\n\t\t\t\t\t<img decoding=\"async\" width=\"29\" height=\"29\" src=\"https:\/\/qualityminds.com\/wp-content\/uploads\/2024\/06\/linkedin.svg\" class=\"attachment-full size-full\" alt=\"\" loading=\"lazy\" \/>\t\t\t\t<\/a>\n\t\t\t<\/li>\n\t\t\t\t\t<li>\n\t\t\t\t<a href=\"https:\/\/www.facebook.com\/QualityMindsGmbH\" target=\"_blank\" aria-label=\"share on social media\" rel=\"noopener\">\n\t\t\t\t\t<img decoding=\"async\" width=\"29\" height=\"29\" src=\"https:\/\/qualityminds.com\/wp-content\/uploads\/2024\/06\/facebook.svg\" class=\"attachment-full size-full\" alt=\"\" loading=\"lazy\" \/>\t\t\t\t<\/a>\n\t\t\t<\/li>\n\t\t\t\t\t<li>\n\t\t\t\t<a href=\"https:\/\/www.xing.com\/pages\/qualitymindsgmbh\" target=\"_blank\" aria-label=\"share on social media\" rel=\"noopener\">\n\t\t\t\t\t<img decoding=\"async\" width=\"29\" height=\"29\" src=\"https:\/\/qualityminds.com\/wp-content\/uploads\/2024\/09\/xing_icon.svg\" class=\"attachment-full size-full\" alt=\"\" loading=\"lazy\" \/>\t\t\t\t<\/a>\n\t\t\t<\/li>\n\t\t\t<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/section>\n\n\n\t<section id=\"block-667949a958bf7\"  class=\"single-post-section\">\n\t\t<div class=\"container\">\n\t\t\t<div class=\"content\">\n\t\t\t\t<div class=\"single-post-main\">\n\t\t\t\t\t<div class=\"text-element\">\n\n<p class=\"wp-block-paragraph\">Dieser Problemtyp triff auf, wenn eine fehlerhafte Abfrage wiederholt ausgef\u00fchrt wird und dabei Ressourcen verbraucht oder sogar die Anwendung zum Absturz bringt. Um das Problem zu l\u00f6sen, kann die Abfrage blockiert oder umgeleitet werden, bevor sie das System erreicht. Auch Rate Limiting oder Circuit Breaker helfen, solche Vorf\u00e4lle zu verhindern. Dieses Problem, bekannt als \u201eQuery of Death\u201c, zeigt, wie wichtig es ist, sch\u00e4dliche Abfragen fr\u00fchzeitig zu stoppen, um die Stabilit\u00e4t des Systems zu gew\u00e4hrleisten.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong><strong><strong><strong><strong><strong><strong><strong>Eine verlorene Nacht<\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Stell dir vor, du bist sp\u00e4t in der Nacht im Bereitschaftsdienst, und pl\u00f6tzlich reagiert deine Anwendung nicht mehr. Die Monitoring-Tools zeigen einen extremen Anstieg der Ressourcennutzung. Nach einer genaueren Analyse der Logs st\u00f6\u00dft du auf den \u00dcbelt\u00e4ter: Eine einzelne Datenbankabfrage wird ununterbrochen ausgef\u00fchrt \u2013 wie ein schlechter Horrorfilm in Endlosschleife. Ob aufgrund eines Bugs, einer schlecht geschriebenen Anfrage oder schlicht aus Pech\u2013 diese eine Abfrage beansprucht die gesamte CPU und den Arbeitsspeicher und bringt das System zum Erliegen. Das Schlimmste daran? Jedes Mal, wenn sie erneut ausgef\u00fchrt wird, st\u00fcrzt die Anwendung wieder ab, wodurch eine endlose Kette von Ausf\u00e4llen entsteht. Man k\u00f6nnte sagen: Deine Nacht ist runiert.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong><strong><strong><strong><strong>Auswirkungen begrenzen<\/strong><\/strong><\/strong><\/strong><\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Die schnellste L\u00f6sung besteht darin, die Abfrage daran zu hindern, \u00fcberhaupt das System zu erreichen. Eine M\u00f6glichkeit ist, den Ingress-Controller oder das API-Gateway so zu konfigurieren, dass diese spezifische Abfrage erkannt und mit einem 404-Fehler oder einer Umleitung beantwortet wird, anstatt sie zum Backend durchzulassen. Dies kann durch eine Regel umgesetzt werden, die die Merkmale der Abfrage identifiziert und sie abf\u00e4ngt, bevor sie Schaden anrichtet. Zus\u00e4tzlich lassen sich Rate Limiting oder Circuit Breaker konfigurieren, die automatisch eingreifen, sobald eine Abfrage Probleme verursacht.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Das Muster verstehen &amp; zuk\u00fcnftige Vorf\u00e4lle verhindern<\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Die \u201eQuery of Death\u201c ist ein h\u00e4ufiges Muster, bei dem eine bestimmte Datenbank- oder API-Anfrage dazu f\u00fchrt, dass eine Anwendung abst\u00fcrzt, einfriert oder \u00fcberm\u00e4\u00dfig viele Ressourcen verbraucht. Oft liegt die Ursache in einer schlecht optimierten Abfrage, einem logischen Fehler oder einer unbeabsichtigten Wiederholung.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die beste Strategie in solchen F\u00e4llen ist, die problematische Abfrage zu blockieren oder umzuleiten, bevor sie das System erreicht. Dies kann durch verschiedene Mechanismen erfolgen, wie z. B. die Konfiguration des API-Gateways, des Ingress-Controllers oder der Firewall, um die Abfrage zu erkennen und entsprechend zu behandeln. Indem verhindert wird, dass die Abfrage ausgef\u00fchrt wird, bleibt die Anwendung stabil, und das eigentliche Problem kann in Ruhe untersucht und behoben werden \u2013 ohne den Druck eines akuten Ausfalls.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Stay tuned!<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Ist deine Anwendung darauf vorbereitet, pl\u00f6tzliche Lastspitzen zu verkraften, ohne abzust\u00fcrzen? Im <a href=\"https:\/\/qualityminds.com\/de\/out-of-resources\/\">n\u00e4chsten Beitrag<\/a> sprechen wir dar\u00fcber was passiert wenn deine Applikation unerwartet viele Ressourcen verbraucht und wie du bis zu n\u00e4chsten Morgen durchhalten kannst.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Weitere Infos &amp; Kontakt<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Verhindere, dass die \u201eQuery of Death\u201c deine System lahmlegt \u2013 unsere Experten helfen dir, die ideale L\u00f6sung zu finden! Schreibe uns dein Anliegen an <a href=\"mailto:hello@qualityminds.de\">hello@qualityminds.de<\/a> oder rufe uns unter <a href=\"tel:+49 911 660732011\">+49 911 660732011<\/a> an!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dieser Blog Post ist Teil unserer mehrteiligen Serie in der wir typische Software Outages beschreiben und euch dabei helfen sie schnell zu beheben. Alle weiteren Posts findet ihr unter <a href=\"https:\/\/qualityminds.com\/de\/intro-software-outages\/\">Vorwort: Wie Du das Chaos managest &#8211; Der richtige Umgang mit Software-Incidents | QualityMinds<\/a>.<\/p>\n\n<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"single-post-aside\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"post-author-wr\">\n\t\t\t\t\t\t\t<div class=\"author-img\">\n\t\t\t\t\t\t\t\t<img alt='' src='https:\/\/secure.gravatar.com\/avatar\/be24f7a5f0d4999b17910d6208d7a4e726fc3e94e1131257b63d9069f8b5926f?s=96&#038;d=mm&#038;r=g' srcset='https:\/\/secure.gravatar.com\/avatar\/be24f7a5f0d4999b17910d6208d7a4e726fc3e94e1131257b63d9069f8b5926f?s=192&#038;d=mm&#038;r=g 2x' class='avatar avatar-96 photo' height='96' width='96' \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"author-info text-element\">\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\tGeschrieben von:\t\t\t\t\t\t\t\t\t<\/p>\n\t\t\t\t\t\t\t\t\t<p class=\"author-name\">\n\t\t\t\t\t\t\t\t\t\tAdministrator QualityMinds\t\t\t\t\t\t\t\t\t<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"aside-cta\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"icon-wr\">\n\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"76\" height=\"76\" src=\"https:\/\/qualityminds.com\/wp-content\/uploads\/2024\/05\/Capa_1.svg\" class=\"attachment-full size-full\" alt=\"send icon\" loading=\"lazy\" \/>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"text-element\">\n\t\t\t\t\t\t\t\t\t<p>Schreib uns eine Mail \u2013 wir freuen uns auf deine Nachricht! <a class=\"cc-1rn59kg\" title=\"mailto:podcast@qualityminds.de\" href=\"mailto:hello@qualityminds.de\" data-testid=\"link-with-safety\" data-renderer-mark=\"true\">hello@qualityminds.de <\/a>oder auf <a class=\"cc-1rn59kg\" title=\"https:\/\/www.linkedin.com\/company\/qualityminds-gmbh\/posts\/?feedView=all\" href=\"https:\/\/www.linkedin.com\/company\/qualityminds-gmbh\/posts\/?feedView=all\" data-testid=\"link-with-safety\" data-renderer-mark=\"true\" target=\"_blank\" rel=\"noopener\">LinkedIn<\/a><\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"similar-posts\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"heading\">\n\t\t\t\t\t\t\t\t\tWeiterf\u00fchrende Links\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"no-list no-margin\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/qualityminds.com\/de\/wie-wir-einen-penetration-tester-ueberrascht-haben\/\">Wie wir einen Penetration Tester \u00fcberrascht haben\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/qualityminds.com\/de\/ms-office-accessibility-checker\/\">Blog-Beitrag: Der MS Office Accessibility Checker als Barrierefreiheitstool\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/qualityminds.com\/de\/iwc-s4f5-vom-seminar-zur-lernenden-organisation-wie-man-lernen-in-den-arbeitsalltag-integriert\/\">IWC (S4F5) Vom Seminar zur lernenden Organisation: Wie man Lernen in den Arbeitsalltag integriert\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\t\t\t\t\t<div class=\"social-sharing\">\n\t\t\t\t\t<p class=\"no-margin\"> teilen\t\t\t\t\t<\/p>\n\t\t\t\t\t\n<ul class=\"no-list no-margin\">\n\t<li>\n\t\t<a href=\"https:\/\/www.linkedin.com\/feed\/?shareActive=true&#038;text=https:\/\/qualityminds.com\/de\/iwc-s4f5-vom-seminar-zur-lernenden-organisation-wie-man-lernen-in-den-arbeitsalltag-integriert\/\" class=\"linkedin\" target=\"_blank\" aria-label=\"auf LinkedIn teilen\"><\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https:\/\/qualityminds.com\/de\/iwc-s4f5-vom-seminar-zur-lernenden-organisation-wie-man-lernen-in-den-arbeitsalltag-integriert\/\" class=\"facebook\" target=\"_blank\" aria-label=\"auf Facebook teilen\"><\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"https:\/\/www.xing.com\/spi\/shares\/new?url=https:\/\/qualityminds.com\/de\/iwc-s4f5-vom-seminar-zur-lernenden-organisation-wie-man-lernen-in-den-arbeitsalltag-integriert\/\" class=\"xing\" target=\"_blank\" aria-label=\"auf Xing teilen\"><\/a>\n\t<\/li>\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t<\/section>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":67,"featured_media":62419,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[504,668],"class_list":["post-62444","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog-de","tag-blog","tag-sre"],"acf":[],"jetpack_featured_media_url":"https:\/\/qualityminds.com\/wp-content\/uploads\/2025\/03\/Vorschaubild-SRE-Hauptposts-100.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/posts\/62444","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/users\/67"}],"replies":[{"embeddable":true,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/comments?post=62444"}],"version-history":[{"count":4,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/posts\/62444\/revisions"}],"predecessor-version":[{"id":62461,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/posts\/62444\/revisions\/62461"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/media\/62419"}],"wp:attachment":[{"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/media?parent=62444"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/categories?post=62444"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/qualityminds.com\/de\/wp-json\/wp\/v2\/tags?post=62444"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}