我正在从事一项涉及使用30 imacs实验室的艺术/编程项目。我希望以允许我在同一时间对每个脚本执行脚本的方式同步它们。
最终产品是在flash播放器中,但如果我能够通过网页同步一种数据信号,我就可以同时运行该脚本。到目前为止,我的尝试都有致命的缺陷。
我正在使用的网络有限。我没有管理员权限,但我认为这不重要。我在所有30个imacs上登录我的用户帐户,运行页面或脚本以便我可以运行我的商品。我的第一次尝试涉及直接运行Flash播放器。 起初我尝试使用系统时间并让脚本每两分钟运行一次。这是不可靠的,因为即使同步我的用户帐户中的时间,imacs之间也存在差异。四分之一秒甚至太多了。 我的下一次尝试涉及让一个mac充当主机,将变量写入文本文件。所有其他29个Flash播放器每秒多次检查此文件中的更改。这没用。它适用于3或4台计算机,但随后会出现片状。服务器上的压力太大,闪光灯也不可靠。我想我会尝试使用本地共享对象,但这不可靠。我试过让主机写入30个文件并让每个mac只读取一个,但这也不起作用。我尝试使用本地连接,但它不是为两台以上的计算机制作的。
我的下一次尝试涉及在我的网络服务器上运行php服务器时间脚本并让30台计算机检查该文件的时间将近30秒。我不认为我的托管计划支持这一点,因为服务器将在几秒钟后停止工作。太多的要求或东西。 虽然我没有使用远程服务器取得成功,但使用另一种聪明的方法可能会更加可靠。
我确实有一个kludge解决方案作为最后一根稻草(你可能会笑):我会采用音频线并购买29个音频分配器并插入所有这些。然后我会在本地运行Flash播放器并让它在执行时执行听到声音。我以前做过这个。所有你需要做的就是触摸电线的另一端,手指静电就足以将其关闭。
我现在能做什么?我已经开始和关闭这个项目一年,只是想让它继续下去。如果我可以在实验室的30台计算机上同步一个网页,我可以将数据传递给闪存,它可能会工作。我对远程服务器更有信心,但如果我能使用本地mac网络做到这一点,那就太好了。
答案 0 :(得分:1)
好的,这就是我如何使用flash和php的套接字连接解决我的问题。基本上,首先要设置一个客户端脚本,该脚本将安装在所有30个imac'客户端'机器上。假设所有计算机都在专用网络上。当这些客户端被激活时,它们通过使用套接字连接到服务器(php)。 php服务器脚本将具有这些客户端连接的ip和端口,处理客户端连接池,消息路由等,并且服务器将始终运行。套接字连接允许通过来回发送消息进行服务器 - 客户端交互,这些消息可以触发要做的事情。您应该阅读有关套接字连接/服务器客户端交互的更多信息这只是我如何完成项目的一个小小的总结。
Simple tutorial on socket/server client connection using php and flash