(1)为什么需要页面搭建?
页面搭建可以开发组件,沉淀组件,实现代码的复用
(2)基本领域模型
站点,页面,组件,组件模版,数据源,规则,数据源模版
一个站点 多个页面,一个页面多个组件模版,一个组件多个数据源模版,多个数据源之间互斥使用规则进行控制
(3)b端将页面的配置写入到db以及缓存中,C端先读取配置,然后进行数据补全(spi+自定义实现)
C端使用统一一个接口进行承载,针对不同的页面使用限流的方式,做好业务隔离
如何扛住C端的大流量,降低对B端的请求?
近端包的编写,优先读缓存,缓存没有走服务端,如果多个请求同时到达服务端,可以使用guava中的算法,将多个线程拦截。
如果缓存的value比较大,那么将key分多个级别,
如果缓存压力也很大,那么使用本地缓存解决。
如果涉及多个key,批量查询缓存,那么部分命中的场景就要考虑,
如果key不存在,那么放一个空值,+过期时间 。否则直接在近端包中拦截,降低缓存的浪费。
(4)页面的发布可以与小程序结合在一起,一个页面对应一个appid
(5)B端前端的一个组件模版,对应C端渲染的一个组件库,类似js语言编写,可以编译为多种语言。C端在访问的时候,根据页面获取组件id,然后服务端根据组件id,查询配置补全数据。前端拉取组件的代码+服务端的数据 进行渲染。
各种应用?
低代码平台
店铺
商品详情
会场
都可以使用这种思路进行设计以及实现