春天社交超慢,任何想法为什么?

fxm*_*fxm 0 java optimization facebook linkedin spring-social

我正在使用Spring社交来通过Facebook或LinkedIn获取信息.它工作得很好,我得到了我想要的东西,但我遇到了问题:它超级慢.

例如,使用linkedin访问我的连接完整配置文件需要每个联系人大约一秒钟.Facebook也是如此.

所以,你知道这种缓慢是否适合Spring社交,或者是否有办法将这一切都搞定?

Cra*_*lls 5

我承认我没有使用Spring Social的API绑定进行过很多彻底的性能测试(这里有很多东西需要覆盖......所有这些都是一项很好的承诺).但是,我刚刚对FriendOperations.getFriendProfiles()进行了一些非常基本的速度测试,请求我的Facebook好友列表(160位朋友).我找到了以下内容:

  • 平均而言,请求需要2.6秒才能完成.我确实有过一次超过7秒的尝试,但是我把它作为一个网络打嗝扔掉了...所有其他的都是2.6秒左右.
  • 对于那些相同的请求,Spring Social通过RestTemplate进行网络调用以获取数据的平均时间约为2.4秒.
  • 大约0.2秒(平均),Spring Social将其收到的数据反序列化.

所以是的,2.6秒不太理想,但是在Spring Social的控制范围之外,网络呼叫花费了2.4秒.我甚至将Spring从等式中移除并通过curl命令行工具运行相同的查询,并发现该调用(平均)为3.0秒.(这并不意味着春天比卷曲更快......只是我的不科学的样本更幸运,可能太小而无法说出任何确定的东西.)

而且,作为另外一个数据点,我通过Facebook的Graph API Explorer执行相同的查询,并在大约2.7秒内回来(平均).

每个网络都不同,所以您的里程可能会有所不同.

简而言之,Spring Social在性能方面可能有改进的空间,但在为用户的朋友获取完整配置文件的情况下,它会变慢,因为在网络上获取那么多数据的速度很慢.

最后,虽然我没有对Spring Social LinkedIn进行测试,但我认为它的性能大致相同,因为你要求的是通过网络传输相同数量的数据.