首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在服务器端自动执行函数

如何在服务器端自动执行函数
EN

Stack Overflow用户
提问于 2011-08-19 17:15:40
回答 4查看 155关注 0票数 0

最近我正在创建一个拍卖网站。我想让它像当用户出价的项目,有一个人工智能投标人,以提高用户。比如说用户在5秒后在item1上出价,AI投标人也会自动出价item1。你知道如何在5秒后自动执行它吗?

EN

回答 4

Stack Overflow用户

发布于 2011-08-19 17:38:49

一个简单而有效的解决方案可能是将所有未来的出价与“到期日”和所有要出价的信息存储在一个列表中。然后,每隔5秒左右,您可以循环通过列表,并进行所有的出价,如果他们是到期的。这个系统将是可扩展的,并将为大量的投标工作。当然,理想情况下,这应该在不同的线程中运行。

这有点像在servlet中重新实现“类似cron”的作业管理,但是我看不到任何开箱即用的解决方案可以满足您的需求。

我不确定我是否回答了你的问题,希望如此。

问候你,斯特凡

票数 0
EN

Stack Overflow用户

发布于 2011-08-19 17:42:06

取决于您实际使用的技术,您可以使用EJB计时器,例如,在出现新的bid时启动计时器ejb,在计时器超时时(一段时间后)该方法执行并更新bid。

票数 0
EN

Stack Overflow用户

发布于 2011-08-19 19:12:38

标准servlet解决方案

  1. 创建一个Filter,将其映射到您的bid servlet的url模式。
  2. 在您的doFilter()中,在您的filterChain.doFilter()调用之后(即,在请求被servlet/JSP处理之后),在未来5秒内安排一个操作(您可以使用标准的java ScheduledExecutorService)
  3. 在您计划(您的任务)的Runnable实现中,放置AI bid。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7119442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档