add memcache and factory