• Resolved peeld

    (@peeld)


    I have a pretty extensive badge system using Gamipress on my site. It’s *great* and drives engagement way up. One issue I’ve pinpointed is that it also slows the site down, because a lot of the badges involve comments. So, every time a user posts a comment, the system is checking and running through it’s processes to perform triggers based on commenting. Is there any optimization or prioritization or anything I should be looking to do on my server or anything to help make this process faster? I have a lot of members commenting and it really grinds things down to a halt. Any advice would be great. I have already turned off the logs option, so only events are being logged – but of course comments are an event so they get logged because they trigger all sorts of things.

    I’m not a programmer so I can’t provide any information beyond this, but it’s definitely and issue, and not surprising, really. Maybe there’s nothing to be done about it, or avoid issuing badges that relate to comments?

    EDIT – checked all this out using the wp plugin query monitor, although I’d already suspected Gamipress background checking was slowing things down, as another site of mine with essentially the same plugins and commenting system is posting comments much much faster. Cheers.

    • This topic was modified 4 years, 6 months ago by peeld.
Viewing 11 replies - 1 through 11 (of 11 total)
  • Plugin Author Ruben Garcia

    (@rubengc)

    Hi @peeld

    Is possible that GamiPress can slow down some process if you includes several of awards to them

    For example, for the “Comment on a post” event, if you configure 20 requirements (points awards, deducts, steps and rank requirements) it could make the comment publishing process slow down since GamiPress needs to check if the user is able to earn something

    Also there could be extra processes if user should earn something more like an extra achievement, or earn extra points

    For that, the way you can speed up some process is reducing the number or requirements that are using this event (for example, if you have 20 achievements looking for “comment on a post”, reduce them to 10)

    The GamiPress awards engine is developed to run as faster as possible, but is comprehensible that will run slower if is required to perform several checks on a single action

    Anyway, something that we can’t solve is the case that your server is reaching it’s limits
    I mean, on a clean install, without GamiPress, your comment system probably works faster because there isn’t the GamiPress extra checks, is completely logical because there isn’t this extra process behind each comment

    But the same will happen if you compare a clean WordPress vs a WordPress with forums (bbPress), frontend profiles (BuddyPress) and/or shop (WooCommerce), is completely evidently that plugins adds extra processes and they will increase the requirements on your server since there are extra processes (for all the extra features plugin offers)

    Hope it helps you to understand better how GamiPress and plugins works and the way to find a solution to fix the comments slow down

    Best regards

    Thread Starter peeld

    (@peeld)

    Yes, I have literally dozens of awards that rely on commenting on a specific post 🙁 I kind of figured that there was no way around it, and understand. Giving awards for commenting on a specific post has really increased engagement…I’ll have to give some thought to how to maintain engagement without requiring those comments – members visit specific pages with ‘challenges’ on them each month, and get credit for ‘completing’ a challenge by posting a comment or a video for review. I suppose I could get them to tick a box or something…

    Thread Starter peeld

    (@peeld)

    Here’s a follow up question to this – is there a way to ‘archive’ some of the achievements checking for comments? For example, if there’s a badge that a user can earn for commenting on a post that was made in January, and I don’t want the user to be able to earn that badge NOW, can I do so? Basically, let users who have already earned the January badge keep the points earned, and show that they’ve earned it on their list of achievements, but somehow remove it from the list of checks Gamipress runs through?

    Plugin Author Ruben Garcia

    (@rubengc)

    Hi @peeld

    We are looking to release the update 1.7.9 with only performance and security changes

    One of the performance changes will be to improve our checks and make specific events (like “Comment on a specific post”) much faster, so is probable that with the update you won’t require to make any change on your setup to fix the slow downs

    Actually, 1.7.9 is targeted for next week, if you like, at the moment our development version gets this performance fixes I can let you know to download it before the 1.7.9 release,

    So please, let me know if you want to proceed in this way or you prefer to wait until 1.7.9 release

    Best regards

    Plugin Author Ruben Garcia

    (@rubengc)

    Hi @peeld

    There is the 1.7.9 beta release with the fix to your issue:
    https://downloads.wordpress.org/plugin/gamipress.1.7.9-beta.zip

    You need to install it manually by deactivating and removing GamiPress and uploading this version

    Or, if you don’t want to test this version you can always wait for the definitive 1.7.9 release

    Best regards

    Thread Starter peeld

    (@peeld)

    Wow, thanks @rubengc – I’ll go ahead and try out the beta! I love how Gamipress has increased engagement in my site 🙂

    Thread Starter peeld

    (@peeld)

    As to my other question, is there a way to archive or ‘close’ older badges so that they’re no longer achievable, and no longer figure in to checks?

    Plugin Author Ruben Garcia

    (@rubengc)

    Hi @peeld

    The important elements to “achieve” and don’t get checked by GamiPress is the achievement steps (points awards, points deducts, steps and rank requirements are the elements checked, achievements and ranks are checked as consequence of the completion of their steps)

    There are 2 solutions you can apply:

    1) Disable the achievement steps through the top control, explained here:
    https://gamipress.com/docs/getting-started/requirements-ui/#top-controls

    Disabling the requirement won’t make them disappear on the awards engine check, only will make them fall on the first check where GamiPress checks if the requirement has been disabled

    2) Save the achievement steps in some way and remove them
    A possible quick way you can perform it is by taking screenshots of your setup and attaching them to your achievement, in this way you can remove all steps and store a screenshot of the old setup

    There is a plugin that let’s you attach images to your WordPress posts (GamiPress achievements are WordPress posts, like WooCommerce products):
    https://wordpress.org/plugins/attachments/

    Hope it helps

    Thread Starter peeld

    (@peeld)

    Thanks @rubengc – I’ll give some thought to how to make the ‘old’ achievements no longer achievable. Can’t just delete them or their display on several pages will be messed up. I’ll look at disabling and see how that goes 🙂

    Thread Starter peeld

    (@peeld)

    I’ll also put in a feature request to have a time limit on badges, if it’s not already possible. Say, a badge can be earned between 1/1/2020 and 1/31/2020 but after that (or before that) it’s not available. That way it falls out of the loop when comments are checked for achievements without having to go back and turn off the requirements 🙂

    Plugin Author Ruben Garcia

    (@rubengc)

    Hi @peeld

    Thank you so much for your suggestion, we will take it in count for future updates or for possible new add-ons

    Best regards

Viewing 11 replies - 1 through 11 (of 11 total)
  • The topic ‘Comment Checking slows down site’ is closed to new replies.