ショートURLシステム
2015年12月17日
Pythonを用いたWebシステムの構築例を紹介します。
メールマガジンやSNSで使用するURLを短くしたいという要望があります。Bitlyなどのサービスを利用することも可能ですが、特殊なパラメータ管理や独自ドメインでの運用、ログ解析の柔軟性を持たせるために、PythonのWebフレームワークを用いて構築しています。
構築に使用しているツール
- サーバ: AWS EC2 ・・これは特に必要条件ではない
- データベース: AWS RDS (MySQL) ・・これは必要条件ではない
- Python 2.7 ・・まだPython3の採用をしていない
- Pyramid ・・特に管理側の構築に使用
- SQLAlchemy ・・O/Rマッパーとして使用
- その他関連モジュール
使用事例
- 某ECサイト向けメールマガジン用 ・・パラメータの自動付与でミスが減り効果が出ているとのこと。
- 某大学向け 学内周知やイベント告知用 ・・決められたドメインのみを対象にしているため、学内関係者が誰でもショートURLを作れ、一元管理ができている
技術的なポイント
ユーザの使用法にあったURLの作成、管理画面などを作れる事がメリットとなっている。
このサービスは安定的に、継続すること大事なので、ショートURLを受取りリダイレクトする部分と管理側とで区分けして考える必要がある。できれば、冗長性を保っておきたい。