我们正在为ColdFusion(9)网站创建培训模式。
系统将允许我们的用户在登录后通过点击链接从生产模式切换到培训模式。
当它们切换时,数据源将被切换,从而可以安全地修改数据。
我们还将使用SubEthaSMTP Java项目实施测试SMTP服务器,以捕获从培训模式发送的电子邮件,并将其显示给网页中的用户。
我们可以毫不费力地将SMTP服务器作为独立的流程或服务启动。
更好的解决方案是在用户切换到训练模式时将服务器作为ColdFuson运行时的一部分启动。
我们将创建一个真正的Java线程,该线程将在服务器级别范围内持续任何培训会话的长度,然后是一些任意的超时时间。如果服务器超时并启动了新的培训会话,我们将启动一个新的SMTP服务器。
因此,我的基本问题是,以这种方式在ColdFusion运行时中运行正在进行的线程是一个坏主意吗?
答案 0 :(得分:1)
我看不出这样做有什么问题,虽然您应该测试看看SubEthaSMTP使用的资源,并确保它不会给您带来问题。它看起来具有最小的依赖性(基本上只是SLF4J,ColdFusion 9& 10已经提供)
从example page看起来很容易设置并进入长期运行的范围。我认为您选择服务器范围是正确的,因为您可能在使用应用程序或任何更易变的问题时遇到问题,因为存在应用程序范围超时并被重置的情况,但是您将丢失对Mail的所有引用服务器实例。
请用您的调查结果更新帖子,因为我有兴趣看到您找到的内容。