1.立项意图:当时3D打印国内已经有不少C端玩家,但是国内好的模型网站不多。而买了3D打印,玩家会持续有模型的需求。所以考虑仿照国内T站等知名网站的形式,做一个积分制、设计师可以在网站上售卖模型、提现的网站。网站的收益预期来自于几部分,第一是设计师提现时的分润费用,第二是未来可能的流量变现。运营过程中,第一部分有收益,第二部分跟一些3D打印生态品牌商合作也实现了部分收益。
2.业务上初期考虑从国外模型网站爬取现有模型作为起步,所以有爬虫的部分。爬虫分为两部分,一部分是按类目、排序、分页爬取对应模型网站的模型,分为存量爬取和增量爬取。每爬取一个模型,保存模型的id作为后续爬取的去重UUID。另一部分是批量上传到模型网站的功能。一个是本地客户端,可以选择爬取后模型的保存文件夹;另一个是网站服务端的接受API。
3.起步期后,考虑由设计师上传模型为主,所以网站上设计师的模型管理的增、删、改和查的功能。由于模型可能有文件不全、格式错位、涉黄涉暴等问题,所以对应的管理员后台有模型的审核相关功能:审核通过、驳回、模型下载、模型查看 - 这里前端使用了3D模型加载控件,可以360度查看模型细节。
4.针对C端用户,网站有注册、充值、下载、交易等功能,模型有列表 - 分页、详情等功能。同时C端用户也可以是设计师,使用的是同一套用户体系。
5.交易充值使用微信充值,RMB:积分比例为1:10。设计师可以发起提现,提现需要扣除收付费,申请通过后,管理员会转账给设计师。这里并没有做线上的转账功能,考虑是后期业务做大了会增加。
6.建模设计上来讲,有管理员、设计师、C端用户三种角色,使用的是同一个账号体系。有3D打印模型一个业务模型主体,带审批流的状态机。网站内容为了通信实现了站内信功能。管理员可以向全体或者复数设计师发送站内信。网站原域名为www.threeing.cn,运营3年多后已下线,由于拓竹品牌的崛起,以及拓竹https://makerworld.com.cn/zh?from=bambulab.cn的兴起,网站竞争不过就下线了。
可以简单将网站理解为 拓竹makerworld的简化版本。
1. 整体架构,爬虫端使用本地Jar形式,使用sqlite数据库。考虑初衷为爬虫为不定期爬取需求,由本地发起即可。
2. 网站服务端采用成熟的springboot框架,阿里云单机ECS 2C2G 部署。有独立的测试环境一套用于日常开发和测试。数据库采用单节点的MySQL数据库,后续并发量并不高,峰值1000+DAU,日常600+DAU,所以并没有扩容和HA的打算。网站上线运营三年多的过程中,并没有发生大故障或者任何数据丢失的情况。
3.微信支付API接口不定期会有未返回充值状态的情况,大概1-2个月会有一次,反馈排查无果,推断可能为小服务商资源保障不足导致 - 也许时机器资源超卖。增加了状态预警,如充值10分钟后,状态未返回则给管理员发站内信通知,管理员可以在后台手动维护用户积分。
4. 我是整个项目的发起方、需求整理方以及相当一部分的后端代码实现、数据库DBA、实际运营人员。