5.1.2 中间件分类