Home Forums WoodMart support forum filter URLs causing extremely high CPU and very slow database requests

filter URLs causing extremely high CPU and very slow database requests

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #726943

    albarkayusuf
    Participant

    I need help investigating a serious performance issue on my WooCommerce store:

    My hosting provider (Hostinger) investigated the server logs and identified a very large number of requests to WooCommerce filter URLs generated by the shop/filter system.

    The problematic URLs contain parameters such as:

    filter_color
    filter_product_brand
    stock_status
    per_page

    These URLs are generating thousands of unique combinations.

    Hostinger has found that many of these requests return HTTP 200 but take several minutes and, in some cases, more than an hour to complete. They are consuming significant CPU and database resources and causing my 2-core hosting account to reach very high CPU utilization.

    Hostinger specifically advised me to contact the WoodMart developer because the filtering functionality appears to be coming from WoodMart/WoodMart Core.

    Could you please investigate:

    How WoodMart’s AJAX/filter system generates these filter URLs.
    Why requests containing filter_color, filter_product_brand, stock_status, and per_page can become so resource-intensive.
    Whether the filter queries can be optimized to reduce database/CPU usage.
    Whether unnecessary filter combinations can be prevented from being generated.
    Whether there is a setting to prevent crawlers/search engines from requesting every filter combination.
    Whether the filters can be configured to apply only after the customer clicks an Apply Filters button rather than generating requests for every selection.
    Whether per_page can be restricted to a reasonable maximum.
    Whether there are any WoodMart settings related to AJAX filters, query optimization, caching, or indexing that I should change.
    Whether WoodMart recommends specific URL parameters that should be excluded from crawling/indexing.
    Whether the current behavior could be causing excessive WooCommerce database queries when automated crawlers visit filter URLs.

    This is affecting both server performance and search/merchant crawling. Hostinger has also observed Googlebot requests taking approximately 22–32 minutes to receive a response, although Googlebot itself is not being blocked by the server.

    I would appreciate it if you could review this as a performance issue and recommend the safest configuration for a WooCommerce store with variable products.

    Thank you.

    #726960

    Serg Sokhatskyi
    Keymaster
    Xtemos team

    Hi there,

    Thanks for reaching out.

    Those filter URLs (e.g. filter_color, filter_product_brand) are generated by WooCommerce itself, not by the WoodMart theme. If you switch to the default Storefront theme and disable the WoodMart Core plugin, you should see the same URLs and behavior.

    In most cases like this, servers are being crawled heavily by bots that hit thousands of uncached filter combinations, which causes expensive WooCommerce queries and high CPU/DB load. This is not a theme-specific process.

    Our recommendation is to use a CDN/WAF such as Cloudflare (or a similar service) to block or rate-limit bots from accessing these filtered URLs. For example, add firewall rules to challenge/block requests that contain query parameters like filter_color, filter_product_brand, stock_status, or per_page.

    Please try:
    – Temporarily switching to Storefront to confirm it’s the same with a core theme.
    – Adding Cloudflare/WAF rules to restrict bot access to filtered URLs and then monitoring CPU/load.

    Let us know the results after these steps.

    Kind regards,
    XTemos Studio

Viewing 2 posts - 1 through 2 (of 2 total)