春節已過去一個月,向着 2022 年目標,重新出發。
開始新產品
新產品是一個為網站和App提供會員、訂閲、付費功能的服務,會集成多種支付渠道,只需幾行代碼就能讓你的網站和App支持付費訂閲。對標產品是國外的 RevenueCat。
這個產品的想法已經醖釀了一年多,考慮到面向開發者的產品太難賺錢,所以沒有很快着手去做。在和很多開發者交流過程中,我感覺到大家需要這樣的服務,所以應該有足夠價值、值得做,能賺點零花錢也好。
目前我調研的情況是,國外有兩個 RevenueCat 的競品,但國內沒有發現類似產品(歡迎提供線索)。有些關聯但並不相同的是內容(知識)付費平台,例如:Patreon、麪包多、愛發電等。
這個產品的前身是蟻閲的會員功能,我會把它做成支持多租户,功能相對完善,開箱即用的服務。
這一期主要做了:
- 集成微信支付渠道,把果蔬時節的支付代碼遷移了過來。
- 重構代碼,部署方式改成騰訊雲-雲函數(內部項目: ezfaas)。
- 統一的用户鑑權服務(SSO登錄),正在開發(內部項目: ezauth)。
新產品正在開發,可能還需要 2 - 3 個月上線,敬請期待。
雲函數部署
我的所有新產品都會首先考慮雲函數部署,按量付費、免運維、低成本、彈性擴容這些特點非常適合做創業項目,全是優點。以下是我整理的完整部署方式。
網站通常包含後端服務,數據庫,前端靜態文件。數據庫直接買雲廠商提供的。
後端服務
後端服務通過「雲函數」部署,採用容器鏡像部署方式,不建議用內置的各類編程語言模板。
- 通過 Dockerfile 和 multi-stage build 製作很小的鏡像,通常不超過 100M,推送到雲廠商的鏡像倉庫。
- 創建雲函數,選擇容器鏡像部署,用環境變量做程序配置。
- 寫一個部署腳本,一鍵打包和更新部署鏡像。
前端靜態文件
前端靜態文件通過「對象存儲」部署。
- 對象存儲創建空間(Bucket),開啓靜態網站服務。
- 通過命令行工具,將打包好的靜態文件上傳到對象存儲。
- 寫一個部署腳本,一鍵打包和上傳文件。
網關和CDN
前後端部署之後,再通過「API網關」,將不同路徑的請求轉發到前端和後端。網關會有一個默認的 HTTPS 訪問地址。
添加 CDN(全站加速/動靜加速)域名,源站為 API 網關地址,配置 DNS CNAME 解析到 CDN 地址,此處配置好靜態文件緩存規則。
再生成免費的HTTPS證書,雲廠商都有提供,配置到 CDN 域名上,實現全站 HTTPS 訪問。
網站監控
最後可以部署 Gatus 服務(健康監控),配置每隔幾分鐘請求一次後端服務。這樣可以使雲函數保持活躍狀態,減少冷啓動時間,同時也可以監控異常情況。
用户鑑權服務
用户鑑權服務類似 Auth0 和 Authing,我想把我所有產品的用户模塊都統一起來,畢竟每個產品都寫一套登錄註冊就太麻煩了。但這類核心服務我不想依賴第三方,需要自己完全可控,更放心也更省錢。也不能靠自己開發,時間成本太高。
所以我調研了一些開源的替代品,最後選擇基於 Django OAuth Toolkit 定製開發。
Django插件,最靈活
https://github.com/jazzband/d...Django + 中文 LGPL
https://github.com/longguikej...Java 老牌項目
https://github.com/keycloak/k...golang
https://github.com/tarent/log...golang + 中文
https://github.com/casdoor/ca...golang 功能較多
https://github.com/ory/kratos
選擇 Django 插件主要原因是我很熟悉 Python,使用最靈活,方便按需修改,其他選項供參考。
我到了新城市
最近兩週天氣轉暖,我來到了福建的一個小城市,租了一間小房子住。生活更簡單,日常瑣事更少了,最大的變化是大幅減少了吃飯時間。
我現在早餐吃包子雞蛋,午飯和晚飯都吃 若飯,用 Blender bottle 不鏽鋼搖搖杯,非常好清洗,5分鐘吃完一頓飯,每天大約能節省 2 小時。
除了節省時間,調配好的代餐其實營養更均衡,沒有辛辣油膩和過多糖分。但是和父母在一起時,沒法這樣吃,老一輩的觀念接受不了。
升降桌和工學椅也配好了,生產力拉滿。周邊環境還不錯,時常散散步,勞逸結合。
<img alt="出租房" src="https://blog.guyskk.com/static/2022-03-11/house.jpeg" width="35%">
<img alt="工作台" src="https://blog.guyskk.com/static/2022-03-11/desktop.jpeg" width="62%">
最後
通過「RSS閲讀器」或者關注公眾號「自宅創業」可以訂閲博客更新,也可以在 關於我 頁面找到我的聯繫方式,歡迎交流!
本文由 Guyskk的博客 發佈,歡迎聯繫和交流!