我认为在php中使用简单的matchmaker代码很酷。想法是应用程序连接到服务器或特定网页,网页将IP和最后的X ips打印并在页面上打印(他的第一个)
问题是当5 ppl在同一秒内点击页面时会发生什么。我该如何处理?我不能使用全局/共享内存?所以我需要将IP写入文件并每次读取/写入它们(10倍同一秒)会不好?我想它可以缓慢但我想要尽可能优化它。
存储在mysql数据库中是否更好?
答案 0 :(得分:1)
我建议使用APC来记忆内存中的信息..这只适用于1台服务器。对于多个服务器,您应该查看类似memCacheD的内容。
答案 1 :(得分:1)
我不太清楚为什么你会这么做,除了作为一个学习练习,但你基本上会在某个地方坚持信息,如果只是在相对较短的时间内,你需要合理的交易语义
可能最简单的选择是选择数据库; MySQL会很好,如果你真的不需要存储数据很长时间,那么你也可以使用内存表 - 使用MEMORY
(或HEAP
)存储引擎。以这种方式使用数据库意味着您不必过多担心冲突的并发写入等等。
答案 2 :(得分:0)
您不需要在文件中写入请求者的IP - Apache已经在为您执行此操作。只需grep / var / log / httpd / access_log文件的最后几行(如果你在Linux上),你就会找到你需要的关于服务器收到的最后一个请求的信息 - IP,referer,URL。它们是序列化的。
再见!