已稳定运行 2+ 年
督友 DuYou
一款为“强迫症”设计的轻社群自律监督应用。
采用 Hybrid Cloud 混合云架构,核心解决弱网/断网环境下的数据确定性问题。
产品内核与规划
“有人盯,才坚持;坚持着,就遇见”
隐私优先 (Privacy First)
习惯内容、目标与进度仅自己可见。在群组内仅同步“已打卡/未打卡”状态,充分保护用户隐私的同时利用社交压力形成“强迫症式自律”。
双社交场景 (Social Synergy)
结合熟人社交(高粘性的家庭/情侣监督)与陌生人社交(按兴趣/地域匹配且以自律程度为推荐标准),将“变好”与“交友”深度绑定。
演进路线图 / Roadmap
PHASE 01 / MVP
极简自用版
- • 私密习惯管理
- • 日历热力图统计
- • 微信群机器人同步
PHASE 02 / SOCIAL
兴趣社交化
- • 熟人小群/兴趣群
- • 补签卡/连胜保护
- • 属性勋章系统
PHASE 03 / BUSINESS
商业化探索
- • 保证金挑战赛
- • 个性化增值服务
- • 高端行业/兴趣圈子
API 优先
RESTful 架构 / Spring Boot 驱动
自动降级
弱网环境下 0 感知切换本地存储
云端托管
微信云托管容器化部署 / MySQL 持久化
系统架构设计
“架构的价值不仅仅在于功能的实现,更在于系统在极端边界情况下的鲁棒性。”
01 用户界面层 (UI Layer)
原生微信小程序开发,包括首页打卡、习惯管理、多维统计及个人中心。极致追求 60fps 的流畅交互体验。
02 存储与中间件层 (Storage Layer)
核心逻辑:API 优先 + 本地缓存双模式。封装 `storage.js` 实现数据双写与读屏蔽,确保数据在离线状态下的连贯性。
03 基础设施层 (Infra Layer)
基于微信云托管(Cloud Container)部署,后端采用微服务化设计的 Spring Boot,数据库使用高可用的云托管 MySQL。
APP UI (Mini Program)
API CLIENT
LOCAL STORAGE
WECHAT CLOUD CONTAINER
SPRING BOOT + MYSQL
核心逻辑:自动降级机制
当 API 请求失败(由于网络波动或环境异常)时,系统会自动切换至本地持久化层。
utils/storage.js
// 网络请求失败时自动降级
async function getHabits() {
if (useApi) {
try {
const habits = await api.getHabits();
wx.setStorageSync('habits', habits); // 成功后同步缓存
return habits;
} catch (error) {
console.warn('API 访问失败,自动回退到离线模式');
return wx.getStorageSync('habits') || []; // 离线降级
}
}
return wx.getStorageSync('habits') || [];
}