Adobe Behance Scales to Millions of Users at Lower Cost With Help of Neo4j
Adobe’s Behance social network has grown to over 18 million members. Behance turned to Neo4j, which helped to solve performance issues while enabling new services.
The Company
Part of the Adobe family, Behance, the leading online platform to showcase and discover creative work, has over 18 million members. It provides a platform where web, graphic and fashion designers, illustrators and photographers showcase their work – and the Adobe software used to create it – to millions of monthly visitors. It is also a top online destination for companies looking to hire creative talent on a global scale.
The Challenge
At the core of Behance’s business success is its Activity Feed. This de facto home screen sends out millions of alerts and updates daily, enabling site members to share new work and projects, collaborate and communicate.
The Feed enables users to follow their favorite creatives – some popular artists have more than 15,000 followers – as well as topical “galleries” focused on graphic design, photography and illustration.
Behance introduced the activity feed in 2011, but as it scaled, it began to experience performance problems with slow reads.
In 2015, Behance solved the reads issue using a “fan-out” strategy, which enabled Behance to automatically populate every user feed with new activity items. This approach became problematic as Behance’s data and user volumes continued to grow.
In particular, due to the read-optimized data model, resource utilization skyrocketed every time those users followed by thousands of people took an action.
“Our infrastructure strategy became more problematic as our app grew and we added more users and more data,” Fox concluded. “Neo4j helped to fix the problem. We’ll continue to add more compelling features to our activity experience, thanks to our new flexible infrastructure.”
The Solution
In 2018, Adobe turned to Neo4j, which helped to solve Behance’s performance and cost issues.
Behance now powers its entire Activity Feed infrastructure with just three Neo4j instances.
Human maintenance hours are down, updates that used to take 12-30 minutes now run in 100 milliseconds. Additionally, Neo4j has cut users’ average time from sign-up to initial activity from 1.4 seconds to 400 milliseconds.
“Switching to Neo4j was a huge win for us,” Fox said. “We’ve seen significant performance improvements, and a great reduction in complexity, storage and infrastructure costs. Staff now focus on improving the infrastructure, versus spending time frustratingly micro-managing it.”
The Results
Neo4j has removed Adobe’s data and ops burden and has allowed it to scale up cost-effectively and without constraint.
With Neo4j there has been a significant increase in total projects available in end-user activity feeds.
“It gives users much more content and a much better initial experience on our application,” Fox said.
Adobe has also introduced a more robust backup using Neo4j Causal Clustering. Neo4j’s flexibility and ease of rapid prototyping combined with a “dark launch” strategy has enabled the company to test full-scale production systems behind the scenes before they go live to users.