
# 步骤2：框架配置
框架配置和基本配置一样，需要您根据实际情况进行勾选配置，不同的配置会呈现不同的效果。
1. 是否启用模板，默认不启用，如需启用，在下拉框中选择已创建的模板。创建模板具体操作请参考[创建架构模板](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0129.html)。
   
   选择模板后，模板配置将自动带入包括"框架配置"和"生成策略"。
   
   
2. 选择参考框架。 
   **注意：选择参考框架为Astro Pro专业版/企业版功能，如果您需要使用此功能，请[升级Astro Pro实例版本](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0167.html)。**
   图1选择参考架构   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000001966038826.png)
   
   - 单数据库DB(参考单表查询QPS \< 1w)：只有一个数据源。
   
   - 读写分离数据库(参考单表查询QPS \< 3w)：默认添加两个数据源，一个负责写数据，一个负责查数据。如果数据源使用DevSpore，就使用devspore-datasource的读写分离模式。如果使用的是Spring数据库，则使用shardingsphere的读写分离模式。
   
   - 读写分离数据库+分布式缓存(参考单表查询QPS \< 5w)：数据库开启读写分离，并且开启Redis缓存。
   
   - 数据库分库+分布式缓存(参考单表查询QPS \< 5w)：支持数据库分库，分库数量及规则自定义，并且开启Redis缓存。
   
   
   
   
3. 数据库设置。 
   图2设置数据库   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000001957249281.png)
   - 数据库：选择数据库的类型，支持MySQL和PostgreSQL。
   
   - 分库策略：选择数据的分片算法。参考架构选择"数据库分库+分布式缓存"时，需要设置。
     - MOD：直接使用分片数取模，余数为分片编号（从0开始编号）。适用整数类型的字段。
     
     - HASH_MOD：先使用哈希算法，再使用MOD算法。适用字符串类型的字段。
     
     - RANGE：按照固定的字段值范围映射到分片编号。适用整数、时间类型的字段。
     
     - CUSTOM：用户插件实现特定的SPI。适用所有类型的字段。
     
     - INTERVAL：按照时间间隔分表，分片列必须为时间类型或时间格式的字符串。
      
   
   - 分库数量：设置分库的数量。参考架构选择"数据库分库+分布式缓存"时，需要设置。
   
   - 分库字段：设置分库的字段名，可单击"添加字段"，按需进行添加。分库对象默认使用根对象主键分库，根对象默认使用自身主键分库。参考架构选择"数据库分库+分布式缓存"时，需要设置。
   
   - 主键策略：设置主键的生成方法。数据库中的主键，用于唯一标识一条记录。
     - UUID：使用mybatis interceptor生成的字符串UUID，分表采用hash，逻辑表数量难扩容。
     
     - 雪花算法：使用ShardingJDBC雪花算法，id以时间戳开头，分表采用hash，逻辑表数量难扩容。
     
     - 自增主键(32位)/自增主键(64位)：使用整数range分表，需自己开发插件完成分表算法，逻辑表数量比较容易扩容。
     
     - 用户自定义：使用用户自定义的方法。
      
   
   - 数据源：设置数据库的SDK类型。
     - DevSpore：DevSpore数据源。
     
     - Spring：原生Spring数据源。
      
   
   - ORM框架：ORM（Object Relational Mapping）框架采用元数据来描述对象与关系映射的细节，元数据一般采用XML格式，并且存放在专门的对象一映射文件中。
     **注意：选择ORM框架为Astro Pro专业版/企业版功能，如果您需要使用此功能，请[升级Astro Pro实例版本](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0167.html)。**
     - MyBatis：MyBatis是一款持久化架构，支持自定义SQL、存储过程和高级映射。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis可以使用简单的XML或注解用于配置和原始映射，将接口和Java的POJOs（Plain Ordinary Java Objects，普通的Java对象）映射成数据库中的记录。
     
     - MyBatis/MyBatisPlus：MyBatis-Plus是一个MyBatis的增强工具，为MyBatis提供了一些高效、实用、开箱即用的特性，使用MyBatis-Plus可以有效地节省开发时间。
       
    
   
   
