Comments (13)
使用 docker-compose 重启的时候,如果不指定启动顺序,sb 应用在先于 nacos 启动的时候,就会去连接 nacos,
如果 nacos 在sb 应用重试之后还没有启动成功,就会启动失败。一般 docker 启动 nacos 初始化数据等等耗时会比较长。
- 看下 sb 应用中有没有设置 spring.cloud.nacos.discovery.username/password 属性;
- nacos server 在 2.x 版本之后加入了用户鉴权,
user not found
可能是用户配置不合适,可以参考下 nacos 鉴权部分看看; - nacos 初始化资源没有完成。
- 可以把 nacos 和 其他应用依赖的组件放到一个 compose 文件中,应用分开,当依赖组件启动成功的时候再去启动应用。
- 添加 nacos 健康检查,确定启动顺序。
healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:8848/nacos/v1/console/health/readiness" ] interval: 10s timeout: 20s retries: 10
from spring-cloud-alibaba.
使用 docker-compose 重启的时候,如果不指定启动顺序,sb 应用在先于 nacos 启动的时候,就会去连接 nacos, 如果 nacos 在sb 应用重试之后还没有启动成功,就会启动失败。一般 docker 启动 nacos 初始化数据等等耗时会比较长。
看下 sb 应用中有没有设置 spring.cloud.nacos.discovery.username/password 属性;
nacos server 在 2.x 版本之后加入了用户鉴权,
user not found
可能是用户配置不合适,可以参考下 nacos 鉴权部分看看;nacos 初始化资源没有完成。
- 可以把 nacos 和 其他应用依赖的组件放到一个 compose 文件中,应用分开,当依赖组件启动成功的时候再去启动应用。
- 添加 nacos 健康检查,确定启动顺序。
healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:8848/nacos/v1/console/health/readiness" ] interval: 10s timeout: 20s retries: 10
- 目前设置了spring.cloud.nacos.username&password属性,没有在spring.cloud.nacos.discovery.username/password这一层设置;
- 手动再重启应用就没问题了,但是我看nacos文档说client会一直重试,因为应用的进程还一直在并没有死掉,所以来咨询下;
- 这种方案考虑过,但是我们应用比较多。之前已经将docker-compose文件拆分成了多个,所以没法使用depends_on;
from spring-cloud-alibaba.
使用 docker-compose 重启的时候,如果不指定启动顺序,sb 应用在先于 nacos 启动的时候,就会去连接 nacos, 如果 nacos 在sb 应用重试之后还没有启动成功,就会启动失败。一般 docker 启动 nacos 初始化数据等等耗时会比较长。
看下 sb 应用中有没有设置 spring.cloud.nacos.discovery.username/password 属性;
nacos server 在 2.x 版本之后加入了用户鉴权,
user not found
可能是用户配置不合适,可以参考下 nacos 鉴权部分看看;nacos 初始化资源没有完成。
- 可以把 nacos 和 其他应用依赖的组件放到一个 compose 文件中,应用分开,当依赖组件启动成功的时候再去启动应用。
- 添加 nacos 健康检查,确定启动顺序。
healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:8848/nacos/v1/console/health/readiness" ] interval: 10s timeout: 20s retries: 10
- 目前设置了spring.cloud.nacos.username&password属性,没有在spring.cloud.nacos.discovery.username/password这一层设置;
- 手动再重启应用就没问题了,但是我看nacos文档说client会一直重试,因为应用的进程还一直在并没有死掉,所以来咨询下;
- 这种方案考虑过,但是我们应用比较多。之前已经将docker-compose文件拆分成了多个,所以没法使用depends_on;
大致明白了你的意思,就是按照文档描述,sb 应用会一直重试去尝试连接 nacos,而不是像是现在这样终止应用?😯
from spring-cloud-alibaba.
使用 docker-compose 重启的时候,如果不指定启动顺序,sb 应用在先于 nacos 启动的时候,就会去连接 nacos, 如果 nacos 在sb 应用重试之后还没有启动成功,就会启动失败。一般 docker 启动 nacos 初始化数据等等耗时会比较长。
看下 sb 应用中有没有设置 spring.cloud.nacos.discovery.username/password 属性;
nacos server 在 2.x 版本之后加入了用户鉴权,
user not found
可能是用户配置不合适,可以参考下 nacos 鉴权部分看看;nacos 初始化资源没有完成。
- 可以把 nacos 和 其他应用依赖的组件放到一个 compose 文件中,应用分开,当依赖组件启动成功的时候再去启动应用。
- 添加 nacos 健康检查,确定启动顺序。
healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:8848/nacos/v1/console/health/readiness" ] interval: 10s timeout: 20s retries: 10
- 目前设置了spring.cloud.nacos.username&password属性,没有在spring.cloud.nacos.discovery.username/password这一层设置;
- 手动再重启应用就没问题了,但是我看nacos文档说client会一直重试,因为应用的进程还一直在并没有死掉,所以来咨询下;
- 这种方案考虑过,但是我们应用比较多。之前已经将docker-compose文件拆分成了多个,所以没法使用depends_on;
大致明白了你的意思,就是按照文档描述,sb 应用会一直重试去尝试连接 nacos,而不是像是现在这样终止应用?😯
现在也不会终止进程,但是应用的状态不是正常的,会提示截图中的错误信息,接口也无法正常调用。
from spring-cloud-alibaba.
现在也不会终止进程,但是应用的状态不是正常的,会提示截图中的错误信息,接口也无法正常调用。
get.
from spring-cloud-alibaba.
get.
目前我能想到的一个方案是从部署角度解决的,在 docker compose 文件中 增加
entrypoint: /bin/sh -c "until curl -f http://nacos:8848/nacos/v1/console/health/readiness; do echo 'Waiting for Nacos...'; sleep 5; done && exec java -Dfile.encoding=UTF-8 -jar app.jar"
from spring-cloud-alibaba.
get.
目前我能想到的一个方案是从部署角度解决的,在 docker compose 文件中 增加
entrypoint: /bin/sh -c "until curl -f http://nacos:8848/nacos/v1/console/health/readiness; do echo 'Waiting for Nacos...'; sleep 5; done && exec java -Dfile.encoding=UTF-8 -jar app.jar"
可以提供一个简单复现的例子出来吗?可以是 github 仓库连接
from spring-cloud-alibaba.
好的,明天我发出来。
from spring-cloud-alibaba.
github仓库链接:https://github.com/cxhello/spring-cloud-nacos.git
![image](https://private-user-images.githubusercontent.com/49056040/301042164-4f628348-66fd-4413-9801-897ef550f6a7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyOTIwMDcsIm5iZiI6MTcxODI5MTcwNywicGF0aCI6Ii80OTA1NjA0MC8zMDEwNDIxNjQtNGY2MjgzNDgtNjZmZC00NDEzLTk4MDEtODk3ZWY1NTBmNmE3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjEzVDE1MTUwN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTdlYmNlZDlmMDQwN2VmZjYyMTJiYWQxMTNiYjhkNjBiZDExYzIyMmIxYTZmOWVjZDIzZTJiZjY4ZDEwNTQzYmMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.stHo_p4LCayyBBckoSV8hJ0K6pwA0A7scm1PlfeK1FI)
这个是我刚刚使用这个示例的的日志,进程还在,但是接口无法正常调用。
from spring-cloud-alibaba.
@cxhello 你好,这几天有点事情,耽搁了,你可以在配置文件中尝试加入以下配置
spring:
cloud:
nacos:
discovery:
fail-fast=false
sca 加入了注册中心的快速失败机制,具体可见
from spring-cloud-alibaba.
@yuluo-yx 我刚刚尝试了设置为false也是一种解决方案。另外我看到了一个issue
我想知道是不是这个issue中提到的bug导致的主进程未停止,是假死状态。
from spring-cloud-alibaba.
@yuluo-yx 我刚刚尝试了设置为false也是一种解决方案。另外我看到了一个issue
我想知道是不是这个issue中提到的bug导致的主进程未停止,是假死状态。
yep, 确实有此问题,使用的 sca 版本是 2.2.6.RELEASE,如 issue 中描述的那样,你可以切换到 2.2.7 版本看下问题是否解决了。🤔🤔
from spring-cloud-alibaba.
@yuluo-yx 感谢。
from spring-cloud-alibaba.
Related Issues (20)
- [AI]Refactoring Spring Cloud Alibaba AI apikey environment variables HOT 1
- docs: refactor roadmap.md HOT 1
- [AI]thread safety issues with TongYiChatClient TongYiChatClient线程安全问题 HOT 2
- [bug]:rocketmq example spring.cloud.fuction.definition configuration item error HOT 2
- [AI] custom chatOptions not working
- [AI] custom chatOptions not working HOT 5
- Client not connected, current status:STARTING HOT 26
- docs: Update the README document.
- [AI] SpringCloudAlibaba官网中AI部分的应用开发实例所对应的链接失效了! HOT 1
- CachingRouteLocator : Refresh routes error !!! HOT 1
- 声明式动态刷新不生效 HOT 5
- 配置格式为properties时,换行符\n读取后变成\\n HOT 2
- idea 导入项目无法自动识别源根, HOT 3
- [GLCC] Spring Cloud Alibaba ecosystem, add rpc component
- spring cloud gateway run failed,while built with native-image
- [GLCC] Spring Cloud Admin
- The dependency groupId of spring-ai-core in spring-cloud-starter-alibaba-ai module is not found. HOT 2
- [Optimize] Optimizing autoconfiguration properties in seata
- 2.2.10 版本,什么时候可以发布一个release版本呀 HOT 1
- spring-cloud-starter-dubbo 2021.0.1.0 中 feign-core版本大于11.8时,feign.MethodMetadata中queryMapEncoded方法不存在
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spring-cloud-alibaba.