我在PHP中构建了一个在SaaS多租户架构上运行的应用程序。到目前为止,我有一个大约有20列的配置表 - 它为每个SaaS实例存储变量,例如语言,名称,css文件位置,自定义URL和favicon /徽标名称,然后在配置文件中将其选为数组。配置文件包含在所有脚本和页面中。
必须有一种更好的方法来存储这些变量,使它们可供应用程序使用,而不是从表中选择20多条记录,将它们设置为变量,在PHP脚本的补充过程中使用它们并将它们传递给用户。这给我的MySQL服务器增加了不必要的负载,我敢说它也可能挑战Apache2。
实现这一目标的好方法是什么?曲奇饼?会议? XML文件?
我将PHP会话ID存储在数据库中并考虑在用户登录时收集变量并将其添加到文件名中具有相同会话ID的纯文本或XML文件中。然后,我可以在配置文件上运行垃圾收集的cronjob(在数据库中查找文件名X,如果没有找到unlink X,则以最简单的形式)。
目前,我正在考虑使用Cookie或创建包含值的会话ID的文件。这两个选项都将消除收集这些数据库值的需要,并在每次加载页面时将它们设置为变量。
思考和建议?
谢谢你, 迈克尔