在共享的存储器中设置一个标志
共享存储器( Shared memory)和信号标志相似,但是更加通用。共享存储器是系统中每一个进程都可以获得的存储器。多任务系统通常是这样设计的:因为安全方面的原因,每个进程都是彻底与其他进程相独立地运行。不同的进程可以通过设置和连接特殊的内存块来共享数据,也就是共享数据块。这些块可以包含变量(或者其他任何类型的数据,但是P H P只支持确定变量的存储)。
这些恰好就是我们所希望的:能够在内存中某个地方存储布尔值而该内存单元可被每一个进程访问。共享存储器只在内存中起作用,它非常的快,几乎不需要内部操作。通过这一点,每一个聊天进程在共享存储器中寻找自己的变量,无论什么时候它找到用户输入区域设置的变量,它就指定一个数据库的查询。
为什么在结尾处数据交换还是基于数据库的呢?试着找出一些答案。
数据库还是为了某个主要的原因而使用的。共享存储器不被P H P的缺省设置所支持。你只需要在P H P中编辑支持它就可以了。然而,许多能够访问装备有P H P服务器的人没有重新编辑P H P的权限,因为他们只是能够使用服务器的空间,所以还没有足够的权限,或者另外可能的原因是P H P的某种特定设置。把数据库留作最终的数据交换的路径,这样把共享存储器作为一个可选的优化选择加以利用。不能利用它的人只有使其无效,但是仍然拥有一个完全起作用的聊天服务程序版本—运行起来性能较为差一点,但是确实能够运行。
当创建一个为广泛传播而设计的应用程序时,要时时提醒自己并非每个人都有和你相同的设置—可能也没有重新创建你的非常特殊设置的可能性。虽然P H P 9 9 %是不依赖于系统的,但是仍然有一些是依赖于系统的。仔细考虑是否应实施一定的情况处理,如果处理不好,可能会损失一大批用户。