MaxScale JSON缓存规则

时间:2017-08-06 12:15:20

标签: mysql json caching mariadb maxscale

我想知道如何将JSON缓存规则正确格式化为MaxScale。我需要为多个数据库和多个用户存储多个表,如何正确格式化这个?

在这里,我可以在一个数据库上存储一个表,并将其用于一个用户。

{
    "store": [
        {
            "attribute": "table",
            "op": "=",
            "value": "databse_alpha.xhtml_content"
        }
    ],
    "use": [
        {
            "attribute": "user",
            "op": "=",
            "value": "'user_databse_1'@'%'"
        }
    ]

}

我需要创建规则来为多个用户存储多个数据库,例如table1table2user1table3table4访问user2 ......和儿子。

感谢。

2 个答案:

答案 0 :(得分:1)

在Maxscale 2.1中,只能为缓存过滤规则提供一对存储/使用值。

我在MariaDB Jira上为MaxScale取得了opening a feature request的自由,因为它似乎尚未请求此功能。

答案 1 :(得分:0)

我认为,作为解决方法,您应该能够创建两个缓存过滤器,使用不同的规则集,然后在您的服务中使用

filters = cache1 | cache2

请注意,如上例所示,使用完全匹配选择表意味着必须解析该语句,这会带来显着的性能成本。如果不需要匹配或使用正则表达式执行,您将获得更好的性能。