我想問一下批處理。我需要處理100 000個由以下步驟組成的業務流程:生成PDF(異步),發送郵件並將文檔上載到歸檔系統。我正在考慮在spring引導(異步服務任務)中使用activiti,因爲我可以控制失敗的作業,並且可以輕鬆地重試它們等。我不知道使用activiti或camunda還是其他工具是不錯的主意。批處理業務流程
批處理業務流程
回答
你可以使用一個多實例調用活動。通過多實例,您可以指定如何執行呼叫活動(在您的情況下爲100_000次)。呼叫活動將調用您的流程模型來存檔pdf。對於每個調用(多實例的實例),您可以定義一個應該被調用到被調用進程的變量,因此可以在主進程中擁有一個PDF文件名列表,併爲每個子進程轉發一個名稱。 主要過程看起來是這樣的:
確保你做多實例異步之前使用異步執行,否則將無法與100_000情況下工作。
的多實例調用活動看起來是這樣的:
<bpmn:callActivity id="Task_0fl5th9" name="archiving pdf" calledElement="archivePdf">
<bpmn:incoming>SequenceFlow_04xoo79</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0036ezx</bpmn:outgoing>
<bpmn:multiInstanceLoopCharacteristics camunda:asyncBefore="true" camunda:collection="pdfNames" camunda:elementVariable="pdfName">
<bpmn:loopCardinality xsi:type="bpmn:tFormalExpression">100_000</bpmn:loopCardinality>
</bpmn:multiInstanceLoopCharacteristics>
</bpmn:callActivity>
似乎multiInstanceLoopCharacteristics確實爲每個項目提交。有沒有辦法設置提交計數?當我使用camunda.bpm.job-execution.core-pool-size = 5時,我注意到日誌中存在死鎖異常: '### SQL:select * from ACT_RU_EXECUTION where PROC_INST_ID_ =? ###原因:com.microsoft.sqlserver.jdbc.SQLServerException:事務(進程ID 62)在另一個進程的鎖資源上死鎖,並被選爲死鎖受害者。重新運行該事務。' – Bully
我在ACT_RU_JOB表 上看到相同的死鎖'### SQL:select * from ACT_RU_JOB J where J.EXECUTION_ID_ =?' – Bully
- 1. 批處理作業事務處理
- 2. 如何處理替代業務流程
- 3. spring批處理流作業Vs spring組合任務
- 4. Drupal批處理表單 - 流程值?
- 5. AWS Lambda/Aws批處理工作流程
- 6. 批處理mysql腳本/計劃運行批處理作業
- 7. 在Spring批處理中查詢批處理作業元數據
- 8. 在Spring批處理作業中配置多個流程時出錯
- 9. 如何刪除業務流程流程
- 10. 批處理作業跟蹤通知
- 11. 從批處理Java作業打印
- 12. 批處理和後臺作業
- 13. 在PowerShell中創建批處理作業
- 14. 大型機批處理作業觸發
- 15. 從IIS啓動批處理作業
- 16. ASP.NET:激發批處理作業
- 17. 匹配並移動批處理作業
- 18. 春季批處理 - 作業執行ID?
- 19. JDBC使用彈簧批處理作業
- 20. 多個彈簧批處理作業
- 21. Spring批處理作業信息庫
- 22. 啓動Spring批處理作業
- 23. Spring-xd批處理作業鎖定
- 24. WCF業務邏輯處理
- 25. Azure批處理作業啓動任務失敗
- 26. 如何在weblogic服務器上配置批處理作業
- 27. 作爲服務登錄vs作爲批處理作業登錄
- 28. 如何在Bluemix下爲Spark服務創建批處理作業
- 29. BizTalk業務流程錯誤
- 30. 業務流程建模圖
隨着camunda,您可以使用發動機內部批處理自定義的工作,檢出camunda-BPM定製批次擴展。 –
另一種可能性是http://www.flowable.org/。作業處理在Activiti5(Flowable5)<-> Flowable6之間發生了變化。例如Deadletter隊列和++ 而且當你檢查團隊http://www.flowable.org/team.html - >核心activiti團隊搬到Flowable。 –