はじめに
デプロイという言葉をはじめてきいて「??」だったので調べたことをアウトプット。用語に関してはまだまだ「?」が多いし、調べても忘れる率が高いので、再びであったときは都度調べている状態💦
最低でも調べた事実があることで「あぁ、あったあった。たしかこんな感じ」というような状態にしたい
デプロイについて
Deployは、ソフトウェアやシステムの開発において、完成したプログラムやコードを実際の運用環境(プロダクション環境)に配置し、利用可能な状態にするプロセスを指しています
英単語でDeploy(デプロイ)となっていますが、語源はラテン語の「displicare」(広げる、展開する)になります
デプロイの前と後の違い
デプロイをする前と後でどのような違いがあるのか表にまとめてみました。
項目 | デプロイ前 | デプロイ後 |
---|---|---|
環境 | 開発環境又はステージング環境で動作 | 本番環境で動作 |
テスト | 自動テストや手動テストが実施される | ユーザーが実際に利用。 リアルタイムでフィードバックが得られる |
公開状況 | ユーザーに非公開 | ユーザーに公開 利用可能 |
利用可能機能 | 新機能や変更点は開発者やテスターのみ利用可能 | 新機能や変更点がユーザーに提供される |
バグ修正 | 発見されたバグは修正される | 新たなバグが発見される可能性がある |
パフォーマンス | ローカル環境やステージング環境でのパフォーマンスを確認 | 本番環境でのパフォーマンスを実際に確認できる |
デプロイによるメリットとデメリット
デプロイすることによるメリットとデメリットは何があるのか、こちらも表の形式にしました
項目 | メリット | デメリット |
---|---|---|
ユーザーアクセス | 新機能や修正がユーザーにすぐ提供 | デプロイでの不具合がユーザーに影響与える |
フィードバック収集 | リアルタイムでユーザーからフィードバック得られる | リアルタイムでのバグ報告やクレームが増える可能性ある |
競争力維持 | 継続的な改善で競争力維持 | 頻繁なデプロイが開発チームに圧力となる |
パフォーマンス | 本番環境でのパフォーマンスを確認できる | パフォーマンス問題の発生 |
デプロイ自動化 | CI/CDツールによるデプロイの自動化で効率化 | 自動化プロセスに問題あると大規模影響の可能性ある |
セキュリティ | 最新のセキュリティアップデートを迅速に反映可能 | デプロイのミスでセキュリティリスク発生する可能性ある |
デプロイを調べてみて
今回デプロイについて調べてみて、世の中のアプリは結構な頻度でデプロイを行っているんだな、と実感することができました。意外と身近にデプロイがいた!
何気なく使用しているものがどんな風に動いているかを知る機会をえられるってすごいこと。大人になっても「なぜ」は必要だな。
デプロイを知って、少しレベルアップになったなら幸いです。
参考