![](/img/trans.png)
[英]Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 90 seconds of launch (Java Discord bot on Heroku)
[英]Spring Boot project hosted on Heroku - Web process failed to bind to $PORT within 90 seconds of launch
我在 stackoverflow 上閱讀了許多類似的問題,但沒有任何幫助。
我創建了一個 spring 啟動 maven 后端項目並托管在 heroku 上。
但是,當我嘗試從前端調用時,它會在瀏覽器中顯示這樣的錯誤。 GET https://hoyamu-springboot-backend.herokuapp.com/fetch/bag 503
當我查看 heroku 的日志時,它顯示這樣的錯誤。 Web process failed to bind to $PORT within 90 seconds of launch
。 我做了一切,但沒有任何效果。
我的文件如下,
Heroku 應用日志
020-08-08T21:32:21.232432+00:00 heroku[web.1]: State changed from crashed to starting
2020-08-08T21:32:25.103258+00:00 heroku[web.1]: Starting process with command `java -Dserver.port=48348 $JAVA_OPTS -jar target/hoyamu-0.0.1-SNAPSHOT.jar`
2020-08-08T21:32:27.226023+00:00 app[web.1]: Setting JAVA_TOOL_OPTIONS defaults based on dyno size. Custom settings will override them.
2020-08-08T21:32:27.230034+00:00 app[web.1]: Picked up JAVA_TOOL_OPTIONS: -Xmx300m -Xss512k -XX:CICompilerCount=2 -Dfile.encoding=UTF-8
2020-08-08T21:32:28.818160+00:00 app[web.1]:
2020-08-08T21:32:28.818210+00:00 app[web.1]: . ____ _ __ _ _
2020-08-08T21:32:28.818211+00:00 app[web.1]: /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
2020-08-08T21:32:28.818214+00:00 app[web.1]: ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
2020-08-08T21:32:28.818294+00:00 app[web.1]: \\/ ___)| |_)| | | | | || (_| | ) ) ) )
2020-08-08T21:32:28.818323+00:00 app[web.1]: ' |____| .__|_| |_|_| |_\__, | / / / /
2020-08-08T21:32:28.818414+00:00 app[web.1]: =========|_|==============|___/=/_/_/_/
2020-08-08T21:32:28.819695+00:00 app[web.1]: :: Spring Boot :: (v2.2.6.RELEASE)
2020-08-08T21:32:28.819727+00:00 app[web.1]:
2020-08-08T21:32:29.047717+00:00 app[web.1]: 2020-08-08 21:32:29.044 INFO 4 --- [ main] com.udith.hoyamu.HoyamuApplication : Starting HoyamuApplication v0.0.1-SNAPSHOT on 50382c68-eaab-4b3c-ac0c-a881a18e4a0b with PID 4 (/app/target/hoyamu-0.0.1-SNAPSHOT.jar started by u8138 in /app)
2020-08-08T21:32:29.048863+00:00 app[web.1]: 2020-08-08 21:32:29.048 INFO 4 --- [ main] com.udith.hoyamu.HoyamuApplication : No active profile set, falling back to default profiles: default
2020-08-08T21:32:30.083462+00:00 app[web.1]: 2020-08-08 21:32:30.081 INFO 4 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2020-08-08T21:32:30.224960+00:00 app[web.1]: 2020-08-08 21:32:30.224 INFO 4 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 130ms. Found 18 JPA repository interfaces.
2020-08-08T21:32:31.310818+00:00 app[web.1]: 2020-08-08 21:32:31.310 INFO 4 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 48348 (http)
2020-08-08T21:32:31.327532+00:00 app[web.1]: 2020-08-08 21:32:31.327 INFO 4 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2020-08-08T21:32:31.327720+00:00 app[web.1]: 2020-08-08 21:32:31.327 INFO 4 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.33]
2020-08-08T21:32:31.405048+00:00 app[web.1]: 2020-08-08 21:32:31.404 INFO 4 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2020-08-08T21:32:31.405289+00:00 app[web.1]: 2020-08-08 21:32:31.405 INFO 4 --- [ main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 2272 ms
2020-08-08T21:32:31.669531+00:00 app[web.1]: 2020-08-08 21:32:31.669 INFO 4 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2020-08-08T21:32:31.931057+00:00 app[web.1]: 2020-08-08 21:32:31.930 INFO 4 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.4.12.Final
2020-08-08T21:32:32.109028+00:00 app[web.1]: 2020-08-08 21:32:32.108 INFO 4 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.0.Final}
2020-08-08T21:32:32.249430+00:00 app[web.1]: 2020-08-08 21:32:32.249 INFO 4 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2020-08-08T21:32:33.786599+00:00 app[web.1]: 2020-08-08 21:32:33.786 INFO 4 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2020-08-08T21:32:33.850851+00:00 app[web.1]: 2020-08-08 21:32:33.850 INFO 4 --- [ main] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect
2020-08-08T21:33:55.347291+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 90 seconds of launch
2020-08-08T21:33:55.368253+00:00 heroku[web.1]: Stopping process with SIGKILL
2020-08-08T21:33:55.465503+00:00 heroku[web.1]: Process exited with status 137
2020-08-08T21:33:55.499546+00:00 heroku[web.1]: State changed from starting to crashed
2020-08-08T21:50:58.187914+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/fetch/bag" host=hoyamu-springboot-backend.herokuapp.com request_id=db721f39-aab3-4a3f-82e9-6495dc6bc7a8 fwd="112.135.40.125" dyno= connect= service= status=503 bytes= protocol=https
檔案
web: java -Dserver.port=$PORT $JAVA_OPTS -jar target/hoyamu-0.0.1-SNAPSHOT.jar
應用程序屬性
hibernate.dialect=org.hibernate.dialect.MySQL57Dialect
spring.datasource.url=jdbc:mysql://remotemysql.com:3306/MMgqawaw
spring.datasource.username=username
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=update
spring.jpa.hibernate.show_sql=true
spring.jpa.hibernate.format_sql=true
spring.jpa.show-sql=true
```
What should I do?
經過幾次小型調查,我可以找到解決問題的方法。
錯誤Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 90 seconds of launch
可能由於兩個原因而發生。
(部署后將 <BUILT_APP_NAME_HERE> 替換為您的應用名稱)
web: java $JAVA_OPTS -jar -Dserver.port=$PORT target/<BUILT_APP_NAME_HERE>.jar
[或者]
給*的時候不需要指定名字
web: java $JAVA_OPTS -jar -Dserver.port=$PORT target/*.jar
[或者]
web: java $JAVA_OPTS -jar -Dspring.profiles.active=production target/<BUILT_APP_NAME_HERE>.jar --port $PORT
解決方案是,我們必須增加應用程序的啟動時間。 您可以按照此鏈接執行此操作。 (這個鏈接有時候會報錯,換個瀏覽器或者手機瀏覽器試試)
https://tools.heroku.support/limits/boot_timeout
但是,不建議將啟動時間增加 120 秒以上。
但是,在實際情況下,您應該找到為什么需要花費大量時間來建立數據庫連接的解決方案。
我能夠使用此 Procfile 內容運行我的 spring mvc 應用程序:
web: java $JAVA_OPTS -jar 目標/依賴/webapp-runner.jar --port $PORT 目標/*.war
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.