关于deituicms实现从单机到微服务等不同架构实现
技术分享 未结 置顶 精帖
0
7
新雷
新雷
2021年08月04日

关于deituicms实现从单机到微服务等不同架构实现

一、单机模式

    应用,数据库,文件,缓存,都在同一个服务器

    大家下载,安装后即可使用

二、单应用分开部署模式

    deituicms推荐至少进行应用、数据库、文件分离部署

    1、数据库分离:无需修改

    2、文件分离:推荐文件分离

            deituicms默认支持阿里云,需要配置config.php和ossapi,其他云存储也可以轻松扩展

    3、缓存分离:

        deituicms默认使用MySQL和文件作为缓存。缓存分离推荐使用Redis,在extends/cache中配置即可

    4、队列任务:

        deituicms默认使用MySQL和文件作为队列任务,默认支持Redis队列,也可以自行扩展kafka等其他队列,配置在extends/queue.php

三、多应用部署

    1、、应用拆分

        deituicms采用多应用开发模式,支持应用与基础模块分离部署,比如可以按论坛,商城,抽奖等应用分离部署,各应用都可以各自实现分布式部署

    2、数据库拆分

        deituicms支持多数据库连接使用,支持合理情况下拆分部署,如涉及分布式事务业务,则需修改代码。数据库拆分在database.php配置,以表为最小粒度拆分。如果涉及需要分离部署多应用,请使用公共配置中心。

    3、缓存拆分

        应用分离部署之后,我们可能会有应用内缓存和应用外缓存,我们可以根据key来匹配。这个在开发应用的时候就要注意。

四、微服务部署

    当我们进行多应用部署之后还不能满足需求,我们还要对业务进行拆分。比如用户中心,消息中心,支付中心,订单中心等。

    deituiCms默认支持JSONRpc进行业务分离。默认采用复用model的模式,特殊情况需要按业务进行修改。

    微服务在extends/rpc中配置,默认以model表为最小粒度拆分。可按model表进行微服务配置。


消灭零回复