You recoil from the crude; you tend naturally toward the exquisite.
En~MoniWikiRcsLite › MoniWikiRefactoring

Data Model <=> Controller <=> View

StorageManager

StorageManager class for WikiWki
  • RCS
  • CVS
  • SVN
  • Git

PageNameAdaptor

CacheManager

UserManager

AccessController

PluginManager

Action

Macro

Ajax

ThemeManager

PageRenderer

Parser

Formatter

Processor

Filter

PostFilter

PreFilter

Translation (I18n)

Speed related


Cache <!> 1.1.3

  • formatted result(html) cache
  • cache management
    • cleanup caches
    • pre-build caches

Server #1

Fedora core 4 PHP 5.0.4 (Intel(R) Pentium(R) 4 CPU 2.40Foldoc:GHz)
static pages 900 RPS
moniwiki normal 27 RPS
moniwiki with cache 60 RPS
moniwiki trivial [1] 290 RPS
moniwiki trivial [2] 150 RPS
drupal 4.7.2 with cache 67 RPS
drupal 4.7.2 without cache 22 RPS
----
  • [1] do not init Wiki DB
  • [2] init Wiki DB only

Parser/Formatter

  • dedicated parse with lex/yacc(or somthing)
    • more speed with less cpu load!
  • custom syntax with regular expression

Architecture(Design) related


modular design

  • avoid multiple initialization of wikidb
    • more speed with less cpu load!
  • separates frontend from backend
  • various frontend
    • classic wiki frontend
    • modern wiki frontend(ajax-oriented?)
    • xmlrpc frontend?
    • blog frontend?

Plugin related


cleanup plugin architecture

  • compatible to old plugin
  • more polished parameter handling(API)
  • document
  • various types of plugin
    • macro plugin
    • action plugin
    • processor plugin
    • security plugin
    • theme plugin
    • ... ?

plugin repository

  • manual install(browse, download and install)
  • online install
  • check for updates
  • plugin metadata
    • author
    • copyright
    • version
    • dependencies
      • required moniwiki version
      • required plugins and version
    • ...?

Theme related


css cleanup <!> 1.1.3

  • sanitize css styles(id and class)
  • document for css styles
  • separates theme-able styles from core(instrincs) styles

adopt template engine


theme repository

  • theme metadata
    • author
    • copyright
    • version
    • dependencies

theme as a kind of plugin?

Setup related

  • more user-friendly setup process

WikiSeed related

  • korean wiki seed
  • wiki seed package (as a kind of plugin?)
 
captcha
Username:
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-04-19 15:51:14
Processing time 0.0281 sec