Pertanyaan Jvm membutuhkan waktu lama untuk menyelesaikan alamat ip untuk localhost


Sepertinya saya memiliki masalah dengan kinerja "uji sbt" setelah meningkatkan ke macOS Sierra. Pada versi OS X sebelumnya butuh waktu sekitar 40-50 detik untuk menyelesaikannya. macOS Sierra kali jauh lebih tinggi dari itu. Terakhir saya lakukan adalah sekitar 15 menit. Waktu kompilasi hampir sama seperti pada 'El Capitan'.

Saya satu-satunya dari tim saya untuk mencoba macOS baru ini sehingga saya tidak tahu apakah itu hanya terjadi di mac saya atau itu adalah masalah universal.

Rekan saya memiliki masalah serupa di Ubuntu dan itu terkait dengan pembangkitan bilangan acak yang memperlambat tes - Respons layanan lambat Kali: Java SecureRandom & / dev / random

Sayangnya, itu tidak berhasil untuk saya. Awalnya saya mencoba itu pada JDK 8u54 dan kemudian mencoba memperbarui ke JDK 8u102 dan itu tidak membantu juga.

P.S. Saya menjalankan Macbook Pro Mid-2015 2.8GHz i7, 16GB ram, 1TB SSD.


75
2017-09-22 10:38


asal


Jawaban:


Saya memiliki masalah yang sama. Tomcat pergi dari 15 detik hingga 6 menit untuk menginisialisasi konteks musim semi setelah peningkatan ... menonaktifkan csrutils tidak menyelesaikan masalah bagi saya.

saya terpecahkan masalah dengan menambahkan nama host Mac saya (mis. Macbook.local, atau apa pun nama Mac Anda) di /etc/hosts file yang dipetakan ke 127.0.0.1 alamat serta ::1 seperti ini:

127.0.0.1   localhost mbpro.local
::1         localhost mbpro.local

Jika Anda tertarik, Anda dapat menemukan beberapa detail tentang masalah ini dan solusinya di sini: https://thoeni.io/post/macos-sierra-java/

Di postingan saya juga link ke a proyek github untuk membantu mengatasi masalah dan memvalidasi solusi.

Masalahnya terkait (saya percaya) tentang bagaimana resolusi nama host lokal bekerja dan bagaimana kelas java.net.InetAddr sedang mengambil alamat. Saya memverifikasi dengan beberapa rekan dan tampaknya itu tidak terjadi pada semua orang yang meng-upgrade ke Sierra, tapi saya masih menyelidiki akar perubahan ini.

Solusinya tetap sama antid0te diimplementasikan dan dikerjakan segera.


228
2017-09-26 09:16



Jawaban yang benar: Jvm membutuhkan waktu lama untuk menyelesaikan alamat ip untuk localhost

Untuk orang yang malas:

sudo sed -i bak "s^127\.0\.0\.1.*^127.0.0.1 localhost $(hostname)^g" /etc/hosts
sudo sed -i bak "s^::1.*^::1 localhost $(hostname)^g" /etc/hosts
sudo ifconfig en0 down
sudo ifconfig en0 up

23
2017-11-28 21:03



Saya memiliki masalah yang sama. Aplikasi spring-boot saya membutuhkan 60 detik untuk memulai di Sierra melawan 25 detik di Yosemite.

Saat melakukan debug, saya menyadari bahwa masalahnya berasal dari InetAddress.getLocalHost (). Saya mengubah file host saya untuk menambahkan nama host saya untuk 127.0.0.1 dan :: 1 dan sekarang aplikasi mulai secepat sebelumnya.


5
2017-09-27 16:02



Mengaktifkan mis. System Preferences> Sharing> Remote Login, menghasilkan hostname yang secara otomatis diberi alamat IP.

Ketika orang-orang melihat masalah setelah peningkatan, masuk akal untuk mengasumsikan bahwa 10.12 mengubah cara hostname diselesaikan, yaitu setidaknya dengan 10.11 hostname selalu diselesaikan, sementara dengan 10.12 ini diselesaikan hanya jika layanan diaktifkan di System Preferences> Berbagi (seseorang dengan 10,11 bisa mengkonfirmasi ini).


2
2018-01-04 23:24



Saya pikir ini adalah masalah umum dengan OS baru. Saya memiliki masalah yang sama: Saya memiliki aplikasi web yang digunakan untuk tomcat. Pada El Capitan itu dimulai dalam 10 detik, sekarang dibutuhkan 95 detik dan klien (aplikasi desktop berbasis Swing) tidak dapat terhubung ke itu (atau setidaknya butuh banyak waktu). Saya pikir itu adalah sesuatu di sekitar komunikasi jaringan, karena aplikasi konsol tes sederhana berjalan dengan baik.


1
2017-09-23 07:51



Itu adalah masalah aneh setelah menginstal pembaruan Mac Sierra 10.12 (16A323). Di file host dengan di bawah ini diurutkan masalah.

::1         localhost <myhostname>.local   <--- Was already present
127.0.0.1   localhost <myhostname>.local   <--- Solved the tomcat loading issue

Anda bisa mendapatkan myhostname dengan perintah $hostname di mana saja di terminal.


0
2017-12-21 03:37



Jawaban yang diterima membantu saya! Hanya menambahkan ini di sini menjelaskan apa yang saya pikir masalah bagi saya adalah:

My Hostname adalah sesuatu seperti "My Mac" yang tidak dapat diselesaikan. Dalam pengaturan itu menunjukkan kepada saya bahwa komputer dapat diatasi dengan mymac.local

Saya pikir itu adalah ruang dan berganti nama mac saya menjadi "my.mac" tetapi bahkan ini tidak membantu karena dns secara otomatis ditambahkan masih mymac.local

Menambahkan my.mac ke / etc / hosts membantu kemudian.

Jadi saya tebak apa masalah sebenarnya adalah: Ini hanya terjadi ketika nama komputer Anda berisi apa pun yang bukan surat. Ini secara otomatis dihapus oleh os dan kemudian nama host dan entri dns tidak cocok. (yang bisa diperbaiki secara manual saya menambahkannya)


0
2017-07-06 06:57



Bisa jadi karena beberapa bug dengan cara Mac OS Sierra didirikan. Coba lakukan apa yang disebut reset SMC atau reset PRAM untuk melihat apakah itu akan memperbaiki Mac Anda. Ini adalah pengaturan ulang perangkat lunak dan tidak akan membahayakan data pengguna Anda. Mereka mungkin mengharuskan Anda untuk mengatur ulang waktu sistem setelah restart.

Tetapi mereka berpotensi memperbaiki masalah Anda. Anda juga dapat melihat beberapa tips yang disebutkan tentang pemecahan Mac OS Sierra di sini - http://elcapitanslow.com/mac-os-sierra-slow-what-to-do/


-5
2017-11-11 05:35