V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
IBN5100
V2EX  ›  程序员

flowable 性能问题

  •  
  •   IBN5100 · 2023-10-10 17:41:03 +08:00 · 1454 次点击
    这是一个创建于 403 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近在集成 flowable ,功能还很正常,但是我使用 taskService.complete 很慢 大概需要 2~3 秒
    只是做了角色 部门功能的添加 其他就没动什么了 表单数据是用 variables 传递到业务端自行处理
    关键是我把调用业务端的逻辑注释掉了 也差不了多少时间

    我建立了一个很单纯的流程




    第二个用户任务 没有表单 单纯的提交 调用 taskService.complete 就用了 3 秒钟

    想问下 什么原因 可能导致这么慢
    或者有什么方法可以去排查原因
    17 条回复    2024-07-25 16:12:06 +08:00
    tedzhou1221
        1
    tedzhou1221  
       2023-10-10 18:10:42 +08:00 via iPhone
    我的话,会用 xrebel ,其他工具就不知道了。
    IBN5100
        2
    IBN5100  
    OP
       2023-10-10 18:15:51 +08:00
    @tedzhou1221 #1 好的 我试试看
    IBN5100
        3
    IBN5100  
    OP
       2023-10-11 10:07:40 +08:00
    @tedzhou1221 #1 我使用 xrebel 跑了一下 也看不出什么 能帮看看吗

    http://deershare.com/recv/169398
    IBN5100
        4
    IBN5100  
    OP
       2023-10-11 10:09:15 +08:00
    @IBN5100 #3 不好意思 失效了 http://deershare.com/recv/946946
    IBN5100
        5
    IBN5100  
    OP
       2023-10-11 10:17:22 +08:00
    bill110100
        6
    bill110100  
       2023-10-11 11:11:21 +08:00
    flowable 比较重,而且很多数据需要相互拷贝和关联,跑个 2-3 秒很正常的。
    bill110100
        7
    bill110100  
       2023-10-11 11:18:52 +08:00
    我们用的流程比较复杂,甚至还有根据业务数据多次夸服务查询审批人的操作,跑个十几秒都不稀奇。一个 task 的完成和后续 task 的创建涉及 10 多张表的删除更新操作,就算每次 io 100ms 都要近 1 秒到处理。
    IBN5100
        8
    IBN5100  
    OP
       2023-10-11 11:24:40 +08:00
    @bill110100 #7 这样的吗 我以为正常的的没这么慢
    bill110100
        9
    bill110100  
       2023-10-11 11:40:11 +08:00   ❤️ 1
    @IBN5100 因为流程数据是记录在数据库的,还有外键关联,甚至为了查询性能还有 runtime 和 history 两套表记两份,每次审批要把节点和流程数据从数据库还原到程序,计算后再将改动的关联重新写回数据库,肯定很慢。传统行业的软件要的是数据的强一致性,性能并不是第一的,跑得慢很正常。
    IBN5100
        10
    IBN5100  
    OP
       2023-10-11 11:48:40 +08:00
    @bill110100 #9 了解了 感谢 就是领导那不是很好说过去
    tedzhou1221
        11
    tedzhou1221  
       2023-10-11 13:27:23 +08:00
    https://cowtransfer.com/s/b9fa9e45c50048 点击链接查看 [ xrebel-application-view—2023-10-11T13꞉24꞉27.html ] ,或访问奶牛快传 cowtransfer.com 输入传输口令 27jt7m 查看;

    你看看我的,我运行的是开源的 ruoyi 集成 flowable 项目。任务审核完成只用了 220ms ,数据库是本地的。
    tedzhou1221
        12
    tedzhou1221  
       2023-10-11 13:28:33 +08:00
    ![Xnapper-2023-10-11-1.22.44 PM.png]( https://img1.imgtp.com/2023/10/11/pZYJlcTs.png)
    IBN5100
        13
    IBN5100  
    OP
       2023-10-11 14:42:06 +08:00
    @tedzhou1221 #11 是用的哪个项目 能发下 git 地址吗

    看了下好像少一些操作


    tedzhou1221
        14
    tedzhou1221  
       2023-10-11 15:00:43 +08:00
    IBN5100
        15
    IBN5100  
    OP
       2023-10-11 15:05:06 +08:00
    @tedzhou1221 #14 我就是用这个项目二开的

    我是用的远程数据库 刚才把数据同步到本地库后 非常快! 但是远程数据库就很慢 问题应该是在这里了 我加了连接池的 还是慢
    smalljop
        16
    smalljop  
       122 天前
    请问怎么解决的 我也遇到了
    IBN5100
        17
    IBN5100  
    OP
       114 天前
    @smalljop #16 上面说了 换成本地库就快了。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2919 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:36 · PVG 21:36 · LAX 05:36 · JFK 08:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.