来自 Android 应用程序过载 CPU 用法的 wp v2 rest 请求
wp v2 rest request from Android App overload CPU usage
我为新闻网站 (wordpress) 创建了 Android 应用程序,我使用 WP v2 API 从数据库中获取 posts,问题是甚至不到 10 个用户同时使用应用程序会使服务器过载(CPU 使用)。
当用户打开应用程序时,我发送 get
请求(使用 retrofit2)并获取第一页(json 数组,其中 10 个对象代表 posts)。
/wp-json/wp/v2/posts?page=1
然后对于每个 post 我发送另一个媒体请求以获取图像。
/wp-json/wp/v2/media/21342
如果没有应用程序,当 600-700 位用户浏览网站时,服务器会过载,使用应用程序时,它会在 300 位用户和 10 位应用程序用户时过载。
为什么会发生 wp-v2 请求和浏览器网站加载之间的区别?
尝试通过在初始请求中传递图像 URL 来减少请求数。我使用此 embedded
参数完成此操作:
https://developer.wordpress.org/rest-api/using-the-rest-api/linking-and-embedding/
此外,也许可以尝试使用 S3 Offload Media 插件之类的东西从与应用程序服务器不同的服务器提供图像。
Pantheon 有一个专门用于大规模 WP 的网站:https://scalewp.io
除非用户点击它以减轻 wordpress 服务器的压力,否则不要加载详细信息。浏览器根据需要加载是 CPU 增加的原因。您的应用似乎正在为可能永远不会被查看的项目提前加载。
我为新闻网站 (wordpress) 创建了 Android 应用程序,我使用 WP v2 API 从数据库中获取 posts,问题是甚至不到 10 个用户同时使用应用程序会使服务器过载(CPU 使用)。
当用户打开应用程序时,我发送 get
请求(使用 retrofit2)并获取第一页(json 数组,其中 10 个对象代表 posts)。
/wp-json/wp/v2/posts?page=1
然后对于每个 post 我发送另一个媒体请求以获取图像。
/wp-json/wp/v2/media/21342
如果没有应用程序,当 600-700 位用户浏览网站时,服务器会过载,使用应用程序时,它会在 300 位用户和 10 位应用程序用户时过载。
为什么会发生 wp-v2 请求和浏览器网站加载之间的区别?
尝试通过在初始请求中传递图像 URL 来减少请求数。我使用此 embedded
参数完成此操作:
https://developer.wordpress.org/rest-api/using-the-rest-api/linking-and-embedding/
此外,也许可以尝试使用 S3 Offload Media 插件之类的东西从与应用程序服务器不同的服务器提供图像。
Pantheon 有一个专门用于大规模 WP 的网站:https://scalewp.io
除非用户点击它以减轻 wordpress 服务器的压力,否则不要加载详细信息。浏览器根据需要加载是 CPU 增加的原因。您的应用似乎正在为可能永远不会被查看的项目提前加载。