マイクロサービスアーチとしてプロジェクトを実装する必要があります。そのために私は2つのnoを追加してSpring Bootを使って1つのサンプルアプリをやっています。私は3つのサービスを持っています。ここに私の登録server.ymlがあります。同様にaccount-server.yml
とuser-service.yml
があります。私はadd()
にUserService.java
を使ってRMIの概念なしで呼びたいと思っています。なぜなら私はSpring Bootを使用しているからです。また、私のプロジェクトではコストがかかるので、RESTコールを望んでいません。 lookup()
のコードを手動でUserService
に書き込んで、それでAdderを呼び出せますか?Springブートを使用してマイクロサービスにアクセス
@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
リモート処理技術を使用したくない場合は、マイクロサービスを使用しないでください。ユーレカを使うと、サービスのためのIP /ポートを手に入れ、何とかそれを呼び出す必要があります。 Spring Remoting(RMI、HTTPなど)を使用するか、RESTを使用します。それがあなたが望むものでないならば、マイクロサービスはあなたのためではありません。 –
私はユーレカから位置の詳細を取得しているので、私はそれを呼び出すことができます。しかし、必要はありません私はrmiの場合のようにリモートobjを作成する必要があります。リモートobjはrmi.Cantの内部ルックアップ()それを呼びますか? –
実際に春のリモーティングの章を読んでいますか?あなたがここで説明したことから判断すると、あなたはそうではありません... –