springcloud 는 등록 포트 와 서비스 시작 포트 가 다 릅 니 다.

1831 단어 자바
수요
openscoring 을 사용 하여 실시 간 예측 을 하여 springcloud 에 통합 시 키 려 고 합 니 다.openscoring 은 기본적으로 jersey 프레임 워 크 를 사용 하여 http 를 실현 합 니 다.코드 를 적 게 고치 기 위해 간단 한 수정 만 했 습 니 다. ServerApplication. class 가 시 작 된 후에 openscoring Server 를 시작 합 니 다.
@Component
@ConfigurationProperties(ignoreUnknownFields = true, prefix = "com.pactera.rd.service.openservice")
public class OpenService implements ApplicationRunner{

	@Setter
	int  openPort = 8080;
	@Override
	public void run(ApplicationArguments args) throws Exception {
		System.out.println("MyApplicationRunner class will be execute when the project was started!");
		System.out.println(openPort);
		String [] config = new String[2];
		config[0] = "--port";
		config[1] = "" + openPort;
		Main.execute(Main.class, config);
	}

}

문제 가 있다
springcloud 를 사용 하 는 것 은 서비스 등록 과 발견 을 위 한 것 입 니 다. 만약 에 제 가 server. port = 8080 openscoring Server 감청 8081 을 설정 하면 eureka 등록 정 보 는 8080 포트 이 고 실제 적 으로 openscoring Server 의 감청 정 보 를 등록 하 는 것 이 좋 습 니 다.
1. eureka. instance. non - secure - port 설정
eureka.instance.non-secure-port = ${com.pactera.rd.service.openservice.openport}
2. eureka. instance. instance - id 설정
참고 문서:https://blog.csdn.net/shog808/article/details/77161071 상황 을 묵인 하 다
  eureka.instance.instance-id=${spring.cloud.client.hostname}:${spring.application.name}:${spring.application.instance_id:${server.port}}

설정 만 바 꾸 면 됩 니 다. 최종 설정 은 다음 과 같 습 니 다.
com.pactera.rd.service.openservice.openport = 50052

eureka.instance.non-secure-port = ${com.pactera.rd.service.openservice.openport}

eureka.instance.instance-id=${spring.cloud.client.hostname}:${spring.application.name}:${spring.application.instance_id:${com.pactera.rd.service.openservice.openport}}


좋은 웹페이지 즐겨찾기