Moving to gRPC

Cadence historically has been using TChannel transport with Thrift encoding for both internal RPC calls and communication with client SDKs. gRPC is becoming a de-facto industry standard with much better adoption and community support. It offers features such as authentication and streaming that are very relevant for Cadence. Moreover, TChannel is being deprecated within Uber itself, pushing an effort for this migration. During the last year we’ve implemented multiple changes in server and SDK that allows users to use gRPC in Cadence, as well as to upgrade their existing Cadence cluster in a backward compatible way. This post tracks the completed work items and our future plans. Our Approach With ~500 services using Cadence at Uber and many more open source customers around the world, we had to think about the gRPC transition in a backwards compatible way. We couldn’t simply flip transport and encoding everywhere. Instead we needed to support both protocols as an intermediate step ...

Announcing Cadence OSS office hours and community sync up

Are you a current Cadence user, do you operate Cadence services, or are you interested in learning about workflow technologies and wonder what problems Cadence could solve for you? We would like to talk to you! Our team has spent a significant amount of time working with users and partner teams at Uber to design, scale and operate their workflows. This helps our users understand the technology better, smooth their learning curve and ramp up experience, and at the same time allows us to get fast and direct feedback so we can improve the developer experience and close feature gaps. As our product and community grows, we would like to expand this practice to our users in the OSS community. For the first time ever, members of the Cadence team along with core contributors from the community will host bi-weekly office hours to answer any questions you have about Cadence, or workflow technology in general. We can also dedicate future sessions to specific topics that have a common intere ...

Long-term commitment and support for the Cadence project, and its community

Dear valued Cadence users and developers, Some of you might have read Temporal’s recent announcement about their decision to drop the support for the Cadence project. This message caused some confusion in the community, so we would like to take this opportunity to clear things out. First of all, Uber is committed to the long-term success of the Cadence project. Since its inception 5 years ago, use cases built on Cadence and their scale have grown significantly at Uber. Today, Cadence powers a variety of our most business-critical use cases (some public stories are available here and here). At the same time, the Cadence development team at Uber has enjoyed rapid growth with the product and has been driving innovations of workflow technology across the board, from new features (e.g. graceful failover, [workflow shadowing] ...