4. 缓存设置。 
   **注意：外部缓存设置为Astro Pro专业版/企业版功能，如果您需要使用此功能，请[升级Astro Pro实例版本](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0167.html)。**
   图3缓存设置   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000001957249617.png)
   - 不启用：不对接缓存服务。
   
   - REDIS：Redis是一种支持Key-Value等多种数据结构的存储系统，可用于缓存、事件发布或订阅、高速队列等场景。使用华为云DCS Redis作为缓存中间件，可简化缓存参数维护操作。更多关于DCS Redis的介绍，请参见[分布式缓存服务DCS](https://support.huaweicloud.com/dcs/index.html)。
    
   
   
5. 安全认证设置。 
   图4安全认证设置   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000002032776580.png)
   - 身份认证
     **注意：身份认证设置为Astro Pro专业版/企业版功能，如果您需要使用此功能，请[升级Astro Pro实例版本](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0167.html)。**
     - 不启用：不启用安全认证机制。
     
     - 华为云OneAccess：使用OneAccess作为安全认证机制。华为云OneAccess是一个贯穿企业全业务流程的身份安全管理服务。更多关于OneAccess的介绍，请参见[应用身份管理服务OneAccess](https://support.huaweicloud.com/oneaccess/index.html)。
     
     - 自定义认证：支持使用自定义插件进行安全认证。更多自定义认证介绍，请参见[自定义认证开发指南](https://support.huaweicloud.com/devg-astropro/astropro_06_0020.html)。
       
   
   - 密码加密：配置文件中密码加解密方式。
     - 不启用：不内置加解密方式。
     
     - 开源Jasypt：使用开源Jasypt进行加解密。
      
   
   - 服务鉴权 **注意：服务鉴权设置为Astro Pro专业版/企业版功能，如果您需要使用此功能，请[升级Astro Pro实例版本](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0167.html)。开启服务鉴权机制前，请先在基本配置中开启[扩展拦截](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0015.html#astropro_05_0015__li167163618299)。**
     - 不启用：不启用服务鉴权机制。
     
     - 自定义鉴权：使用自定义插件进行服务鉴权。更多自定义鉴权介绍，请参见[自定义插件服务鉴权开发指南](https://support.huaweicloud.com/devg-astropro/astropro_06_0023.html)。
      
   
   - 参数校验：参数校验使用的类型。
     - 不启用：不对参数进行校验。
     
     - Hibernate：使用Hibernate注解参数校验方式。
      
    
   
   
6. 云服务设置。 
   图5云服务设置   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000002004587181.png)
   - 注册发现/配置中心
     - 不启用：不对接配置管理服务。
     
     - CSE：使用微服务引擎服务CSE作为配置管理服务。CSE是微服务应用的云中间件，为用户提供了注册发现、服务治理、配置管理等高性能和高韧性的企业级云服务能力，可无缝兼容Spring Cloud、ServiceComb等开源生态，用户也可以结合其他云服务，快速构建云原生微服务体系，实现微服务应用的快速开发和高可用运维。更多关于CSE的介绍，请参见[微服务引擎CSE](https://support.huaweicloud.com/cse/index.html)。
     
     - NACOS：使用NACOS作为配置管理服务。NACOS提供了一组简单易用的特性集，帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
      
   
   - 调用链
     - 不启用：不启用调用链。
     
     - 华为云APM：使用应用性能管理服务APM作为调用链。APM您的云上引用健康管理专家，可帮助运维人员快速发现应用的性能瓶颈，以及故障根源的快速定位，为用户体验保驾护航。更多关于APM的介绍，请参见[应用性能管理APM](https://support.huaweicloud.com/apm/index.html)。
      
   
   - 服务监控
     - 不启用：不对接服务监控组件。
     
     - 华为云AOM：使用应用运维管理服务AOM作为服务监控组件。应用运维管理AOM是云上应用的一站式立体化运维管理平台，实时监控您的应用及相关云资源，分析应用健康状态，提供灵活丰富的数据可视化功能，帮助您及时发现故障，全面掌握应用、资源及业务的实时运行状况。更多关于AOM的介绍，请参见[应用运维管理AOM](https://support.huaweicloud.com/aom/index.html)。
      
    
   
   
7. 设置完成后，单击"下一步"，进入生成策略页面。
 
