Qualcuno può spiegare con un esempio come funziona un Embedded Tomcat Cluster. Un bilanciatore di carico sarebbe necessario?
Poiché utilizziamo il tomcat incorporato, in che modo due file jar separati (ciascuna un'applicazione Web autonoma con la propria istanza Tomcat incorporata) sa dove si trovano e ciascuno conosce il proprio stato, ecc.?
Ecco il codice che ho finora che è solo un normale tomcat incorporato senza alcun clustering che formuli uno dei file jar menzionati sopra:
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.Writer;
public class Main {
public static void main(String[] args)
throws LifecycleException, InterruptedException, ServletException {
Tomcat tomcat = new Tomcat();
tomcat.setPort(8080);
Context ctx = tomcat.addContext("/", new File(".").getAbsolutePath());
Tomcat.addServlet(ctx, "hello", new HttpServlet() {
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
Writer w = resp.getWriter();
w.write("Hello, World!");
w.flush();
}
});
ctx.addServletMapping("/*", "hello");
tomcat.start();
tomcat.getServer().await();
}
}
Fonte: java dzone