我们正在使用cancan来授权访问~130控制器,就目前的情况而言,这个过程每个授权需要大约100毫秒......这是超慢的(它只需要大约一秒钟来渲染菜单栏)
是否有分解cancan的技术可以简化每次授权所需的工作,或者通常加快它的速度?
有没有人可以分享任何康康体验?
让我试着更好地解释一下......我们已经将cancan与自定义角色系统相结合。每个角色都有许多权限,并且基于是否允许用户执行某些操作,可以动态构建cancan规则以允许它。最后,只有一个ability.rb文件,其中包含几百行规则,这些规则是基于当前登录用户角色权限的动态规则。 (角色也是动态的。)
数据库查询已经过优化,所有内容都提前加载,并且没有浪费的查询来获取任何内容,但每次检查通过100ms传递。