Kifi's Innovative Use of Typesafe Reactive Platform for Enhanced Internet Search and Information Sharing

公司规模
Startup
地区
- America
国家
- United States
产品
- Typesafe Reactive Platform
- Scala
- Play
- Akka
- Lucene
技术栈
- Scala
- Play
- Akka
- MySQL
- Memcached
实施规模
- Enterprise-wide Deployment
影响指标
- Productivity Improvements
- Digital Expertise
- Innovation Output
技术
- 应用基础设施与中间件 - API 集成与管理
- 平台即服务 (PaaS) - 应用开发平台
- 分析与建模 - 机器学习
适用行业
- Software
适用功能
- 产品研发
- 商业运营
用例
- 边缘计算与边缘智能
- 远程协作
- 预测性维护
服务
- 软件设计与工程服务
- 系统集成
关于客户
Kifi is an innovative Silicon Valley startup that is revolutionizing the way people search the Internet and store or share information. The platform allows users to easily keep and tag anything they find online, such as articles, videos, pictures, and emails, and quickly find it on top of their favorite search engine results. Kifi also surfaces relevant results that friends have kept, adding a social layer to the search experience. The platform includes messaging to friends, highlighting, and annotation of information found on pages. Kifi's search infrastructure enables users to tag and organize information like a bookmarking system, making it a critical tool for managing online content.
挑战
Kifi CTO and co-founder Eishay Smith faced a significant challenge in building an application capable of performing multiple computationally intensive tasks within a limited time frame. The architecture needed to support high performance at all scales and be flexible enough to scale up and down instantly to meet unpredictable customer usage patterns. Kifi required blazing fast response times throughout the application tiers, robust support for multithreading to maintain performance, and support for rapid continuous deployments. Additionally, the application needed to achieve near-zero downtime and 100% resilience in case of server faults. A strong Service Oriented Architecture (SOA) orientation in the underlying software languages and frameworks was also critical.
解决方案
The Kifi team chose to build their application using the Typesafe stack, leveraging Scala and Play for all web services. The AngularJS website, browser extensions, and mobile clients communicate with the Play API using JSON. Kifi uses Play's native WebSockets capability for low-latency, two-way client communication, enabling real-time messaging and updates. The backend is built with several MySQL databases and a multi-caching layer using Memcached and a custom in-memory cache to improve response times. Kifi's search engine, developed using Lucene components, returns highly personal results, while a custom Graph engine built in Scala generates user recommendations. For distributed work and task scheduling, Kifi uses Typesafe’s Akka, and service coordination is managed with Zookeeper. The Kifi Engineering team actively contributes to the Scala and Play community, fostering a strong ecosystem around these technologies.
运营影响
数量效益
Case Study missing?
Start adding your own!
Register with your work email and create a new case study profile for your business.
相关案例.
Case Study
Infosys achieves a 5–7 percent effort reduction across projects
Infosys, a global leader in consulting, technology, and outsourcing solutions, was facing significant challenges in application development and maintenance due to its distributed teams, changing business priorities and the need to stay in alignment with customer needs. The company used a mix of open source, home-grown and third-party applications to support application development projects. However, challenges resulting from distributed teams using manual processes increased as the company grew. It became more and more important for Infosys to execute its projects efficiently, so they could improve quality, reduce defects and minimize delays.
Case Study
Arctic Wolf Envelops Teamworks with 24x7 Cybersecurity Protection and Comprehensive Visibility
Teamworks, a leading athlete engagement platform, faced rising cyberthreats and needed enhanced visibility into its network, servers, and laptops. With software developers connecting from all over the world, the company sought to improve its security posture and position itself for future growth. The company had a secure platform but recognized the need for a more proactive solution to identify gaps within its technology infrastructure. Data exfiltration and malicious access were top concerns, prompting the need for a comprehensive security upgrade.
Case Study
Sawback IT and Datto Save Client From a Costly Mistake
Ballistic Echo, a software development house, faced a critical challenge when human error led to the deletion of thousands of lines of unique code. This incident occurred before the code was pushed to source control, resulting in significant loss of time, revenue, and work. The previous file-level backup solution they used was slow and inefficient, making it nearly impossible to manually recreate the lost work. The need for a more reliable and efficient business continuity solution became evident to avoid such disasters in the future.
Case Study
Opal Helps Customers Shine Thanks to Datto
SP Flooring & Design Center faced a ransomware attack that encrypted and locked their files. The attack was initiated through a compromised service account set up by an outside vendor. The ransomware infection was isolated quickly, but there was a concern about the extent of the data at risk. The company had backups in place but was unsure of how much information was compromised. The situation required immediate action to prevent further damage and restore the affected data.
Case Study
Zapier Aggregates Multiple Analytics in a Single Dashboard with the New Relic Platform
Zapier, a company that enables non-technical users to push data between hundreds of web applications, was facing a challenge in automating and provisioning servers for optimal performance. The company's environment consisted of 50 Linux servers on the Amazon Elastic Compute Cloud (EC2), a Django application split across several servers, and a backend consisting of a dynamic number of celery task workers fed by messages published to a RabbitMQ cluster. They also maintained a number of internal web services on nginx in front of Gunicorn and Node.js processes. Redis handled simple key and value stores, with logging handled by Graylog2 and ElasticSearch. However, they realized that no level of automation would be sufficient without an effective monitoring solution in place. They needed a tool that could provide immediate alerts when something was breaking and could be easily implemented into their environment.
Case Study
Pipeline Insight Case Study: YARCDATA
YarcData faced challenges in determining the conversion rates of prospects into customers through various marketing efforts and identifying the source of its leads. They wanted to know the percentage of opportunities in the sales pipeline that came from different marketing events, web downloads, or self-sourced sales opportunities. Additionally, they needed the ability to drill down into the data to guide where to allocate more marketing dollars based on the success of previous efforts. Previously, YarcData relied heavily on spreadsheets and Salesforce.com reports, which made it difficult to extract the exact information they needed. This reliance on spreadsheets represented about 70% of their data presentation.