Cara Mengkonfigurasi Spring Boot Tomcat

1. Ikhtisar

Aplikasi web Spring Boot menyertakan server web tertanam yang telah dikonfigurasi sebelumnya secara default. Namun dalam beberapa situasi, kami ingin mengubah konfigurasi default untuk memenuhi persyaratan khusus.

Dalam tutorial ini, kita akan melihat beberapa kasus penggunaan umum untuk mengkonfigurasi server tertanam Tomcat melalui file application.properties .

2. Konfigurasi Tomcat Tertanam Umum

2.1. Alamat Server dan Porta

Konfigurasi paling umum yang mungkin ingin kami ubah adalah nomor port :

server.port=80

Jika kami tidak menyediakan parameter server.port, parameter ini disetel ke 8080 secara default .

Dalam beberapa kasus, kami mungkin ingin menyetel alamat etwork yang harus diikat oleh server. Dengan kata lain, kami menentukan alamat IP tempat server kami akan mendengarkan :

server.address=my_custom_ip

Secara default, nilai ditetapkan ke 0.0.0.0 yang memungkinkan koneksi melalui semua alamat IPv4. Menetapkan nilai lain, misalnya localhost - 127.0.0.1 - akan membuat server lebih selektif.

2.2. Penanganan Error

Secara default, Spring Boot menyediakan halaman web kesalahan standar . Halaman ini disebut Label Putih . Ini diaktifkan secara default tetapi jika kami tidak ingin menampilkan informasi kesalahan apa pun, kami dapat menonaktifkannya:

server.error.whitelabel.enabled=false

Path default ke Whitelabel adalah / error . Kita dapat menyesuaikannya dengan mengatur parameter server.error.path :

server.error.path=/user-error

Kami juga dapat mengatur properti yang akan menentukan informasi tentang kesalahan yang disajikan. Misalnya, kami dapat menyertakan pesan kesalahan dan pelacakan tumpukan:

server.error.include-exception=true server.error.include-stacktrace=always

Tutorial kami Penanganan Pesan Pengecualian untuk REST dan Kustomisasi Halaman Kesalahan Label Putih menjelaskan lebih lanjut tentang penanganan kesalahan di Spring Boot.

2.3. Koneksi Server

Saat menjalankan pada penampung sumber daya rendah, kami mungkin ingin mengurangi beban CPU dan memori. Salah satu cara untuk melakukannya adalah dengan membatasi jumlah permintaan simultan yang dapat ditangani oleh aplikasi kita. Sebaliknya, kami dapat meningkatkan nilai ini untuk menggunakan lebih banyak sumber daya yang tersedia untuk mendapatkan kinerja yang lebih baik.

Di Spring Boot, kita dapat menentukan jumlah maksimum thread pekerja Tomcat:

server.tomcat.max-threads=200

Saat mengonfigurasi server web, mungkin berguna juga untuk menyetel waktu tunggu sambungan server . Ini menunjukkan jumlah waktu maksimum server akan menunggu klien untuk membuat permintaan mereka setelah menghubungkan sebelum koneksi ditutup:

server.connection-timeout=5s

Kami juga dapat menentukan ukuran maksimum header permintaan:

server.max-http-header-size=8KB

Ukuran maksimum badan permintaan:

server.tomcat.max-swallow-size=2MB

Atau ukuran maksimum dari seluruh permintaan posting:

server.tomcat.max-http-post-size=2MB

2.4. SSL

Untuk mengaktifkan dukungan SSL di aplikasi Spring Boot kami, kami perlu mengatur properti server.ssl.enabled menjadi true dan menentukan protokol SSL:

server.ssl.enabled=true server.ssl.protocol=TLS

Kita juga harus mengkonfigurasi kata sandi, jenis, dan jalur ke penyimpanan kunci yang menyimpan sertifikat:

server.ssl.key-store-password=my_password server.ssl.key-store-type=keystore_type server.ssl.key-store=keystore-path

Dan kita juga harus menentukan alias yang mengidentifikasi kunci kita di penyimpanan kunci:

server.ssl.key-alias=tomcat

Untuk informasi selengkapnya tentang konfigurasi SSL, kunjungi HTTPS kami menggunakan sertifikat yang ditandatangani sendiri di artikel Spring Boot.

2.5. Log Akses Server Tomcat

Log akses Tomcat sangat berguna saat mencoba mengukur jumlah klik halaman, aktivitas sesi pengguna, dan sebagainya.

Untuk mengaktifkan log akses, cukup setel:

server.tomcat.accesslog.enabled=true

Kita juga harus mengkonfigurasi parameter lain seperti nama direktori, awalan, akhiran, dan format tanggal yang ditambahkan ke file log:

server.tomcat.accesslog.directory=logs server.tomcat.accesslog.file-date-format=yyyy-MM-dd server.tomcat.accesslog.prefix=access_log server.tomcat.accesslog.suffix=.log

3. Kesimpulan

Dalam tutorial ini, kita telah mempelajari beberapa konfigurasi umum server tertanam Tomcat . Untuk melihat lebih banyak kemungkinan konfigurasi, silakan kunjungi halaman dokumen resmi properti aplikasi Spring Boot.

Seperti biasa, kode sumber untuk contoh-contoh ini tersedia di GitHub.