# Kos 的代表案例 # Kos's case studies Canonical: https://www.aikos.cc/cases/ ## 支付與錢包系統 技術負責人・帶領 13 人以上團隊・2024–2026 高併發交易下,回呼重送或網路重試都可能讓同一筆款項被處理兩次;會員餘額與資金流水必須隨時對得上。 - 支付冪等、分散式鎖與餘額一致性機制,同一筆交易只入帳一次 - 補償與重試機制處理失敗交易,搭配風控稽核 - 以 Kafka、Redis、MongoDB 建立事件驅動架構 - 自動對帳流程,加上交易監控與告警 - 以重送、併發與補償情境的測試驗證上述機制 - 不重複扣款: 冪等與分散式鎖 - 自動對帳: 補償與稽核流程 公司名稱與營運數據暫不公開。可公開的是測試情境:回呼重送、併發請求與補償,沒有另附線上交易量。 ## 新聞採集與全文搜尋平台 傲創科技・資深工程師・2019–2024 每接一個新聞網站就要寫一套爬蟲,約需 2 天;全文搜尋回應約需 2 秒。 - 以 Hyperf、Swoole 建立高併發採集服務,RabbitMQ 調度與削峰 - 可配置式採集框架,規則存在 MongoDB,新站點改用設定接入 - Elasticsearch 全文搜尋,Canal 將 MySQL 即時同步到索引 - Redis 與 APCu 多層快取,降低資料庫負載 - 約 2 天 → 半天內: 新站點接入時間 - 約 2 秒 → 300 毫秒內: 搜尋回應時間 - 十萬級: 每日處理新聞資料 - 數千篇: 尖峰每分鐘採集量 搜尋時間比較的是全文搜尋上線前與上線後的回應,不是公開的百分位測試,也沒有留下查詢樣本數。 ## 履歷問答助手 本站・規則工具+只看履歷的模型 訪客會自由提問。模型若編造公司、數字或日期,履歷就不可信;模型逾時或失敗時,頁面也不能沒有答案。 - 頁面先把已知問題交給履歷工具:公司、技能、技術棧、學歷、證照、帶隊經歷與聯絡方式 - 對不上的問題交給只看精簡履歷的模型,並附上問題命中的那一段工作內容 - 模型沒有工具、沒有金鑰。問題最多 300 字,10 秒逾時,並限制來源網域與請求頻率 - 逾時、非成功回應或空回答時,改回規則答案 - 同一份履歷: 已知問題 - 只依履歷回答: 其餘問題 - 回到規則答案: 模型失敗時 就是本頁的問答助手,可以直接試。沒有另附評分基準。 --- ## Payment and wallet systems Tech lead, 13+ person team, 2024–2026 Under high concurrency, a resent callback or a network retry can process the same payment twice, and member balances must always match the ledger. - Payment idempotency, distributed locks, and balance consistency checks, so each transaction posts once - Compensation and retry for failed transactions, with risk-control audits - Event-driven architecture on Kafka, Redis, and MongoDB - Automated reconciliation, plus transaction monitoring and alerts - Verified with tests for resent callbacks, concurrent requests, and compensation - No double charges: Idempotency and locks - Auto reconciliation: Compensation and audits The company name and business figures are not public. What can be stated is the test coverage: resent callbacks, concurrent requests, and compensation. No live transaction volume is published. ## News crawling and full-text search AoChuang Technology, senior engineer, 2019–2024 Every new news site needed its own crawler, about 2 days of work, and full-text search took about 2 seconds. - High-concurrency crawling on Hyperf and Swoole, scheduled and buffered with RabbitMQ - A configurable crawling framework with rules in MongoDB, so new sites are added by configuration - Elasticsearch full-text search, kept in sync with MySQL in real time through Canal - Multi-level caching with Redis and APCu to take load off the database - ~2 days → under half a day: New site onboarding - ~2 s → under 300 ms: Search response time - 100K+: News items processed daily - Thousands: Items per minute at peak The search time compares the response before and after full-text search went live. It is not a published percentile, and the query sample size was not kept. ## Resume Q&A assistant This site · resume tools plus a resume-only model Visitors ask free-form questions. A model that invents employers, numbers, or dates would make the resume untrustworthy, and a model failure should still leave an answer on the page. - The page sends known questions to resume tools: company, skill, stack, education, certifications, leadership, and contact - Other questions go to a model that sees a compact resume plus the bullets of the one job the question matches - The model has no tools and no secrets. Questions stop at 300 characters, the call times out at 10 seconds, and requests are limited by origin and rate - A timeout, a failed response, or an empty answer falls back to the rule-based reply - Same resume data: Known questions - Resume only: Other questions - Rule fallback: When the model fails This is the assistant on this page. There is no separate score.