improve server behaviors