March 2023 Summaries
10 posts from Momento
Filter
Month:
Year:
Post Summaries
Back to Blog
Navigating the transition from traditional client/server applications to event-driven architectures can be challenging, as described by Allen Helton, who adapted to the shift with the advent of serverless services. This shift introduces concepts like asynchronous processes and topics, which can initially be confusing but become more intuitive over time. The introduction of Momento Topics, a serverless event messaging service, exemplifies the simplification of pub/sub workflows by requiring only two API calls: publish and subscribe. This service, which is priced at $0.50 per GB of data transfer, mandates stateful connections for subscribers and allows publishers to operate without such a requirement, making it compatible with Lambda. While it currently supports server-side events, it does not connect to browsers, offering an accessible entry point for developers with in-browser demos and SDKs for Node.js and Go.
Mar 28, 2023
313 words in the original blog post.
In the Real World Serverless Podcast episode featuring Kirk Kirkconnell, Lead Developer Advocate at Momento, the discussion delves into various aspects of serverless technology, emphasizing the significance of scale-to-zero. Kirkconnell, with his extensive background in database technologies such as DynamoDB, shares insights on single-table design, its appropriate use cases, and potential drawbacks. The conversation also explores the comparative strengths and weaknesses of DAX versus serverless solutions like Momento Cache. A critical topic of discussion is the emergence of faux serverless services and the importance of true serverless models, where costs are minimized by scaling to zero when no traffic is present.
Mar 23, 2023
235 words in the original blog post.
Building the chat capabilities for the game Acorn Hunt required careful planning and implementation, much like the unseen preparation behind seemingly simple tasks on platforms like TikTok. The game, where users collaborate in teams to collect acorns, demands various supporting features such as leaderboards, analytics, and an in-game chat system. The development team utilized Momento Cache for its ephemeral data storage, taking advantage of its automatic data expiration and multiple data types for functionalities like ordering and deduplication. WebSockets were employed to facilitate real-time push notifications for new messages. Acorn Hunt, which is open source and adheres to Momento’s Node.js SDK development practices, invites users to explore its system by signing up for a free auth token.
Mar 17, 2023
421 words in the original blog post.
Momento has released version 1.0 of its Go client, designed to provide a simple and intuitive experience for users working with cache systems. The Go client features a thread-safe CacheClient that manages network connections, allowing developers to focus on code without worrying about thread-safety or connection pools. It also introduces discoverable response types using Type switches, enabling developers to receive strongly-typed response objects for bug-free code and compile-time error checking. Additionally, the client leverages native Go error types for consistent error handling and integrates easily with various Go logging frameworks. To accommodate different environments, the client includes pre-built configurations that simplify network client tuning, while still allowing for full customization if necessary. This release aims to enhance the developer experience by making cache interactions in Go more seamless and efficient.
Mar 16, 2023
830 words in the original blog post.
Caching is essential for enhancing application performance and efficiency by minimizing latency and improving data retrieval speeds across various layers, from the client-side to the database. Implementing caching at multiple levels, such as client-side, API, application, and database caching, can significantly reduce server load and bandwidth usage, making applications more responsive and cost-effective. In AWS environments, tools like Amazon CloudFront, API Gateway, AppSync, and DynamoDB, as well as third-party solutions like Momento Cache, offer diverse caching strategies that cater to different needs and complexities. While caching optimizes performance, it requires careful management of cache invalidation and time-to-live settings. By incrementally adopting caching strategies and understanding user interactions, applications can achieve a balance between speed and resource efficiency.
Mar 16, 2023
1,499 words in the original blog post.
Momento Cache introduces a flush cache feature that allows for the immediate removal of all data from a cache, regardless of its volume, providing a quick reset to a known starting point. This capability is beneficial in scenarios such as development, integration testing, and recovery from errors, where an entire data purge is necessary. Traditional caching systems typically require disruptive and time-consuming processes to flush caches, often involving high CPU consumption and downtime. Momento's distributed architecture offers a near-instantaneous solution that does not affect live application traffic or require reconfiguration of client software, thus saving time and administrative effort. The feature is accessible via Momento's CLI and SDKs for .NET and Rust, with plans to extend support to other programming languages.
Mar 10, 2023
654 words in the original blog post.
Allen Helton, an experienced application developer, discusses the complexities of building a game leaderboard and how Momento Cache simplifies the process with its sorted sets feature. He shares insights from his competitive nature and previous projects, emphasizing the importance of leaderboards in gaming and the challenges they pose, such as managing ephemeral data and designing flexible structures. Helton highlights various leaderboard configurations—point-based, multiple-stat, time-based, and duration-based—demonstrating how Momento Cache's SDKs can handle these with minimal API calls. Through examples from the game Acorn Hunt, he illustrates how to implement robust, scalable, and serverless leaderboards, showcasing the ease and efficiency of using Momento Cache for such tasks. The article also invites readers to explore further through the open-source Acorn Hunt project on GitHub and the API reference page for more details on sorted sets.
Mar 08, 2023
2,174 words in the original blog post.
The blog post explores the evolution of distributed SQL databases, highlighting TiDB by PingCAP as a notable open-source, MySQL-compatible solution that allows for horizontal scaling while maintaining global consistency across data. TiDB's ability to store data in both row and column forms supports hybrid transactional/analytical processing (HTAP), expanding its applicability to a wider range of use cases. The author discusses the trade-offs involved in database management, emphasizing that not all reads require transactional consistency, which can lead to performance and availability gains when using eventually consistent stores or in-memory caches. The post introduces Momento Cache as a serverless caching solution that simplifies architecture and reduces operational complexity, making it a valuable complement to TiDB Cloud. The author shares experiences with AWS implementations, using TiDB and Momento Cache to demonstrate the benefits of read-aside caching patterns, and encourages further exploration and contribution to the growing repository of examples, inviting readers to connect for discussions on integration ideas.
Mar 03, 2023
991 words in the original blog post.
Momento has released version 1.0 of its Python client, emphasizing simplicity and ease of use for both server and client-side operations. The client supports both asyncio and traditional synchronous programming models, allowing flexible integration into existing Python applications. It introduces support for collection data types, enabling the storage of lists, dictionaries, and sets in addition to strings and byte arrays. The API offers discoverable response types with Python type checking to aid in writing bug-free code. The client also integrates with the standard logging library and comes with pre-built configurations tailored for different environments to simplify tuning. Its design ensures usability in both IDEs and interactive environments like Jupyter notebooks, with comprehensive documentation and customization options. Users are encouraged to try the client and provide feedback, with more features promised in future updates.
Mar 02, 2023
912 words in the original blog post.
Momento has introduced a new increment API that enhances its cache capabilities, allowing for more efficient handling of distributed systems by incrementally updating values without the need to manage concurrent resource updates manually. This feature is particularly useful in scenarios requiring counters or rate limiters, such as in their game Acorn Hunt, where it simplifies tracking player scores and managing in-game resources. The API works by accepting a numeric value to adjust the current count, ensuring accuracy and minimizing errors. In addition to tracking game statistics, it also provides a streamlined solution for rate limiting compared to previous methods. The increment API is now available in Momento's Python SDK, with plans for support in other programming languages in the future.
Mar 01, 2023
766 words in the original blog post.