公司:meta
Meta Platforms, Inc.(商业名称:Meta)是美国一家经营社交网络服务、虚拟现实、元宇宙等产品的互联网科技公司,总部位于美国加州门洛帕克,旗下拥有Facebook、Instagram、WhatsApp等社交软件。它是由马克·扎克伯格和他的室友、哈佛学院的学生爱德华多·萨维林、安德鲁·麦科勒姆、达斯廷·莫斯科维茨和克里斯·休斯一起创立的,最初的名字是TheFacebook.com,后简化为Facebook,后于2021年10月28日由扎克伯格宣布改名为Meta。
Meta提供社交网络服务之外的其他产品和服务,包括Facebook Messenger、Facebook Watch和Facebook Portal,之后陆续收购了Instagram、WhatsApp、Oculus、Giphy和Mapillary,并持有Jio Platforms9.9%的股份。
Meta是全球最有价值的公司之一,与微软、亚马逊、苹果和Alphabet一起被认为是五大科技公司之一。
The evolution of Facebook’s iOS app architecture
Facebook for iOS (FBiOS) is the oldest mobile codebase at Meta. Since the app was rewritten in 2012, it has been worked on by thousands of engineers and shipped to billions of users, and it can support hundreds of engineers iterating on it at a time.
Asynchronous computing at Meta: Overview and learnings
Here's what we've learned from making architecture changes to Meta’s event driven asynchronous computing platform.
Tulip: Modernizing Meta’s data platform
Before jumping into the details of the migration story, we’d like to take a step back and try to explain the motivation and rationale for this migration.
Over time, the data platform has morphed into various forms as the needs of the company have grown. What was a modest data platform in the early days has grown into an exabyte-scale platform. Some systems serving a smaller scale began showing signs of being insufficient for the increased demands that were placed on them. Most notably, we’ve run into some concrete reliability and efficiency issues related to data (de)serialization, which has made us rethink the way we log data and revisit the ideas from first principles to address these pressing issues.
Logger is at the heart of the data platform. The system is used to log analytical and operational data to Scuba, Hive, and stream processing pipelines via Scribe. Every product and data platform team interacts with logging. The data format for logging was either Hive Text Delimited or JSON, for legacy reasons. The limitations of these formats are described in our previous article on Tulip.
Open-sourcing Anonymous Credential Service
Anonymous Credential Service (ACS) is a highly available multitenant service that allows clients to authenticate in a de-identified manner.
Retrofitting null-safety onto Java at Meta
Nullsafe is a new static analysis tool that is used at Meta to detect NullPointerException (NPE) errors in Java code.
How Precision Time Protocol is being deployed at Meta
The journey to Precision Time Protocol (PTP) has been a long one. We're sharing a deep technical dive into our PTP migration.
Move faster, wait less: Improving code review time at Meta
Code reviews don’t have to be slow and unproductive. We’re sharing several tools and steps we’ve taken at Meta to make code reviews as fast as possible, without sacrificing quality.
Tulip: Schematizing Meta’s data platform
How Meta developed Tulip, a serialization protocol supporting schema evolution that has enabled us to enforce schemas on data streams.
Improving Instagram notification management with machine learning and causal inference
Here’s how Instagram used causal inference and ML to improve the user experience for daily digest push notifications.
MemLab: An open source framework for finding JavaScript memory leaks
At Meta, MemLab has helped make significant improvements in memory optimization. We hope it will do the same for the larger JavaScript community.
It’s time to leave the leap second in the past
Here’s why engineers at Meta are supporting a larger community push to stop introducing any new leap seconds.
Using Hermes’s Quicksort to run Doom: A tale of JavaScript exploitation
In 2020, a security researcher flagged a peculiar bug in Hermes’s Quicksort implementation. Here’s how security teams at Meta fixed the bug.
Building text animations for Instagram Stories
In August 2020, Instagram launched a set of dynamic and fun text styles followed by animations to give people more choices to express themselves on Stories and Reels. This was the first major update to Stories’ text tools since 2016, and we wanted to share how we approached some obstacles we encountered and what we learned along the way. With all the surprises thrown at us throughout the development of this project, we’ve included our own surprise for our users on iOS: We hid one extra text style for you. ✨ Comment if you find this Easter egg, but don’t ruin the surprise for others!
Under the hood: Meta’s cloud gaming infrastructure
The promise of cloud gaming is a promise to democratize gaming. Anyone who loves games should be able to enjoy them and share the experience with their friends, no matter where they’re located, and even if they don’t have the latest, most expensive gaming hardware. Facebook launched its cloud gaming platform in 2020 to give anyone on Facebook instant access to native Android and Windows games across every screen and web browser.
Creating the unprecedented access offered by cloud gaming required engineers at Meta to rise to new challenges and develop a growing hardware infrastructure capable of delivering quality game experiences to people all over the world.
But gaming itself is also evolving. From new 3D experiences like AR and VR to what will eventually become the metaverse, people all over the world want to play increasingly immersive games as seamlessly and easily as possible. While it will take a massive effort across the industry to bring the metaverse to fruition, we believe creating the infrastructure and solving the challenges of cloud gaming are pointing us toward solutions for the metaverse as well.
Cache made consistent: Meta’s cache invalidation solution
When it comes to cache invalidation, we believe we now have an effective solution to bridge the gap between theory and practice.
Introducing Zelos: A ZooKeeper API leveraging Delos
Introducing Zelos, a feature- and performance-compatible implementation of ZooKeeper on Delos.