[ https://issues.apache.org/jira/browse/JAMES-1623?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14905516#comment-14905516 ]
Tellier Benoit commented on JAMES-1623: --------------------------------------- Related issues : MPT-28 and MAILBOX-253 > Provide the option to use Hystrix on top of all IO operations > ------------------------------------------------------------- > > Key: JAMES-1623 > URL: https://issues.apache.org/jira/browse/JAMES-1623 > Project: James Server > Issue Type: New Feature > Reporter: Tellier Benoit > > Hystrix is a Netflix developped librairy for fault tolerance in distributed > instances. > It provides automatic circuit breaking, meaning that your underlying database > can not be overloaded, leading to a crash. (Same thing for ElasticSearch, by > the way). > It also allows fallback if circuit is closed. > Finally, it allows live metrics on a dashboard. > And on top of that behaviour of hystrix is live configurable! > My point of view about this librairy, is that : > It will help sysadmins to diagnose problems and design for their load. > It will help us (James developpers) to identify hotspots in the code and > maybe design better interaction with our underlying data source. > It will make James more resiliant to failures. > I conseder external IO to be : > MessageMapper and MailboxMapper from mailbox > Search indexes from mailbox > data-* > quotas from mailbox > I already have working implementations for all of those and strong mocked > unit tests. > Acceptance criteria : > whatever implementation I choose for each component, I can enable hystrix > wrapping by a single configuration line. > provide MPT testing on top of memory implementation > publish metrics to be accessible with a hystrix dashboard > ( if I have time ) - provide a video of the dashboard > modify documentation about configuration changes. > Blocking point : > Implementing Hystrix wrapping is trivial and non invasive > Implementing configuration should be straight forward > I will have troubbles with servlets (needed to publish metrics). I was > thinking to jetty, but I have strictly no idea how to deploy it ( and their > doc seems like a mess). Any help appreciated ! -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org