是否可以在不运行网络服务器的情况下运行 Eureka 客户端? 'spring-cloud-starter-eureka' 工件自动引入 'spring-boot-starter-web'。这是为什么?是否可以在不实际启动网络服务器的情况下运行客户端?
我的问题是启动网络服务器会消耗大约 200mb 的内存。这是一个问题,因为为我想使用 eureka 的应用程序分配的内存范围为 256-512mb。
最佳答案
您似乎不需要您的这项服务来处理 Web 请求,但仍然需要它来访问您的 eureka 服务器。
所以从应用程序中禁用网络。
spring.main.web-environment=false
并使用 Discovery 客户端获取服务。
如果这还不够好,则删除 eureka 依赖项并使用 (RestTemplate) 对您的 eureka 服务器进行 rest 调用以查询您需要的服务。 Eureka 为此公开了一个休息端点。所以它甚至不能被基于非 java/jvm 的应用程序使用。
你可以看看this我前段时间写的项目,看看如何做到这一点。
如果那还不够好。然后你可能必须编写你应该首先编写的纯 Java 代码,除非你有理由使用 spring(Transaction,JPA,web,security 等)之类的框架。
关于java - 没有网络服务器的 Spring Cloud Starter Eureka,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39767758/