Corda 当卷较大时,在收集签名期间性能会变慢

Corda 当卷较大时,在收集签名期间性能会变慢,corda,Corda,我试图创建大约100个线性状态。它在一个流中,每个循环只包含一个N子流另一个IssueFlow,每个发送发出一个状态。 这是在Corda 3.0、Azure云上使用的Intel(R)Xeon(R)CPU E5-2673 v3@2.40GHz 4GB RAM 线性状态包括 借贷者 贷款人 调节器 在签名过程中,在前40~50个状态中,每个参与者大约需要3~4秒才能做出响应。但随着时间的推移,启动器接收响应可能需要14秒以上的时间。为什么随着容量的增加,性能会下降 总持续时间的基准如下所示 10个州

我试图创建大约100个线性状态。它在一个流中,每个循环只包含一个
N
子流另一个
IssueFlow
,每个发送发出一个状态。 这是在Corda 3.0、Azure云上使用的
Intel(R)Xeon(R)CPU E5-2673 v3@2.40GHz 4GB RAM

线性状态包括

  • 借贷者
  • 贷款人
  • 调节器
  • 在签名过程中,在前40~50个状态中,每个参与者大约需要3~4秒才能做出响应。但随着时间的推移,启动器接收响应可能需要14秒以上的时间。为什么随着容量的增加,性能会下降

    总持续时间的基准如下所示

  • 10个州~2.5分钟
  • 50个州~30分钟
  • 100个州~105分钟
  • 在这里的示例日志中,您可以看到启动器在collect签名中处理参与者响应最多需要16秒

    与贷款人的开始时间:2018-06-29T11:07:56356Z

    贷方终止时间:2018-06-29T11:08:12669Z

    [INFO ] 2018-06-29T11:07:56,356Z [Node thread-1] flow.[55168e42-bff4-4d75-94ba-304d63f1a58e].initiateSession - Initiating flow session with party OU=LENDER, O=LENDER, L=London, C=UK. Session id for tracing purposes is SessionId(toLong=-1958500197946881585). {} [INFO ] 2018-06-29T11:08:02,251Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=LENDER, O=LENDER, L=London, C=UK topic: platform.session uuid: 50a1b9aa-4c15-4c8e-a744-8df109103837 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:05,281Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=LENDER, O=LENDER, L=London, C=UK topic: platform.session uuid: ff4dd716-caaf-43e5-a462-f64844266659 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:12,669Z [Thread-177 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=LENDER, O=LENDER, L=London, C=UK topic: platform.session uuid: b2ff1807-b9ef-49dd-aabb-d69253ce5f28 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2622b6f6-82f7-417b-a1ea-3c2207bb1a03, invocation_timestamp=2018-06-29T11:04:40.745Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:15,193Z [Node thread-1] flow.[55168e42-bff4-4d75-94ba-304d63f1a58e].initiateSession - Initiating flow session with party OU=REGULATOR, O=REGULATOR, L=London, C=UK. Session id for tracing purposes is SessionId(toLong=-8884253824391485917). {} [INFO ] 2018-06-29T11:08:16,810Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=REGULATOR, O=REGULATOR, L=London, C=UK topic: platform.session uuid: fd68ae1d-fa64-4a90-aeb5-c987f73836c3 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:19,913Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=REGULATOR, O=REGULATOR, L=London, C=UK topic: platform.session uuid: 3cadd008-4cf4-4e89-bcaf-92200c1f9c08 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:24,468Z [Thread-177 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=REGULATOR, O=REGULATOR, L=London, C=UK topic: platform.session uuid: 5295d816-0605-42f4-b53a-d34761ed2b03 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2622b6f6-82f7-417b-a1ea-3c2207bb1a03, invocation_timestamp=2018-06-29T11:04:40.745Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:27,325Z [Node thread-1] flow.[55168e42-bff4-4d75-94ba-304d63f1a58e].initiateSession - Initiating flow session with party O=NetworkMapAndNotary, L=London, C=UK. Session id for tracing purposes is SessionId(toLong=4774527641719127102). {} [INFO ] 2018-06-29T11:08:29,355Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: O=NetworkMapAndNotary, L=London, C=UK topic: platform.session uuid: 7a149d3e-cea8-46e4-8d05-09bb43d6d18b {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:32,224Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: O=NetworkMapAndNotary, L=London, C=UK topic: platform.session uuid: eb1b0a8c-a759-47aa-96f5-57e4a3ec27a4 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:35,331Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: O=NetworkMapAndNotary, L=London, C=UK topic: platform.session uuid: f25ea565-23b0-4dd6-bb2d-38fe9c5f0529 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:35,339Z [Node thread-1] vault.NodeVaultService._queryBy - Vault Query for contract type: interface net.corda.core.contracts.ContractState, criteria: VaultQueryCriteria(status=UNCONSUMED, contractStateTypes=null, stateRefs=[AA7F52DA4BC71835C46FCFBA4542372DC261F9885BA8B2614A9C111D24A5091A(0), 19CCA05079E7F5F34EB91C50F1EA7D7D7599662BB55A57B65E91F6D7BFE63602(1)], notary=null, softLockingCondition=null, timeCondition=null), pagination: PageSpecification(pageNumber=-1, pageSize=200), sorting: Sort(columns=[]) {} [INFO ] 2018-06-29T11:08:35,382Z [Node thread-1] flow.[55168e42-bff4-4d75-94ba-304d63f1a58e].initiateSession - Initiating flow session with party OU=LENDER, O=LENDER, L=London, C=UK. Session id for tracing purposes is SessionId(toLong=-607600376681252697). {} [INFO ] 2018-06-29T11:08:36,936Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=LENDER, O=LENDER, L=London, C=UK topic: platform.session uuid: 64b87ae0-e744-4b56-aff6-25d4a2ef7c34 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:39,844Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=LENDER, O=LENDER, L=London, C=UK topic: platform.session uuid: 8a5520a9-fafa-48b0-82cb-a951b60f6a4c {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:42,980Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=LENDER, O=LENDER, L=London, C=UK topic: platform.session uuid: 0760d9e0-9f6f-47e7-8875-0a89a805c8e3 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:42,981Z [Node thread-1] flow.[55168e42-bff4-4d75-94ba-304d63f1a58e].initiateSession - Initiating flow session with party OU=REGULATOR, O=REGULATOR, L=London, C=UK. Session id for tracing purposes is SessionId(toLong=4404924816331214061). {} [INFO ] 2018-06-29T11:08:46,011Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=REGULATOR, O=REGULATOR, L=London, C=UK topic: platform.session uuid: 2ff5f6ee-59af-4e96-b9e5-b081cc59e5b7 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:47,435Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=REGULATOR, O=REGULATOR, L=London, C=UK topic: platform.session uuid: 24e23ab9-3a38-4b26-a1dc-b113332bfa20 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [INFO ] 2018-06-29T11:08:50,487Z [Thread-179 (ActiveMQ-client-global-threads)] messaging.P2PMessagingClient.artemisToCordaMessage - Received message from: p2p.inbound.DjcvsLH1DL2QVRWbG7ucYLKtmraM8ch2RhCL5TEMJxWCdW user: OU=REGULATOR, O=REGULATOR, L=London, C=UK topic: platform.session uuid: fbf75fab-5250-4a80-a3e6-96cf30c66082 {actor_id=corda, actor_owningIdentity=OU=BORROWER, O=BORROWER, L=London, C=UK, actor_store_id=NODE_CONFIG, invocation_id=2f62be30-746e-41c5-9939-719d0653c038, invocation_timestamp=2018-06-29T10:36:49.307Z, session_id=9d602c15-c391-434c-9f6c-c44f662e261c, session_timestamp=2018-06-29T06:55:33.044Z} [信息]2018-06-29T11:07:56356Z[节点线程-1]流程。[55168e42-bff4-4d75-94ba-304d63f1a58e]。发起会话-发起与参与方OU=贷款人、O=贷款人、L=伦敦、C=英国的流程会话。用于跟踪的会话id是SessionId(toLong=-1958500197946881585)。{} [信息]2018-06-29T11:08:02251Z[线程-179(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-从以下地址收到消息:p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rcl5temjxwcdw用户:OU=LENDER,O=LENDER,L=London,C=UK主题:platform.session uuid:50a1b9aa-4c15-4c8e-a744-8df109103837{actor_id=corda,actor_owningIdentity=OU=BORROWER,O=BORROWER,L=London,C=UK,actor_store_id=NODE_CONFIG,invocation_id=2f62be30-746e-41c5-9939-719d0653c038,invocation_timestamp=2018-06-29T10:36:49.307Z,session_id=9d602c15-c391-434c-9f6c-c44f662e261c,session(时间戳=2018-06-29T06:55:33.044;} [信息]2018-06-29T11:08:05281Z[线程-179(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-收到来自p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rcl5temjxwcdw的消息用户:OU=贷款人,O=贷款人,L=伦敦,C=英国主题:平台会话uuid:ff4dd716-caaf-43e5-a462-f644266659{actor_id=corda,actor_owningIdentity=OU=BORROWER,O=BORROWER,L=London,C=UK,actor_store_id=NODE_CONFIG,invocation_id=2f62be30-746e-41c5-9939-719d0653c038,invocation_timestamp=2018-06-29T10:36:49.307Z,session_id=9d602c15-c391-434c-9f6c-c44f662e261c,session(时间戳=2018-06-29T06:55:33.044;} [信息]2018-06-29T11:08:12669Z[线程-177(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-从以下地址收到消息:p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rcl5temjxwcdw用户:OU=贷款人,O=贷款人,L=伦敦,C=英国主题:平台会话uuid:b2ff1807-b9ef-49dd-aabb-d6953ce5f28{actor_id=corda,actor_owningIdentity=OU=BORROWER,O=BORROWER,L=London,C=UK,actor_store_id=NODE_CONFIG,invocation_id=2622b6f6-82f7-417b-a1ea-3c2207bb1a03,invocation_timestamp=2018-06-29T11:04:40.745Z,session_id=9d602c15-c391-434c-9f6c-c44f662e261c,session时间戳=2018-06-29T06:55:33.044Z} [INFO]2018-06-29T11:08:15193Z[Node thread-1]flow[55168e42-bff4-4d75-94ba-304d63f1a58e]。initiateSession-启动与参与方OU=REGULATOR,O=REGULATOR,L=London,C=UK的流会话。用于跟踪的会话id为SessionId(toLong=-8884253824391485917)。{} [信息]2018-06-29T11:08:16810Z[Thread-179(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-收到来自p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rclhcl5temjxwcdw的消息用户:OU=REGULATOR,O=REGULATOR,L=London,C=UK主题:平台会话uuid:fd68ae1d-fa64-4a90-aeb5-c987f73836c3{actor_id=corda,actor_owningIdentity=OU=BORROWER,O=BORROWER,L=London,C=UK,actor_store_id=NODE_CONFIG,invocation_id=2f62be30-746e-41c5-9939-719d0653c038,invocation_timestamp=2018-06-29T10:36:49.307Z,session_id=9d602c15-c391-434c-9f6c-c44f662e261c,session(时间戳=2018-06-29T06:55:33.044;} [信息]2018-06-29T11:08:19913Z[Thread-179(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-收到来自p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rclhcl5temjxwcdw的消息用户:OU=REGULATOR,O=REGULATOR,L=London,C=UK主题:platform.session uuid:3cadd008-4cf4-4e89-bcaf-92200c1f9c08{actor_id=corda,actor_owningIdentity=OU=BORROWER,O=BORROWER,L=London,C=UK,actor_store_id=NODE_CONFIG,invocation_id=2f62be30-746e-41c5-9939-719d0653c038,invocation_timestamp=2018-06-29T10:36:49.307Z,session_id=9d602c15-c391-434c-9f6c-c44f662e261c,session(时间戳=2018-06-29T06:55:33.044;} [信息]2018-06-29T11:08:24468Z[线程-177(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-收到来自p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rcl5temjxwcdw的消息用户:OU=REGULATOR,O=REGULATOR,L=London,C=UK主题:platform.session uuid:5295d816-0605-42f4-b53a-d34761ed2b03{actor_id=corda,actor_owningIdentity=OU=BORROWER,O=BORROWER,L=London,C=UK,actor_store_id=NODE_CONFIG,invocation_id=2622b6f6-82f7-417b-a1ea-3c2207bb1a03,invocation_timestamp=2018-06-29T11:04:40.745Z,session_id=9d602c15-c391-434c-9f6c-c44f662e261c,session时间戳=2018-06-29T06:55:33.044Z} [INFO]2018-06-29T11:08:27325Z[Node thread-1]flow[55168e42-bff4-4d75-94ba-304d63f1a58e]。initiateSession-启动与O方的流会话=网络地图和公证人,L=伦敦,C=英国。用于跟踪目的的会话id为SessionId(toLong=47745276419127102)。{} [信息]2018-06-29T11:08:29355Z[Thread-179(ActiveMQ客户端全局线程)]messaging.P2PMessagingClient.artemisToCordaMessage-收到的消息来自:p2p.inbound.djcvslh1dl2qvrwbg7ucylktmram8ch2rcl5temjxwcdw用户:O=网络地图和公证人,L=伦敦,C=英国主题:平台会话uuid:7a149d3e-cea8-46e4-8d05