WSO2 identity server使用2000策略时速度非常慢

WSO2 identity server使用2000策略时速度非常慢,wso2,wso2is,Wso2,Wso2is,我正在尝试使用postgresql对WSO2 identity server 4.5进行基准测试,以衡量在没有太糟糕的决策时间的情况下可以支持多少策略 我有一个java程序,可以使用org.wso2.carbon.identity.authority.stub-4.2.0.jar中的AuthenticationPolicyAdminServiceStub上传我的所有策略: adminStub.addPolicy(myPolicy) 在100个第一个策略之后,上载时间有一个重要的下降(每个策略超

我正在尝试使用postgresql对WSO2 identity server 4.5进行基准测试,以衡量在没有太糟糕的决策时间的情况下可以支持多少策略

我有一个java程序,可以使用org.wso2.carbon.identity.authority.stub-4.2.0.jar中的AuthenticationPolicyAdminServiceStub上传我的所有策略:

adminStub.addPolicy(myPolicy)
在100个第一个策略之后,上载时间有一个重要的下降(每个策略超过2秒),并且随着时间的推移变得更糟

对于3000个策略,WSO2没有更高的响应性,当我查看数据库统计信息时,我可以看到,对于所有数据库,返回的元组超过10^12个,对于注册表资源属性表,返回的元组超过10^11个


这是正常的还是我的WSO2配置中有错误

是的。。可能有一些限制。。在您的情况下,这似乎是策略存储的问题。。默认情况下,identity server在wso2注册表中存储XACML策略。。因此,您可以看到这样的数据库统计信息。。因为这与将策略作为数据库项放入表中不同。。由于它是治理注册中心,在这背后发生了很多事情。。。如果您需要更高的策略存储性能,我想最好通过扩展默认行为来实现新的策略存储。基本上,您可以编写一个策略存储来将策略持久化到一个简单的数据库表甚至文件系统中。您可以从中找到注册表策略存储的源

此外,在运行时,所有策略都加载到内存中,通常在授权引擎初始化时发生。。或更少发生任何更新。。当策略的数量很大时,从注册表检索策略可能会有延迟(但注册表本身就像缓存和索引一样…所以可能不会像我们想象的那么慢)。作为运行时,所有策略都保存在内存中,我们可能需要考虑服务器的内存占用。您可以使用wso2server.sh文件增加它

此外,还提到了一些关于WSO2IS性能测试的内容,请参阅以了解更多详细信息