Diffy Status Diffy is used in production at: Mixpanel Airbnb (Scalabity) (Migration) Twitter Baidu Bytedance and blogged about by cloud inf…
Diffy Status Diffy is used in production at: Mixpanel Airbnb (Scalabity) (Migration) Twitter Baidu Bytedance and blogged about by cloud inf…
Diffy is used in production at:
and blogged about by cloud infrastructure providers like:
Visit our engineering blog to keep up with the latest developments in Diffy.
Diffy is being actively developed and maintained by the engineering team at Sn126.
Feel free to contact us via discord, linkedin, or twitter.
Diffy finds regressions in your service by running your new code and your old code side by side and comparing what they return. It behaves as a proxy that multicasts every request it receives to each running instance, compares the responses, and renders a verdict — Safe to ship when the candidate matches the primary within noise tolerance, or Regressions detected when real differences surface.
The premise is simple: if two implementations of a service return “similar” responses for a sufficiently large and diverse set of requests, the newer implementation can be treated as regression-free.
Diffy acts as a proxy that accepts requests drawn from any source you provide and multicasts each of those requests to three different service instances:
When those services respond, Diffy compares the responses and looks for two things:
Diffy measures how often primary and secondary disagree with each other vs. how often primary and candidate disagree. If those rates are comparable, Diffy concludes the candidate has no real regression and the difference is just noise — which is what the signal-to-noise indicator in the UI summarizes at a glance.
Diffy ships with a single-page UI organized around five views:
Detailed Diffy Documentation is available here.
Please reach out to [email protected] for support. We look forward to hearing from you.
Copyright (C) 2019 Sn126, Inc.
This license allows reusers to copy and distribute the material in
any medium or format in unadapted form only, for noncommercial purposes
only, and only so long as attribution is given to the creator.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License
for more details.
You should have received a copy of the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0
International Public License along with this program. If not, see
https://creativecommons.org/licenses/by-nc-nd/4.0/.No open issues yet, or sync has not completed.