TeamAndro exploring a migration from phpBB

Hi everyone,

we are running a forum that can be found at www.team-andro.com/phpBB3

Statistics are as follows:

  • Existing since 2004
  • About 9.9 million posts in more than 360 k topics
  • Nearly 290 k users
  • Around 40 k visitors per day, most coming from Google
  • Some very large topics up to more than 500.000 posts

Our current software is phpBB 3.0 and we are considering whether to start a project to move everything to Discourse.

Our considerations around that project are still high level, so I’d like to ask some questions, which are more general.

  1. Has somebody made experiences how the move from a big PHP based classical bulletin board to Discourse will influence Google rankings?

  2. Of course architecture and functionality of Discourse and phpBB are different. Are there differences which are not visible at a first glance but will lead to bigger problems? Maybe something like differences in the permission systems?

  3. What has been the reaction of your frequent users? Has it taken long until they have liked Discourse? And what did your moderators say?

  4. Did the introduction of Discourse have a measureable postive effect on numbers expressing user behaviour and engagement? I mean numbers like pages per session, bounce rate, session duration but also number of posts per day, number of active users.

  5. Is it possible to use Discourse as a single sign on provider for other applications? I.e.: We have other applications not providing a login and they should make use of Discourse authentication instead. I’ve found the topic Official Single-Sign-On for Discourse (sso), but that seems to be the other way round.

Thank you in advance for your replies!

Regards
Stephen

1 Like

I can comment on some part of question 2. Since this is very big forum your new discourse forum urls for posts will not be same so you will lose lot of traffic from Google. Other option is have 301 redirect for all url, which may be bit complicated in this case, think about this. Just sharing my thoughts :slight_smile:

Thank you for your reply. We are aware that it’s necessary to redirect all old urls to the respective new Discourse urls. I’m not sure at this point of time how this has to be implemented in detail. But it can be assumed that the 301 redirects will be there when we go live.

Your biggest obstacle will probably be the megatopics.

If you really have topics with half a million replies, then you need to read up on the implications they’re going to have for scaling.

2 Likes

@teamandro, I can suggest two solutions for redirection.

  1. Install wordpress blog in place of phpbb3 dir, and use plugin like Redirection – WordPress plugin | WordPress.org for redirecting old url to new discourse site.
  2. Use htaccess for redirection, this will be very big file. not sure if it will have any side effects.

If you know better way then please share that. it may help others.

The phpbb importer can handle redirecting the posts by itself, but I don’t know if it would perform badly with over 300k permalinks.

Maybe something like differences in the permission systems?

If you’re using category specific moderators note that Discourse is planning to add that function, but it’s not here yet. But due to the community moderation, I don’t think you need as many mods.

What has been the reaction of your frequent users?

Most think it’s a big improvement, though a few have complained about the infinite scrolling.

One final thought: I imported a 120k post phpbb forum, and it took about six hours (with another 6-8 of high CPU post processing while the forum was usable) on the smallest Linode option. Obviously you’ll be using a better server, but the importing could still take a long time. I’m not sure to what extent the import script is designed for parallel processing.

1 Like

I’ve just looked into our database. There are not many of those mega topics:

The rest is below 50 k posts.

If those mega topics should be something like a “show stopper”, then we would use a pragmatic solution and split them into smaller topics of e.g. 100.000 or 50.000 each.

But it would be good if 50 k posts would be in the realm of possibility. Is that realistic?

We have done some migrations before, where redirects have been to be implemented.

I’ve not looked so deep into Discourse now, but it seems to offer a different view if user agent is Googlebot. In that view you don’t find infinite scrolling.

I think we will leave the old database (or parts of that) intact for redirection purposes. We will then implement a redirection program (probably with the help of PHP) which computes a mapping from the old url to the new one.

Our forum sitemap has some 100 k entries. That’s probably too much for htacess. Better implementing a program to do that job.

Those are still… not great. They are basically chatrooms, nobody is reading all that. How many topics do you have that are over 10,000 posts?

