You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/08/14 12:50:00 UTC
[jira] [Commented] (NIFI-5516) Allow data in a Connection to be
Load-Balanced across cluster
[ https://issues.apache.org/jira/browse/NIFI-5516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16579756#comment-16579756 ]
ASF GitHub Bot commented on NIFI-5516:
--------------------------------------
GitHub user markap14 opened a pull request:
https://github.com/apache/nifi/pull/2947
[WIP] NIFI-5516: Implement Load-Balanced Connections
This is a very involved new feature. At this point, it is functioning well but has the following caveats:
- We need to do a better job of reconciling 'client' with nodes in the cluster for authorization purposes.
- It currently points at a SNAPSHOT version of the nifi-registry. NiFi-Registry will need to be released before this is merged to master. This is due to the VersionedConnection object in the data model being updated such that it now supports configuration of load-balancing properties.
At this point, though, because the changeset is extremely large, I think it makes sense to post a Work-In-Progress PR so that others can begin looking at it. It may also be helpful to reference the Feature Proposal for this feature at https://cwiki.apache.org/confluence/display/NIFI/Load-Balanced+Connections
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/markap14/nifi NIFI-5516
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/nifi/pull/2947.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2947
----
commit 47addfb1b242d77ca1f147058781be1cd6814fee
Author: Mark Payne <ma...@...>
Date: 2018-06-14T15:57:21Z
Refactoring StandardFlowFileQueue to have an AbstractFlowFileQueue
Refactored more into AbstractFlowFileQueue
Added documentation, cleaned up code some
Refactored FlowFileQueue so that there is SwappablePriorityQueue
Several unit tests written
Added REST API Endpoint to allow PUT to update connection to use load balancing or not. When enabling load balancing, though, I saw the queue size go from 9 to 18. Then was only able to process 9 FlowFiles.
Bug fixes
Code refactoring
Added integration tests, bug fixes
Refactored clients to use NIO
Bug fixes. Appears to finally be working with NIO Client!!!!!
commit 227fea81e6af1bd6d7d97ccb062c03c8c2377dc0
Author: Mark Payne <ma...@...>
Date: 2018-07-27T16:40:14Z
NIFI-5516: Refactored some code from NioAsyncLoadBalanceClient to LoadBalanceSession
Bug fixes and allowed load balancing socket connections to be reused
Implemented ability to compress Nothing, Attributes, or Content + Attributes when performing load-balancing
Added flag to ConnectionDTO to indicate Load Balance Status
Updated Diagnostics DTO for connections
Store state about cluster topology in NodeClusterCoordinator so that the state is known upon restart
Code cleanup
Fixed checkstyle and unit tests
----
> Allow data in a Connection to be Load-Balanced across cluster
> -------------------------------------------------------------
>
> Key: NIFI-5516
> URL: https://issues.apache.org/jira/browse/NIFI-5516
> Project: Apache NiFi
> Issue Type: New Feature
> Components: Core Framework
> Reporter: Mark Payne
> Assignee: Mark Payne
> Priority: Major
>
> Allow user to configure a Connection to be load balanced across the cluster. For more information, see Feature Proposal at https://cwiki.apache.org/confluence/display/NIFI/Load-Balanced+Connections
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)