【Java で Webアプリ開発入門】Spring Boot 起動ポートの変更

何の記事??

Java で Web アプリ開発する際に、よく利用されるフレームワーク「Spring Boot」で起動ポートを変更する方法を記載します。

やり方が簡単すぎて淡白になってしまいそうなため、今回はコラム的にポートを変更することで何が嬉しいのか、何のためにそれをやるのかを解説したいと思います!!


設定方法

設定ファイルに下行を追加してください。
application.properties(または yamll でしょうか)に起動ポートを指定してあげることになります。

今回は 3030 ポートに変更してみましょう。

server.port = 3030

これだけ!!

ちなみに何も指定しないデフォルト状態では 8080 ポートになっています。
server.port = 0 とするとランダムになるみたいです。(すみません何に使えるのかはわかっていません)

それではまた次回〜・・・というボケは置いといて、、、じゃあこれ何の役に立つの??という話をしていきます。


ポートを変更する意味

実際に Webサービスを開発しようとすると、APサーバーとフロントサーバーを分けることがあります。もしかしたら業務系のバックオフィスも開発する必要があるかもしれませんね。

それぞれを通信で繋ぐことで一つの Webサービスとして完成させるわけです。

例えば、あなたが API 開発の担当で
「実際にローカル環境できちんと結合できてるか確認したいな」
という時に、まず自分が開発した API を起動すると 8080 ポートが埋まります。
フロントのコードを落とし起動したら・・・フロントも 8080 ポート使用していてポート被りみたいなことが起きてしまいますね。

さて上記は、そもそも先に決めとけよという話ですが、当たり前のようにキックオフしたら誰かが決めてくれているので、その工程を知らずに過ごして自分が舵を取る立場になって忘れます(笑)

マイクロサービスアーキテクチャ

さてここで最近流行りのマイクロサービスアーキテクチャの話をしたいと思います。

マイクロサービスアーキテクチャは、メルカリやクックパッドなどのテック企業が導入したことで日本でもとてもメジャーな思想になりました。

サービスや機能単位でモジュールを分けることで小さいコンポーネントを多く作成します。
リリースのモジュール単位を小さくなることや、機能追加が容易であるメリットから多くの新サービスはマイクロサービスアーキテクチャに沿って作られています。

上で説明したフロント、サーバーサイド、BO ではなく、もっと細かい機能(会員登録、レポート出力など)で分けるということですね。

マイクロサービスアーキテクチャではすごく細かくサーバー分けたりするのを拝見しますが、個人的見解ではある程度まとまったものはポート分けて同じサーバーに配備で良いのでは?と思っています。
極端な話、「会員登録」「登録情報変更」「プロフィール画像投稿」は同じ会員系とまとめて同じサーバーでポートを分ける程度で良いと思っています。

マイクロサービスアーキテクチャだからと、なんでもかんでも分けるのは逆に効率が悪い気がしています。そんな時に今回のポート変更を行なって安全に開発を進めましょう ← 無理やり!!笑


最後に

今回はタイトルの内容への解決方法が簡単だったためコラムを書かせていただきました。
受託SES(常駐はしてないが)から自社開発に転職した時、特に楽しかったのがサービスをグロースさせていくことです。そのためにはリリースや拡張を楽にしたい・・・となりアーキテクチャに興味を持ち始めました。

次々に興味が湧くことが多い IT の分野はまだまだ奥が深いですね。

それではまた次回〜