【国内的saas】将多平台整合

一、背景介绍

在之前的工作中,我只知道每个平台使用各自的代码。但在加入现公司后,我发现多个平台共享一套代码,包括数据库和服务器等资源。起初,我感到非常奇怪,因为不同平台的所有数据都集中在一起。交接工作的同事解释说,他们通过在表中使用一个字段来区分不同平台的数据。尽管每个平台的功能和用户都是不同的,我当时并没有完全理解。

在接手工作后,我主要处理的是某个平台独有的功能,因此没有深入了解平台之间的交互。最近,我接手了一个跨境项目,由于国际化的需求,同一平台需要支持多种语言,并且使用了所谓的SaaS架构。这让我意识到这一架构的重要性,因为这是我第一次接触这种形式,所以决定记录一下。

二、整合原理

整合的原理是通过不同平台的域名来区分。虽然使用的是同一套代码,但不同平台的域名是不同的。根据不同平台的域名,设置相应的SaaS,并将其保存到数据库中。在需要区分平台信息的表中,通过设置saasId来进行区分。例如:会员表、商品表、公告内容表、订单表等。

三、代码实现

以下是代码实现。基本原理是通过请求的域名来区分平台。如果是第一次访问,会查询数据库并将结果缓存到Redis中,从而有效减少数据库压力:

/**
 * <p>
 * SAAS 服务实现类
 * </p>
 *
 * @author developer
 * @since 2021-12-27
 */
@Slf4j
@Service
public class SaasServiceImpl extends ServiceImpl<SaasMapper, Saas> implements ISaasService {

    
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值