東立電子書城是台灣最具規模的正版漫畫電子書平台之一,擁有大量活躍使用者。目前平台面臨以下核心技術挑戰:
| 項目 | 現況 | 影響 |
|---|---|---|
| 圖片防盜版 | Azure SAS Token(2 分鐘過期) | 下載後即為完整原圖,保護效果有限 |
| 閱讀速度 | SAS 過期導致 CDN 無法長期快取 | 翻頁需重新取得 Token,體驗卡頓 |
| 書架載入 | 單次載入需 50~100 次資料庫查詢 | 書架頁面回應緩慢 |
| 技術框架 | .NET Core 2.1(2018 年發布) | 已終止支援,無安全性更新 |
防盜版強度提升的同時,閱讀速度將大幅改善
參考日本 JUMP+ 等主流漫畫平台採用的業界標準做法:將漫畫頁面切割為多個區塊並打亂順序後儲存,閱讀器依據還原參數在前端重組正確畫面。
直接下載只會取得中間的打亂版本,無法直接閱讀
| 指標 | 現有 SAS 方案 | 新 Scramble 方案 | 改善 |
|---|---|---|---|
| 防盜版強度 | 有限(原圖可下載) | 高(下載為亂序圖片) | 大幅提升 |
| CDN 快取命中率 | ~5% | ~95% | 19 倍 |
| 翻頁速度 | 慢(需重取 Token) | 快(CDN 直接回應) | 顯著提升 |
| API 負載 | 高(每頁產生 SAS) | 低(僅回傳參數) | 大幅降低 |
80% 的使用者透過網頁閱讀,改善 Web 體驗的投資報酬率最高。
保留現有 Canvas 架構優勢,整合 Scramble 還原功能,一次繪製完成
RTL(日漫)/ LTR(韓漫)/ 直式 / 橫式 / 跨頁,一份程式碼全部支援
預載前後頁面,搭配 CDN 高命中率,翻頁接近零等待
不變動系統架構,純粹優化資料查詢邏輯,使用者立即有感。
將 50~100 次逐筆查詢合併為 3 次批次查詢,減少 95% 以上的資料庫往返
針對高頻查詢路徑建立適當索引,加速每次查詢的回應時間
改為資料庫端分頁,不再將全部書籍載入記憶體
熱門書籍資料快取 5 分鐘,大幅減少重複查詢
| 指標 | 優化前 | 優化後 |
|---|---|---|
| 書架載入查詢次數 | 50~100 次 | 3 次 |
| 書架回應時間 | 數秒 | < 500ms |
| 資料庫負載 | 高 | 大幅降低 |
從已終止支援的 .NET Core 2.1 升級至長期支援的 .NET 8,取得安全性更新與效能提升。
持續接收安全性修補(.NET 8 LTS 支援至 2026 年 11 月)
.NET 8 在 HTTP 處理、JSON 序列化等方面有顯著效能改善
配合遷移將 API 金鑰、資料庫密碼等敏感資訊移至 Azure Key Vault
| 階段 | 工作內容 | 預估時程 | 風險 |
|---|---|---|---|
| Phase 1 | 圖片打亂 + CDN 優化 | 3 週 | 低風險 |
| Phase 2 | Web 閱讀器重寫 | 3 週 | 低風險 |
| Phase 3A | 書架查詢效能優化 | 2 週 | 低風險 |
| Phase 3B | .NET 8 平台遷移 | 4 週 | 中風險 |
| 總計(Phase 1+2 可平行) | 約 8~10 週 | ||
東立是台灣知名品牌,擁有大量活躍使用者
任何升級都必須確保零非預期停機
| 階段 | 回滾方式 | 回滾時間 |
|---|---|---|
| Phase 1 | Feature Flag 關閉 → 回到現有 SAS 模式 | < 1 分鐘 |
| Phase 2 | URL 導向切回舊版閱讀器 | < 1 分鐘 |
| Phase 3A | 程式回復 + 重新部署 | < 10 分鐘 |
| Phase 3B | Deployment Slot Swap 回復 | < 30 秒 |
每個階段的新功能與舊功能並行運作,而非直接替換
灰度發布,從小範圍驗證到全量切換
每個階段可獨立回復,不影響其他階段的成果
從「可下載原圖」提升至業界標準保護等級
CDN 命中率從 ~5% 提升至 ~95%
查詢次數從 50~100 次降至 3 次
現代化介面,消除已知程式錯誤
升級至受支援框架,程式碼減量 60%
API 運算量與資料庫查詢量大幅降低