Applied performance improvements for async and worker publishers: #25
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
moved _publish method as class method to BarkMQ::Publisher module:
Example: BarkMQ::Publisher.publish(topic_name, message).
Previously it was defined in multiple places async and worker publishers.
improved performance of publish method by caching topic_arn instead of
calling all the time create_topic of aws library. Now BarkMQ.publisher_config contains topic_arns as cached arn names.
Introduced the new method BarkMQ.publisher_config.fetch_topic_arn(topic_name) to get or create topic_arn once.
verified that create_topic happened only once on BarkMQ::Publisher.publish and it doesn't require to make any enhancement
Spend my time for free and want to push this change as it is
@barkshass thought you will delete your pull request as regret otherwise I see my changes as it is under your name, I decided to leave fork with details. don't spam me anymore.
author: @oivoodoo