前端saas化部署

在项目中难免会遇到一些特殊的需求,例如同一套代码需要同时部署上两个不同的域名A和B。A和B的不同之处仅在于,例如一些背景图片,logo,展示模块的不同,其他业务逻辑是和展示模块是完全一样的。此时我们当然可以考虑单独将代码复制一份出来,单独部署域名B,但是此时的维护成本就会增加。所以我们考虑到将部署同一套代码上去,然后进行一些区分。当然这种情况要看具体的业务需求。
决定使用同一套代码部署,那我们就需要处理以下问题
1,确定哪些是需要动态变化的内容,进行变量化
2,这些变量的内容从哪里获取
我们根据上面问题开始一一处理

域名A和域名B展示的内容区别有,接口访问域名,logo图片,背景图片。
新增一个配置文件config/baseHost.js

var origin = window.location.origin;
var host = window.location.host;
var pathname = window.location.pathname;
module.exports = {
	baseUrl: process.env.NODE_ENV === 'development' ? '/dev-api' : origin,
	study_baseUrl: process.env.NODE_ENV === 'development' ? '/study-api' : origin,
	url: host,
	pathname: pathname + '#/',
};

保存需要更新的内容缓存信息,此处选择的是通过localStorage和vuex一起存储。

store/app.js

const state = {
	logoBj: localStorage.getItem('logoBj') ? JSON.parse(localStorage.getItem('logoBj')) : {} //logo图片,登录图片等配置图片
};
/**更新tab菜单选中索引*/
SET_TENANTID: (state, current) => {
	console.log('SET_TENANTID-------------', current);
	state.tenantId = current?.tenantId;
	state.logoBj = current || {};
	localStorage.setItem('logoBj', JSON.stringify(current));
	localStorage.setItem('tenantId', current?.tenantId);
}

app.vue

// 获取用户配置信息
getTenantId() {
	this.$api.getTenantId().then(res => {
		if (res.rCode == 0) {
			this.SET_TENANTID(res.results || {});
		}
	});
}

我们通过当前访问域名提取接口域名并配置在配置文件中。
通过请求用户配置信息接口获取不同域名下的配置信息,并保存起来。
其他页面使用时进行调用。
此时基于此业务场景的saas化部署完成。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电商 SaaS 是中国最大的行业垂直型 SaaS 市场,覆盖全价值环节。上游供应商为系统开发商、网络服务及设备供应商等,为电商 SaaS 厂 商提供系统研发环境、网络服务及算力。下游客户为电商商家,形态 可能为平台入驻商户、独立商户,或有重合。中游的电商 SaaS 所供 产品包含店铺管理、客户营销、售后服务等功能,并随商家成熟度的 提升而叠加、丰富,最终可以覆盖除配送外全部零售电商端价值环节。 平台流量生态→电商商家经营→厂商 SaaS 功能,需求决定供给。健 康的电商生态追求商家 GMV 与厂商 ARPU 的同步成长,电商 SaaS 本质 上是帮助商家提高收入利润、扩大生意版图的工具。中国电商平台集 中度极高,随着公域流量增速放缓红利见顶,其使用成本越发昂贵; 同时直播电商与社交电商兴起,推动更多商家转向私域。 行业+技术+环境为电商 SaaS 高景气度保驾护航。行业趋势方面,直 播社交双驱发力,商家深耕微信快手等私域流量;厂商随下游零售电 商行业发展而跨平台拓客更新,并聚焦高净值大客户,关注不同层次 需求,以实现“全渠道获客、多场景覆盖、差异服务”。技术趋势 方面,5G 发展利好直播带货,数据中台提升前端业务开发效率,AI 助力商家降本提效,厂商发展实力得到增强。此外,“十四五”等政 策利好持续释放,疫情加速了市场教育,我们预计到 2024 年电商 SaaS 行业营收规模将突破 230 亿元。 1.行业垂直型 SaaS 革新交付方式,强调业务理解 1.1 SaaS 以多租户架构为特点,革新应用交付方式 SaaS(Software as a Service,软件即服务),是一种基于互联网提供 软件服务的应用模式。SaaS 建立在 IaaS(Infrastructure as a Service, 基础设施即服务)及 PaaS(Platform as a Service,平台即服务)的基 础之上,是云服务中最上层、直面用户的一层。厂商将应用部署在其服务 器上,用户只需通过网络注册账号等简单操作即可启用 SaaS 平台上的软件 服务,通过互联网使用共享的基础设备,并根据实际需要向厂商订购并付 费。相比于传统软件,SaaS 具有如下优势: 快速启用。用户可以通过互联网随时随地获得 SaaS 平台上所提供的应 用程序,相比于本地部署模式,对用户而言安装更加快速、使用门槛 更低,允许用户快速将新应用投入使用。 低使用成本。SaaS 模式下厂商按订阅制收费,用户无需购买证书,初始成本更低。由于基础设备共享,用户无需承担传统软件本地部署模 式下构建及维护自用 IT 硬件设备的费用。  高整合性。SaaS 最大的特点在于其多租户架构,并且可以无限期扩展 以满足用户需求,对多租户的资源复用能够有效降低开发和运维成本。 由于多租户共享一份核心代码,由厂商更新共性代码即可实现系统持 续、快速的升级迭代。 高开放性。许多 SaaS 厂商开放 API 接口((Application Programming Interface,应用程序接口),用户得以通过 API 扩展更多个性模块, 将时间和精力专注于自身业务。 1.2 中国 SaaS 市场增速高于全球,渗透空间巨大 按发展路径分,SaaS 玩家主要分为传统转型、创业型、互联网型。传统厂商(SAP、金蝶等)通过 SaaS 自我革命原有 IT 业务。大量创业型厂商(北 森云等)充分利用 SaaS 行业门槛较低的特征,选择某个垂直细分领域切入。 互联网厂商近年也杀入局来(阿里-钉钉、腾讯-企业微信),进一步挤占 IM/协同 OA 类等厂商生存空间。在 IaaS 业务普及的基础上,SaaS 从 CRM、 HRM 等标准程度较高的业务开始爆发,呈现出细分领域众多、竞争极为激烈的分散市场格局。从规模来看,2019 年我国 SaaS 市场规模近 200 亿 元,渗透率远低于全球,仍有巨大发展潜力

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值