- 已编辑
使用MYSQL数据库,初始化了1500偏文章Post,分20多个Category,每个Category作为一个Menu。
本地电脑点击一个连接要6,7秒钟。
电脑配置:
CPU: i7-11700K @ 3.60GHz
内存:32 G
发现Post内容很多(1500)情况下,整个网站速度都很慢。
使用MYSQL数据库,初始化了1500偏文章Post,分20多个Category,每个Category作为一个Menu。
本地电脑点击一个连接要6,7秒钟。
电脑配置:
CPU: i7-11700K @ 3.60GHz
内存:32 G
发现Post内容很多(1500)情况下,整个网站速度都很慢。
2.X版本的数据库查询这块估计撑不了1千偏以上的文章查询性能吧? 我看无论查任何内容,都是先根据模糊查询把全表数据查出来后再过滤。
Earth主题中,theamleaf模板聚合一个页面结果好查询好几次数据库。每次都是全表模糊查询,然后内存中做分页。
这样性能应该很慢吧???
可以关注 halo-dev/halo2863
ykhasia 目前的主要瓶颈在于启动时的 Reconcile 操作(可以理解为在进行数据修正)。在 Reconile 完成之后其实就会好很多,在上面的 issue 也有提到。
后续的优化可能会先实现索引。
cc @johnniang
ykhasia 这种场景应该不会有太多的逻辑,如果不需要 Reconile 的话,不会有影响。
你可以观察到,目前启动后基本只有查询文章的时候慢,其他数据是没有太大影响的,因为文章的处理逻辑过多。
我本地环境的博客界面无论点击哪个链接都很慢,管理台页面倒是不慢。
日志中一直在输出这些日志,是在做Reconile 吗?
2023-05-03T19:32:16.990+08:00 DEBUG 17784 --- [yReconciler-t-1] r.h.a.e.controller.DefaultController : run.halo.app.core.extension.reconciler.CategoryReconciler-worker-1 >>> Reconciled request: Request[name=category-Chatbots] with result: Result[reEnqueue=true, retryAfter=PT1M], usage: 2278
2023-05-03T19:32:16.990+08:00 DEBUG 17784 --- [yReconciler-t-1] r.h.a.extension.controller.DefaultQueue : Adding request Request[name=category-Chatbots] after PT1M
2023-05-03T19:32:16.990+08:00 DEBUG 17784 --- [yReconciler-t-1] r.h.a.extension.controller.DefaultQueue : Added request Request[name=category-Chatbots] after PT1M
2023-05-03T19:32:16.990+08:00 DEBUG 17784 --- [yReconciler-t-1] r.h.a.extension.controller.DefaultQueue : Take request Request[name=category-AudioToAudio] at 2023-05-03T11:32:16.990235Z
2023-05-03T19:32:16.990+08:00 DEBUG 17784 --- [yReconciler-t-1] r.h.a.e.controller.DefaultController : run.halo.app.core.extension.reconciler.CategoryReconciler-worker-1 >>> Reconciling request Request[name=category-AudioToAudio] at 2023-05-03T11:32:16.990235Z
2023-05-03T19:32:19.289+08:00 DEBUG 17784 --- [yReconciler-t-1] r.h.a.e.controller.DefaultController : run.halo.app.core.extension.reconciler.CategoryReconciler-worker-1 >>>
ykhasia 进行数据修正和一些数据的计算。
ykhasia 对,当这个日志停止之后,Reconcile 就结束了,访问页面应该就很快了。
ykhasia 导航类网站是不是可以参考一下 https://halo.run/store/apps/app-hfbQg