我想在我的网站上安装一个游戏。互动需要很多工作,主要是将游戏选项移动到我的网站的管理选项控制面板。为了避免交互工作,我正在考虑创建一个类来存储选项,并通过Global调用该类。
Class Game_Vars{
var ...;
... ...;
}
Global $game_options;
if ( !isset( $game_options ) ) $game_options = new Game_vars();
通过这种方式,选项不会存储在数据库中,并且每次游戏脚本运行时都会加载Class.php。有近70个选项,这是否对性能来说太重了?
这取决于数据的static
,这告诉您更改数据必须有多容易。如果数据永远不会改变,也不需要接口来改变它,那么使用类并将数据存储在内存中并没有什么问题。否则,可以使用数据库来更好地管理数据(但是使用Singleton或单个静态变量等设计模式从数据库中获取一次数据)。
你不会遇到任何内存/硬件性能/效率问题,当存储一个类的70个数据成员到任何半现代服务器的内存。特别是(正如Pastor Bones所指出的),无论您选择哪个选项(数据库或文件),所有选项都将在某个时刻加载到内存中。
对于较重的站点,有时文件访问速度比mySQL快。如果您的选项是只读的,并且您将有大量的并发用户(并发连接),那么使用文件而不是mySQL表来存储您的选项可能会更好。
mySQL的问题不在于数据量(相对),而在于连接的数量。