Home / Companies / Temporal / Blog / October 2024

October 2024 Summaries

10 posts from Temporal

Filter
Month: Year:
Post Summaries Back to Blog
An eerie fictional narrative introduces the real challenges faced by Snap in managing ephemeral messaging across a complex microservices architecture, where ensuring resiliency and consistent event delivery is critical amidst high volumes of data interaction. The story of Emily, an engineer tackling mysterious system failures, parallels Snap's real-world difficulties with message queues, which, while essential for decoupling services and handling asynchronous processes, have limitations such as inefficiency in scaling and the potential for message loss during network outages. To address these issues, Snap adopted Temporal, a solution that allows for durable systems with automatic retries and reliable message state tracking, preventing data loss even during system disruptions. This transition to Temporal provided Snap with a dependable platform, allowing the company to maintain high-quality user and advertiser experiences free from the challenges of ephemeral messaging chaos.
Oct 31, 2024 909 words in the original blog post.
Daniel Abraham, a founding engineer at autokitteh with extensive experience at companies like DataDog and Google, shares insights into managing deployment complexity, likening it to navigating the "7 Levels of Hell Deployment." His talk, part of a Spooky Stories series, emphasizes how using Temporal can simplify and streamline complex engineering challenges that range from building and deploying single repositories to managing multi-repository builds, blue-green deployments, rolling deployments, and canary testing. He outlines how Temporal's workflows can help automate and manage these processes efficiently, reducing the need for extensive internal systems and enabling more straightforward integration and management of complex deployments. This approach democratizes access to robust and reliable deployment infrastructure, allowing developers to focus on logic and composition rather than building intricate interconnected systems. Abraham highlights the benefits of composability and blackboxing in Temporal, which support efficient collaboration and responsibility sharing among developers, and notes the growing ecosystem around Temporal as seen at Replay conventions, where service providers offer integration assistance.
Oct 30, 2024 3,562 words in the original blog post.
Modernizing monolithic systems using Temporal can address common challenges such as agility, performance, scalability, cognitive load, quality, domain clarity, and time to value. By breaking down a monolith into domains with well-defined boundaries, teams can improve ownership, quality, performance, and delivery speed. Temporal Workflows simplify managing complex, distributed transactions by storing each process state durably and orchestrating processes across systems, eliminating the risk of state loss and simplifying testing. Temporal enhances a monolith's durability and visibility by managing ephemeral state and facilitating reliable cross-domain processes, making it easier to support and allowing for more confident changes. Whether transitioning to microservices or adding Temporal Workflows to a monolith, this approach can increase durability, visibility, and clarity, while ensuring consistent and reliable systems.
Oct 30, 2024 1,755 words in the original blog post.
Four new hands-on training courses have been launched, focusing on crafting error handling strategies using Go, Java, Python, and TypeScript SDKs, designed for developers working with Temporal applications. The courses aim to equip learners with the skills to recommend, implement, and integrate error handling strategies, including understanding platform versus application errors, creating custom Retry Policies, and employing techniques like Activity Heartbeating and the Saga pattern for Workflow Execution. These courses are foundational for any Temporal developer, particularly those who have completed Temporal 101 and 102 courses, and they are part of a broader developer track that will soon include training on the .NET SDK.
Oct 29, 2024 566 words in the original blog post.
Temporal Cloud's shift to a multi-cloud platform, expanding from AWS to Google Cloud, underscores the evolving necessity for SaaS providers to adopt multi-cloud strategies driven by customer needs and market dynamics. This expansion faced challenges such as increased architectural complexity and the need to maintain feature parity across providers, which were addressed by leveraging cloud-agnostic workflows and Temporal's durable execution model. These workflows, using a factory pattern and provider-specific implementations, allowed Temporal Cloud to manage distributed systems efficiently while maintaining a clean and extensible codebase. The experience highlights the importance of adapting to the specific requirements and offerings of different cloud providers, and Temporal Cloud's ongoing efforts to achieve feature parity and eventually expand to Azure demonstrate a commitment to a flexible, customer-centric approach in the multi-cloud landscape.
Oct 28, 2024 2,769 words in the original blog post.
In a playful and spooky-themed exploration, Temporal's best practices and anti-patterns are outlined through movie analogies, suggesting that workflows in Temporal should be simple and focused rather than overly complex, akin to "The MEGA Workflow" scenario. The importance of allowing Temporal's default settings to manage state and retries is emphasized, avoiding unnecessary complexity and potential conflicts with state machines. Error handling is likened to horror movie decisions, where Temporal's automatic activity retries can prevent premature workflow failure, although customization is sometimes necessary for time-sensitive processes. Compensation techniques are discussed to manage business failures, allowing workflows to succeed even when parts of the process fail, similar to undoing actions in a Saga Pattern. Bonus tips include leveraging Temporal's built-in metrics and visibility tools to avoid operational pitfalls, managing resource usage to prevent performance issues, and fostering community collaboration to build robust applications.
Oct 21, 2024 1,651 words in the original blog post.
The blog post explores best practices and anti-patterns for using Temporal, an open-source platform for managing workflows and microservices, by drawing parallels with iconic spooky movies. It emphasizes the importance of not excessively wrapping Temporal SDKs to avoid obscuring features and making updates difficult, while also highlighting the significance of idempotency and the careful use of Local Activities to prevent unintended consequences in workflow executions. Temporal's "time travel" feature, which allows users to reset and replay workflows to correct errors, is likened to fixing a timeline mistake, and users are advised to manage Workflow History size to avoid exceeding limits. Additionally, the post underscores the necessity of ensuring workflow determinism for successful replays and updates, and encourages developers to leverage Temporal's features like Signals and Queries to enhance workflow efficiency. Through thematic storytelling, the post aims to engage developers and guide them in optimizing their use of Temporal.
Oct 17, 2024 1,558 words in the original blog post.
Temporal has introduced improvements to its developer experience for Signal and Update handlers to address challenges like concurrency issues, initialization problems, and incomplete handlers in Workflows. These enhancements include the introduction of synchronization primitives across all Temporal SDKs to handle interleaved signals without using queues, Workflow Initialization Methods for ensuring state readiness before message handling, and a method to confirm that all handlers have finished before a Workflow exits to prevent data inconsistency. While these updates promote the use of handler styles for interactive Workflows, queues remain a robust option for scenarios requiring precise control over message processing order and timing. The changes aim to simplify the creation of powerful, interactive Workflows with fewer bugs, and extensive documentation and samples have been provided to guide developers in adopting these new practices.
Oct 15, 2024 1,461 words in the original blog post.
Durable Execution is a powerful concept used by companies like Stripe, Netflix, and Datadog to address challenges in distributed systems by ensuring that code execution continues seamlessly despite hardware, network, or service failures. By introducing a higher level of abstraction, Durable Execution automates the handling of retries, timeouts, and resource management, allowing developers to focus on building applications without delving into intricate failure scenarios. This approach simplifies the implementation of distributed system design patterns such as event-driven architecture, task queues, and sagas, while enhancing reliability, testability, and observability. Temporal, an open-source framework, exemplifies these capabilities, providing a robust environment for creating scalable and resilient applications across multiple languages, including .NET, Go, Java, Python, TypeScript, and PHP. The framework's founders, with extensive experience in similar technologies, have contributed to its widespread adoption, allowing developers to efficiently coordinate services, APIs, and data stores, resulting in faster development cycles and improved system reliability.
Oct 14, 2024 2,402 words in the original blog post.
A fictional tale of a haunted bank highlights the real challenges faced by a financial institution, referred to as Money Co., which struggled with frequent failures in its SFTP-based process for uploading and downloading account balances and transfers. These failures often required human intervention and caused operational delays, exacerbated by the system's inability to handle heavy database loads. To address these issues, Money Co. migrated its daily sweep process to Temporal, a move that improved system stability and resilience by leveraging Temporal's event history for error investigation and allowing for a gradual, controlled rollout of improvements. This migration not only delivered immediate positive impacts but also provided a more reliable foundation for future operations.
Oct 09, 2024 561 words in the original blog post.