我正在开发一个需要通过套接字与任何服务器(python)通信的Web应用程序。我的Web应用程序将是客户端套接字。
我读了一些关于EJB和Socket的替代方案。 (JCA被指出,但对我的简单客户来说太多了)
为了简化解决方案,我正在考虑创建一个EJB @Singleton并创建在其中工作的线程。
你有什么建议吗?
我的简单想法:
的Singleton
@Startup
@Singleton
public class SingletonBean {
private List<EventMonitor> monitors = new ArrayList<>();
@PostConstruct
private void postConstruct() {
EventMonitor monitor = new EventMonitor("192.168.1.1", 23);
monitors.add(monitor);
monitor.start();
monitor = new EventMonitor("192.168.1.2", 23);
monitors.add(monitor);
monitor.start();
}
}
监视器
public class EventMonitor extends Thread {
private String host;
private int port;
public EventMonitor(final String host, final int port) {
this.host = host;
this.port = port;
openConnection();
}
@Override
public void run() {
// read socket message and persist
// I think persist here is not a good idea, any better idea?
}
}
有什么建议吗?
感谢您的时间。