The invention of Transaction Trace

The invention of Transaction Trace

2001 is a year that has been eroded by the sands of time. I can't recall specifically which events happened on which day, but it was in the neighborhood of 2001.

2001. Lew Cirne, CEO of Wily Technology, ushered me into his office to show off his latest innovation: Transaction Trace. Lew had invented the idea of using bytecode manipulation to insert tracing in applications on the fly as the code is loaded into the runtime.

FIGURE ONE: Original Wily Technologo corporate logo

Now, Lew had truly outdone himself: a way to capture and display the performance profile of a single user's transaction. They looked like "upside down wedding cakes": the top levels were the entry points, and the deepest levels account for bottlenecks in transaction time. You could have a "death by 1000 cuts" where even calls with seemingly zero latency can add up; "pig in a python" where consuming data from a distributed source, like a database, becomes expensive; and mixes of things in between. Infinite loops would be invisible, and memory too (separate tools exist for dissecting memory heaps).

I wish I had a good screenshot of an original transaction trace, they were spectacular. Here are some examples I found:

Pathetic that something as petty as an instrumentation defect is being highlighted. The real thing to see here is the fact that the transactions are being handled by a Tomcat Servlet frontend and how long it took the whole request.

In this case, a Shopping Servlet uses an EJB layer to catalog inventory, an actvity that takes more than three seconds, followed by another second of network latency.

Reader! Do you work with the inheritors of transaction trace today? Lew has neither paid me nor asked me to promote him. I simply wish to praise a great innovator. Send in screenshots of your transaction traces, let's see them on the thread.


Transaction Tracer was one of my favorite APM tools for identifying application bottlenecks. During performance testing of a new app I’d turn on all traces just to see “what lights up”. ?And then focus on the hot spots.? Besides illustrating the 1000+ candle birthday cakes (usually bad SQL or MQ calls), it helped those “waiting for Godot” situations— where a request from one tier does not get a response and only proceeds after a fixed time interval expires. One of my favorites was a consistent 4500ms TCP timeout. And only for laptop users whose IP addresses were not registered with the DNS server. Ironically the only reason for the call was to write the result to a log file.?

回复
David Brooke Martin

Staff Solutions Engineer

1 年

T-shirt back

  • 该图片无替代文字
回复
Paul Melmon

VP Engineering and Prague Site Leader, Pure Storage

1 年

To quote Kent Smith at the time “we are in the ambulance chasing business”

Chris LaBrado

Solutions Architect, IT Operations & Services @ HSN/QVC

1 年

I remember the upside down birthday cake. You introduced me to the world of APM, and those days of Weblogic 5/6 were murky, when everything before the advent of Wily was a blackbox. Transaction Trace was revolutionary, as was the ability to get telemetry from JMX. Cheers!

回复
Issac J Roth

Creator of startups. OpenShift, Node.js, and more!

1 年

So many good ones... here we have 11 seconds of GET_PART_DETAIL from the cutting-edge Struts rewrite of Silversteam the e-commerce framework. Things never change, I think I just saw this same pattern (but this time invoking serverless functions) over in a NextJS Commerce app. :)

  • 该图片无替代文字

要查看或添加评论,请登录

David Brooke Martin的更多文章

  • The Joy of Stocks

    The Joy of Stocks

    Two traders are friends and sit next to each other at terminals where they go about work each day, Chance and Oswald…

  • Measure Twice

    Measure Twice

    I recently moved into a new house, only to discover that the air conditioning was terrible. The article's title image…

    4 条评论
  • Living with the "Barnyard"

    Living with the "Barnyard"

    Writing about working remotely is so 2021, but some of us haven't yet gone back to the office. If you have pets at…

  • Efficient Market Theory

    Efficient Market Theory

    I learned about Efficient Market theory over twenty years ago. In the weak version of the theory, all publicly…

  • Business vs. Personal

    Business vs. Personal

    If there's room for the personal in business, how should I define it? This is an interesting question to me as I've…

  • 2021 vs 2022: Reflections on AWS Re:invent

    2021 vs 2022: Reflections on AWS Re:invent

    The pandemic didn't just switch off one day. The pandemic lifestyle hit suddenly, but is taking years to wear off.

    2 条评论
  • Songs of Integration

    Songs of Integration

    Software markets gather companies like family reunions gather people. If the market is big enough, there are companies…

  • Are you an SE?

    Are you an SE?

    After six consecutive quarters of schooling, including seven months in China, I took a break and returned home. To my…

  • Bugs that I have known... recently.

    Bugs that I have known... recently.

    As a Solutions Engineer, part of the job is making things work. While working on familiar technologies is comfortable…

  • In Praise of HackDay

    In Praise of HackDay

    My employer Split Software sponsored Hack Day this past week. Truth in advertising, my team won, and yes I am proud of…

    4 条评论

社区洞察

其他会员也浏览了