YAFLogo

melody
  • melody
  • 54.8% (Neutral)
  • YAF Forumling Topic Starter
11 years ago
I create a forum and have about 70000 topics,then I found when I see this forum,it is very slow.I see the page is created in almost 4 seconds.I run the stored procedure like this:

exec [dbo].[yaf_topic_list] @ForumID=12,@UserID=default,@Announcement=0,@Date=default,@Offset=0,@Count=15,@StyledNicks=0,@ShowMoved=1,@FindLastRead=0

it runs 3-4 seconds.

My forum is not online,I think when many users use the forum,it will down.please help me!Thank you very much!

And can I cache the pages? I used <% OutputCache %> on the page,it won't work.
Sponsor

melody
  • melody
  • 54.8% (Neutral)
  • YAF Forumling Topic Starter
11 years ago
I tested,,the forum which has little topic is very fast,about 0.055 second.then as the topics increase,the page will slow down?🤔
melody
  • melody
  • 54.8% (Neutral)
  • YAF Forumling Topic Starter
11 years ago
no one cares about this problem?:(
bbobb
  • bbobb
  • 100% (Exalted)
  • YAF Developer
11 years ago
Cares, and even knows how to solve it, but doesn't have free time.
melody
  • melody
  • 54.8% (Neutral)
  • YAF Forumling Topic Starter
11 years ago
Originally Posted by: bbobb 

Cares, and even knows how to solve it, but doesn't have free time.


please help~thank you!
ChazZeromus
11 years ago
Post a quick replace for the stored proc? I'd like this update too before I start to get slow downs. Of course approved or created from the devs 🙂
bbobb
  • bbobb
  • 100% (Exalted)
  • YAF Developer
11 years ago
The problem is in a process, the current. prorotype works fast with any number of topics in a forum.
When I have time I'll complete and test it.
melody
  • melody
  • 54.8% (Neutral)
  • YAF Forumling Topic Starter
11 years ago
😁 still waiting,I need your help,please~~~
bbobb
  • bbobb
  • 100% (Exalted)
  • YAF Developer
11 years ago
I've merged a new logic. Unfortunately, you can't make it by a simple sql scripts update.
JP
  • JP
  • 100% (Exalted)
  • YAF Leader
11 years ago
This is a problem I have had for a quite a while too...

Each time yaf_post_list is executed, about 150 000 - 200 000 reads are made in my database, giving response times from 1-30 seconds depending on how many users & bots are active simultaneously ...

I have around 20 000 topics and 300 000 messages in my forum. Average concurrent users is usually about 20-25...

As a "workaround" I added an index on the yaf_message table with TopicId, MessageId, UserID and Posted, with reversed order (descending) - meaning latest Topics/Messages will be found quicker.

Now I have around 35 000 reads at worst, and a stable response time of about 0.2-0.5 secs for any yaf_post_list call...


He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Old Chinese Proverb]
bbobb
  • bbobb
  • 100% (Exalted)
  • YAF Developer
11 years ago
It's a different problem. I've implemented for topics the same logic as for post_list.
It allowed to cut down load times.Indexes will not help if a topic has many thousand posts. If a forum is busy multiple indexes will only slow down it. But in your case the post rate is not large and it will help. Reverse order matters as all sql logic is based on it.
JP
  • JP
  • 100% (Exalted)
  • YAF Leader
11 years ago
Actually. I have noticed a significant improvement in my forum regarding topics with thousands of posts (ok, 2-4000 posts only) by the index I added. Especially "Jump to Last Post" is way faster now. A 3000+ topic loads at about 0.8 sec and "jump to last" is about 0.1-0.2 secs according to the page load time presented by YAF. Usually it took several secs for a large topic...

I suppose the reverse index is the big thing for me, since most traffic is about checking the latest posts in various topics.
Also helps to know what your SQL Server spends most time on, which varies with different scenarios of traffic..

Of course, my tip may not be generally significant since the forum sw should be stable and as fast as possible in every situation, but for me it helped and I just wanted to share a tip that works in my forum... 😄

But when we come up to 70 000 topics, things might be different indeed....

It is very encouraging that you are looking into performance issues. 👍
He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Old Chinese Proverb]
YAF Logo Copyright © YetAnotherForum.NET & Ingo Herbote. All rights reserved
About Us

The YAF.NET is an open source .NET forum project. YAF.NET is supported by an team of international developers who are build community by building community software.

Powered by Resharper Donate with PayPal button