多用户博客woblog是如何实现多用户统一数据表的

woblog是从wordpress修改、优化而来。众所周知,wordpress的多用户、多站点,是建立在每个站点有自已独立数据表的基础上的,每个子站点其实就是一个独立的小博客。虽然这样在某方面可能有一定的便捷性和效率,但在用户数和站点数很多时确实是一种灾难。因为每新增一个站点就要新建10张表,我们blog_id是2,即第二个博客,那么查看mysql数据库,会发现,有10张表和这个博客对应,分别是:wp_2_commentmeta,wp_2_comments,wp_2_links,wp_2_options,wp_2_postmeta,wp_2_posts,wp_2_term_relationships,wp_2_term_taxonomy,wp_2_termmeta,wp_2_terms。其中wp是表前缀,2是blog_id,如果用户数和站点较多的话,那数据表数量将是非常巨大的。另外就是所有内容都分散在多个数据表中,内容无法聚合。

woblog就是针对上面问题而设计的,把代表博客id的blog_id,由表名改为在表中增加一个字段,而且修改了所有的和数据库相关的代码,最终用一套数据表存储的所有的数据。

本文为原创文章,转载请注明出处!