4 Likes

I would challenge this, daily or weekly topics could achieve this too, you don’t really want responses over 10k.

There are 73 topics with more than 10.000 posts in our database. Many of them are similar to a chatroom but this cannot be assumed in general.

Look e.g. at a topic like that: Aktuelles & Neues von Dennis Wolf : IFBB & DBFV News

This topic has been started in 2005 and it documents the history of an athlete over the last 14 years. Our moderators usually monitor topics of that type closely and have invested much time over the years doing so. I.e.: If the discussion goes too much offtopic then the respective posts will be removed.

1 Like

Thank you for that hint. We indeed have category specific moderators and it would be hard to do without that.

Our moderators are organized in teams. Each team responsible for one category. And each team has its team leader.

We didn’t introduce that for fun. Before there have been situations where we had to lead discussions with all moderators simultaneously and sometimes it was very hard to gain acceptance. The introduction of the team structure has appeased our board very much.

Is there already a rough estimate when this feature can be expected?

I’ve done a few large migrations.

There is a bulk importer that is much faster, but is not as full-featured. I think that you can probably use it in conjunction with the traditional importer, but haven’t tried it yet. The regular importer will probably take a week or two for the first run. Subsequent runs are faster since they skip already-imported data.

301 redirects are included in the standard importer, though most everyone reports a drop-off in incoming Google traffic after a migration. There are a number of topics about that here.

Category-level moderation isn’t on the public road map that I can see. See Category-Specific Moderators, phase 1 RFC for a work-around.

The uber-long topics should probably be converted to categories with topics split out by number of posts and/or time-frame. Whether to do that by hand before the import or modify the importer to do it is a question to consider.

If you have migrated your forum from other fora in the past then that can complicate things, as it’s likely that the previous imports left things in ways that were non-standard. The biggest problem that I’ve seen is wanky formatting.

For big imports I’ve done mini-imports of just recent topics so that you can get an idea of how things will look without a week or more of compute time to import all of the data.

Discourse Migration – Literate Computing, LLC contains my notes on migration. It’s designed largely for potential customers, but includes information that anyone can consider (much of which I’ve already covered here).

6 Likes

Thank you for sharing your experiences :slightly_smiling_face:

I guess that the standard importer will expect urls as they are in standard phpBB. One of the many modifications in our forum is the so-called SEO Toolkit which sets topic and forum titles in the respective urls. So, urls in our forum are not phpBB standard. But good to know that a feature like that exists. Maybe the importer can be modfied so that it can handle our urls, too.

That sounds very reasonable. I’ve noticed that in many Discourse installations the number of posts per topic is limited to 10.000. But not in all. E.g. at https://www.gamekult.com/forum/latest?order=posts I can see topics with up to 70 k posts. That’s a number which would be fine for us. Is that achievable when a powerful database server is used?

Wanky formatting shouldn’t be so much of a problem. But we have many, many modifications. Especially with respect to BBCodes. So, we have BBCodes for Facebook, Instagram, Youtube and Soundcloud embeds, BBCodes for our self-implemented mention system and many other stuff like that. So, it’s very unlikely that the importer, which has been implemented for standard phpBB, can handle that out of the box. But it’s great that an importer exists and we expect that it will be a part of the project to modify it according to our needs.

Sometimes it’s funny how things overlap :wink:

One hour ago there has been a post in that topic that the feature is being worked on now: Category-Specific Moderators, phase 1 RFC

Good news :grinning:

1 Like

10,000 posts is the out-of-box limit, and if overridden there are some definite implications for hardware scaling. In the event you do decide to bypass the soft limit, certain topic features including dates on the timeline are automatically disabled, but this doesn’t entirely mitigate the additional burden these topics create across the site.

I would strongly recommend planning out approaches to stay below the 10k limit, such as daily or weekly topics, and allowing new serialised topics to be created when the previous hits the 10k limit and is automatically closed. As long as the new topic links back to the old one the relationship between them will be obvious enough.

3 Likes