Home / Companies / Stream / Blog / January 2018

January 2018 Summaries

3 posts from Stream

Filter
Month: Year:
Post Summaries Back to Blog
A new integration package has been introduced, serving as a Zend Framework module, to facilitate the use of Stream in Zend Framework applications by exposing the lower-level Stream PHP client as a pre-configured service. This integration simplifies the setup process, requiring only the installation of the package via Composer and a few configuration adjustments, such as adding the module to the application's config file and setting up environment variables for sensitive information. The module adheres to PSR-11 standards, allowing for easy injection of a configured object using a service container. This streamlined process enables developers to quickly leverage Stream's capabilities for building scalable newsfeeds and activity streams, offering a convenient solution for those familiar with Zend Framework. More detailed documentation and support are available for users new to Stream, ensuring a smooth onboarding experience.
Jan 30, 2018 496 words in the original blog post.
Stream is an API service that facilitates the creation of news feeds and activity streams, serving over 500 companies and reaching more than 300 million end users, including notable clients like Product Hunt and Under Armour. Initially developed in Amsterdam and later expanded to Boulder, Colorado, Stream has evolved significantly over three years, now boasting a team of over 15 developers. The infrastructure, originally built with Python and Cassandra, transitioned to Go and a custom key-value store based on RocksDB and Raft to enhance performance and simplify architecture, resulting in a significant reduction in latency and server requirements. Stream employs a hybrid approach of fanout-on-write and fanout-on-read to manage its data, offering optimal performance for both highly connected and sparse datasets. The company's stack incorporates a variety of technologies, including Go for its primary backend services, Python for machine learning and devops, and Django for its website, while also leveraging external services like AWS for hosting and Grafana for monitoring. Stream's real-time capabilities are powered by Go, Redis, and the Gorilla WebSocket library, with a focus on robust devops practices and comprehensive testing to ensure reliability and performance across multiple global regions.
Jan 29, 2018 2,439 words in the original blog post.
Doctrine, a widely-used object-relational mapping library in PHP, has now been integrated with a new ORM library specifically designed for it, allowing seamless integration with various applications, including those not built on the Symfony framework. The library enables activity tracking by hooking into the entity lifecycle events, such as creation and deletion, using a ModelListener class that interacts with Stream's API to manage activity feeds. An example application demonstrates the integration by allowing users to sign up, follow others, and interact through posts and likes, with activities being monitored and displayed in personalized feeds. The library requires activity entities to implement a specific interface or use a provided trait to ensure compatibility, facilitating the generation of activity data for Stream's services. Users can perform advanced operations using the FeedManager to manage timelines and activity streams efficiently. The integration aims to simplify the process of building scalable news feeds and activity streams, inviting feedback and collaboration from the community for enhancements.
Jan 04, 2018 781 words in the original blog post.