このアプリでできること
自社ECサイト・フリマ的チャネル・実店舗という3つの販売窓口が、同じ1つの在庫を共有している状態を再現したデモです。どの窓口で商品が売れても、他の窓口の在庫表示にすぐ反映され、在庫が1個しかない商品が複数の窓口で同時に売れてしまう「二重販売」を防ぐ仕組みを確認できます。
使い方
- EC・フリマ・実店舗の3つの画面(
/ec.html・/flea.html・/store.html)をブラウザの別タブでそれぞれ開いてください。
- どれか1つの画面で「購入する」(実店舗の画面では「販売確定」)ボタンを押すと、他の画面の在庫表示も自動的に「売り切れ」へ切り替わります。
- 「🔥 3チャネル同時発火」ボタンを押すと、3つの窓口から同時に注文が来た状況を再現できます。在庫が1個であっても、成立する注文は必ず1件だけになることを確認できます。
- より詳しい生データ(登録商品・注文履歴・処理ログ)は
/admin/products・/admin/orders・/admin/logs から確認できます。
注意点・既知の制限
- これはポートフォリオ提示用のデモ環境です。実際の決済・出荷は行われません。
- 実際のEC基盤にある「在庫の一時確保」「複数の倉庫拠点への振り分け」等の機能は含まれていません。二重販売を防ぐ仕組み1点に絞った簡易版です。
- 画面へのリアルタイム反映は、タイミングによって数百ミリ秒程度の遅れが出ることがあります。
- 操作の記録はサーバー内のログファイルに保存されますが、メールやチャットへの自動通知はまだつながっていません(今後の拡張余地です)。
仕組み・使用技術
- Express(Node.jsのWebサーバーフレームワーク)
セキュリティ面で入っているもの