止まらない仕組み · カスタム開発
食品輸入会社の倉庫のための、スキャンから出荷までの梱包システム
食品輸入会社は、冷蔵・冷凍の注文を複数の配送会社を通じて毎日出荷しています。梱包担当者が商品を一つずつスキャンし、注文がそろった瞬間に正しい送り状が印刷されます。その裏で、配送会社のPDFは自動で分割されて注文と照合され、システム全体を毎日バックアップし、毎週フェイルオーバーしています。
課題
この会社は食品を輸入し、日本全国へ出荷しています。その多くは冷蔵・冷凍で、配送会社も一社ではありません。どの注文も、正しい商品を詰め、正しい送り状をつけて送り出す必要がありました。
配送会社は送り状を注文ごとには渡してくれません。届くのはPDFです。その日の送り状がすべて入った一つのファイルのこともあれば、1枚ずつのファイルの束のこともあり、配送会社によって異なります。どの送り状がどの注文のものかを、誰かが突き合わせなければなりませんでした。
さらに、梱包の現場は会社の中で止められない部分です。忙しい朝にサーバーが止まれば、注文は出荷されません。
行ったこと
倉庫内のサーバーで動く梱包システムを構築しました。梱包担当者は商品を箱に入れるたびにスキャンし、注文がそろうとシステムが送り状を印刷します。それ以外の処理は、担当者から見えないところで行われます。
- PDFの処理。 事務所のスタッフがその日の注文データと配送会社の送り状PDFをアップロードします。システムはPDFを1枚ずつに分割し、それぞれから注文番号を読み取り、注文データと照合して正しい注文に紐づけます。店頭受取の送り状はシステム自身が作成します。一致しないものは梱包を始める前に報告され、出荷の直前に見つかることはありません。
- 梱包台への印刷。 注文が完了すると、サーバーが梱包台の小さなアプリケーションへ送り状を送り、その梱包台のプリンターで印刷します。ファイルを開いたりプリンターを選んだりする必要はありません。
- 自動バックアップ。 一日の終わりに、データベースとすべての送り状ファイルを一つのアーカイブにまとめてバックアップ用ドライブに保存し、検証したうえで古いアーカイブを整理します。バックアップのたびに外部の監視サービスへ報告するため、バックアップの漏れや失敗は見過ごされず、通知が届きます。
- 毎週のフェイルオーバー。 同じ構成の2台目のサーバーが待機しています。毎週、待機サーバーを最新のバックアップから復元して切り替えるため、フェイルオーバーは障害時に初めて試すものではなく、倉庫の日常業務になっています。
- ネットワークを開けずに遠隔保守。 サーバーにはプライベートな仮想ネットワーク経由で接続して更新とサポートを行い、倉庫のルーターのポートは一切開けていません。
変わったこと
送り状と注文の突き合わせは、もう誰の仕事でもありません。印刷される送り状は、作業台の上の箱のためのものです。そして毎週バックアップをもう一台のサーバーに復元しているので、復旧が確実に機能することを、会社はすでに実際に確かめています。