[
https://issues.apache.org/jira/browse/MRESOLVER-131?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17180742#comment-17180742
]
Michael Osipov edited comment on MRESOLVER-131 at 8/19/20, 6:24 PM:
--------------------------------------------------------------------
Future possible improvements:
* Provide a LRU cache for Redisson locks in the {{SyncContextFactory}} which
may reduce the roundtrip time to Redis
* Modify Resolver in a way that it acquires only a small amount of locks at the
same time. Reason: If k of n locks take a significant amount of time to acquire
everything else is waiting. The same thread as well as other threads queued.
Locking hundreds of locks at the same time puts a lot of contention to the
entire process.
was (Author: michael-o):
Future possible improvements:
* Provide a LRU cache for Redisson locks in the {{SyncContextFactory}} which
may reduce the roundtrip time to Redis
* Modify Resolver in a way that it acquires only a small amount fo locks at the
same time. Reason: If k of n locks take a significant amount of time to acquire
everything else is waiting. The same thread as well as other threads queued.
Locking hundreds of locks at the same time puts a lot of contention to the
entire process.
> Introduce a Redisson-based SyncContextFactory
> ---------------------------------------------
>
> Key: MRESOLVER-131
> URL: https://issues.apache.org/jira/browse/MRESOLVER-131
> Project: Maven Resolver
> Issue Type: New Feature
> Components: resolver
> Affects Versions: 1.5.0
> Reporter: Michael Osipov
> Assignee: Michael Osipov
> Priority: Major
> Fix For: 1.6.0
>
>
> Users have been plagued for years with missing concurrent access to the local
> repository either from on JVM or multiple ones. It will finally solve a 13
> years old issue: MNG-2802.
> Create a {{RedissonSyncContextFactory}} which will use one or multiple Redis
> instances to hold Redisson reentrant read write locks. This will protect
> artifacts, metadata as well as tracking files to be accessed (written)
> concurrently.
> It should be easy to setup (extension) and default case requires zero
> configuration.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)