我正在尝试建立一种方法来记录我和我的朋友一直在我们的视频游戏服务器上的所有时间。我找到了一个api,该api返回了给定服务器IP地址的在线播放器的JSON文件。
我计划每30秒接收一个新的JSON文件,然后通过弄清楚播放器何时开启以及何时不再关闭来记录玩家的游戏会话。
问题是这是我第一次在我的网站上使用这样的数据库。我想使用(并将使用)Golang来检索JSON文件并更新我的播放器日志的MySQL数据库。
问题:我不知道如何使Golang文件每30秒运行一次以更新数据库。我可以找到一个简单的程序来轻松获取数据并轻松更新本地数据库,但是我迷失了如何使它在我的网站上运行以及如何每30ish秒24/7运行一次。我习惯使用简单的html表单和其他与用户输入有关的内容进行CRUD,但我从未想过要与网站交互分开更改数据库
我的问题是否有标准解决方案?我在想这一切错吗?我有道理吗上帝真的存在!!
答案 0 :(得分:1)
您需要一个称为 cron 的UNIX / Linux子系统来执行此操作。 cron允许您绑定程序以在计算机上的特定间隔运行。
Bluehost的cron支持使您可以运行php脚本。我认为他们不支持运行其他类型的程序。
如果您有其他可以运行golang程序的始终在线的计算机,则可以在那里运行它。但是,为此,您将必须配置Bluehost以允许与MySQL服务器的外部连接,以便程序可以连接。向他们的客户支持人员询问。
专业提示:每30秒更新一次的频率可能太高,无法在Bluehost等共享服务上使用。即使您完全控制服务器,这种频率也很难管理。