0% found this document useful (0 votes)
31 views12 pages

Java

Uploaded by

rajputsandesh726
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views12 pages

Java

Uploaded by

rajputsandesh726
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 12

Name: Patil Sandesh Lilesh

Class: TYBcs Div: B Roll No. 203


Title: Technologies Behind LinkedIn App
Subject: Object Oriented Programming in Java
–I
College Name: Dr. D. Y. Patil ACS College
Pimpri Pune
Index
1. Introduction
2. Backend Technology Overview
3. Java in LinkedIn
4. Spring Framework
5. Search Technology
6. Data Storage Technologies
7. Build and CI/CD Tools
8. Networking and API Gateway
9. Conclusion
1.Introduction
 LinkedIn is the world's largest professional network on the internet.
You can use LinkedIn to find the right job or internship, connect and
strengthen professional relationships, and learn the skills you need to
succeed in your career. You can access LinkedIn from a desktop,
LinkedIn mobile app, or mobile web experience.
• A complete LinkedIn profile can help you connect with opportunities
by showcasing your unique professional story through experience,
skills, and education.
• LinkedIn is a platform for anyone who is looking to advance their
career. This can include people from various professional backgrounds,
such as small business owners, students, and job seekers. LinkedIn
members can use LinkedIn to tap into a network of professionals,
companies, and groups within and beyond their industry.
2.BACKEND TECHNOLOGY OVERVIEW

• LinkedIn uses a robust and scalable backend technology stack to


address hundreds of thousands of customers, excessive site
visitors, and massive-scale information processing. The backend
era is designed for reliability, performance, and scalability. Here’s
an overview of the key backend technology used by LinkedIn.
• Ex. Java, Spring Framework, Apache Kafka etc.
3.Java In LinkedIn

• The LinkedIn app utilizes various Java technologies to provide a seamless user
experience. One of the primary languages used in the development of LinkedIn is Java,
which is employed to build the app's backend infrastructure. Java is used to create the
server-side logic, database integration, and API connectivity, enabling the app to
process and retrieve user data efficiently. Additionally, Java is used to develop the app's
mobile SDK, which allows developers to integrate LinkedIn features into their own
mobile applications.

• Core Language for Backend Services


• Primary Language: Java is the main programming language for developing the
backend offerings at LinkedIn. It is chosen for its reliability and performance in
managing organization-scale packages.
• JVM (Java Virtual Machine): Java’s capability to run at the JVM permits LinkedIn to
optimize and high-quality-track performance, specifically in handling memory,
multithreading, and concurrency.
4.Spring Framework
• LinkedIn heavily relies on the Spring Framework as part of its backend architecture, particularly for building
and maintaining scalable, robust web applications and microservices. Here's how the Spring Framework is
used in LinkedIn's app:
• 1. Microservices Architecture with Spring Boot
• LinkedIn has shifted from a monolithic architecture to a microservices-based architecture to handle the scale
and performance needs of its millions of users.
• Spring Boot, part of the Spring Framework, is used to create independent, lightweight, and highly scalable
microservices. Each microservice handles specific business functionalities, such as profiles, messaging, or job
recommendations.
• Spring Boot's embedded server (like Tomcat) allows developers to deploy services independently and rapidly
without worrying about heavy configurations.
• 2. Dependency Injection & Loose Coupling (IoC)
• The Inversion of Control (IoC) and Dependency Injection (DI) principles of Spring enable LinkedIn to
manage the dependencies between objects efficiently. This allows for modularity and flexibility in how services
interact with each other.
• LinkedIn can easily manage service dependencies and ensure loose coupling between components, which is
essential for managing large codebases and scaling services.
• 3. Spring MVC for Web Services
• Spring MVC is used to create RESTful web services that power LinkedIn's APIs. These APIs are responsible for
5.Search Technology
• LinkedIn employs various seek technologies, based on Java and different open-supply gear, to address
the complicated project of looking throughout huge datasets, such as user profiles, activity listings,
connections, posts, and greater. Below are the important thing Java-based seek technology and
components used within the LinkedIn app:
• 1. Apache Lucene

• Lucene is a high-performance, open-supply search library written in Java that gives the center indexing
and search functionality for LinkedIn’s seek services.
• Lucene powers complete-textual content seek talents, enabling LinkedIn to index and question big
datasets correctly, including member profiles, process postings, and articles.
• It offers capabilities like relevance scoring, keyword matching, faceting, and filtering, that are critical
for turning in applicable search outcomes to customers.
• 2. Elasticsearch

• Elasticsearch is a disbursed search and analytics engine constructed on pinnacle of Apache Lucene.
6.Data Storage Technologies
1) MySQL
• MySQL is used for various transactional data needs at LinkedIn. It serves as a relational
database for handling structured data with complex relationships.
• LinkedIn employs MySQL for specific use cases that require ACID compliance, such as
user authentication and transactional operations.
• The use of ORM (Object-Relational Mapping) frameworks like Hibernate allows for
efficient data access and manipulation within Java applications.

2) RocksDB
• RocksDB is a high-performance embedded database for key-value storage. LinkedIn
uses it for specific use cases where low-latency access to data is critical.
• It is optimized for fast storage and retrieval, making it suitable for caching and high-
speed data access scenarios.
• LinkedIn employs RocksDB in applications that require quick read/write access to small
7.Build And CI/CD Tools
• CI/CD tools are used to automate the software development process, including the build, test, and
deployment phases. CI/CD stands for continuous integration and continuous delivery/continuous
deployment. The tools help to streamline and speed up the software development lifecycle.
• LinkedIn’s Internal CI/CD Systems
• LinkedIn has developed its very own inner CI/CD systems tailor-made to meet the wishes of its
huge-scale infrastructure. These systems combine with Jenkins and different gear to offer a
continuing CI/CD enjoy.
• They enable builders to cause builds, run tests, and install programs in a streamlined way, with
tracking and alerting features to ensure reliability.
• Docker
• Docker is used for containerization of applications at LinkedIn. It allows developers to package
applications and their dependencies into containers, ensuring consistency across different
environments.
• Docker simplifies the deployment process and enhances scalability, making it easier to manage
microservices architectures.
8.Networking And API Gateway
• API Gateway
• API Gateway acts as a single entry point for all client requests to LinkedIn’s
backend services. It manages and routes requests to the appropriate microservices,
providing several critical functions:
• Request Routing: The API gateway directs requests to the appropriate microservice
based on the URL and other request attributes.

• LinkedIn’s Custom API Gateway


• LinkedIn has developed its own custom API gateway to meet its specific needs,
integrating with its existing Java microservices.
• This gateway is tailored to handle the scale of LinkedIn’s operations, providing
efficient request handling and seamless integration with the company’s extensive
microservices architecture.
• It often employs frameworks like Spring Cloud Gateway for building routing and
filtering capabilities, leveraging Java's robust ecosystem.
9.Conclusion
• LinkedIn's technological structure is a complicated mixture of various gear and
frameworks that make sure its platform stays robust, scalable, and efficient. At
the middle of LinkedIn’s operations are its Java-based technology, which
facilitate the whole thing from facts garage to go looking functionalities and
networking.

• Overall, LinkedIn's structure is a testament to the power of current engineering


practices and technology. By leveraging a numerous array of gear and
frameworks, LinkedIn continues to provide a high-overall performance, user-
centric platform that meets the evolving desires of its international person
base. This strategic aggregate of technology not simplest supports LinkedIn’s
modern-day operations but additionally positions it for destiny growth and
innovation inside the professional networking panorama.
THANK YOU !!

You might also like