Я должен реализовать свой проект как микросервисную арку. Для этого я делаю одно примерное приложение, используя Spring Boot, добавляя два no. У меня есть три службы. Вот моя регистрация-server.yml. Аналогично у меня есть account-server.yml
и user-service.yml
. Я хочу позвонить add()
, используя UserService.java
без концепции RMI, так как я использую Spring Boot. Также мне не нужен звонок REST, так как это будет дорого для моего проекта. Как я могу вручную написать код для lookup()
в UserService
, чтобы он мог позвонить в Adder?Доступ к микросервису с использованием Spring Boot
@EnableAutoConfiguration
@EnableDiscoveryClient
public class AddService {
public static int add(int x,int y){
int z=x+y;
System.out.println("The sum of no. is "+z);
return z;
}
public static void main(String[] args) {
System.setProperty("spring.config.name", "add-service");
SpringApplication.run(AddService.class, args);
}
@SpringBootApplication
@EnableEurekaServer
public class RegistrationService {
public static void main(String[] args) {
// Tell server to look for registration.properties or registration.yml
System.setProperty("spring.config.name", "registration-service");
SpringApplication.run(RegistrationService.class, args);
}
@SpringBootApplication
@EnableDiscoveryClient
public class UserService {
public static void main(String[] args) {
System.setProperty("spring.config.name", "registration-service");
SpringApplication.run(UserService.class, args);
}
eureka:
instance:
hostname: localhost
client: # Not a client, don't register with yourself
registerWithEureka: false
fetchRegistry: false
server:
port: 1111 # HTTP (Tomcat) port
Если вы не хотите использовать технологию удаленного доступа, тогда не используйте микросервисы. С eureka вы получаете ip/port для обслуживания, и вам нужно как-то называть его. Либо используйте Spring Remoting (RMI, HTTP и т. Д.), Либо используя REST. Если это не то, что вы хотите, то микросервисы не для вас. –
, так как я получаю данные о местоположении от eureka, я могу назвать его. Но его не нужно, я должен создать удаленный объект obj, как в случае rmi.That удаленный obj вызывает внутренний метод lookum() rmi.Cant, я создаю свой собственный поиск() и назвать это? –
Действительно ли вы прочитали главу о переходе к весне? Судя по тому, что вы здесь объясните, у вас нет ... –