mirror of
https://github.com/kamranahmedse/developer-roadmap.git
synced 2025-08-22 08:53:01 +02:00
Add backend performance best practices
This commit is contained in:
@@ -5,7 +5,7 @@ const CONTENT_DIR = path.join(__dirname, '../content');
|
|||||||
// Directory containing the best-practices
|
// Directory containing the best-practices
|
||||||
const BEST_PRACTICE_CONTENT_DIR = path.join(
|
const BEST_PRACTICE_CONTENT_DIR = path.join(
|
||||||
__dirname,
|
__dirname,
|
||||||
'../src/data/best-practices'
|
'../src/data/best-practices',
|
||||||
);
|
);
|
||||||
const bestPracticeId = process.argv[2];
|
const bestPracticeId = process.argv[2];
|
||||||
|
|
||||||
@@ -33,18 +33,18 @@ if (!bestPracticeDirName) {
|
|||||||
|
|
||||||
const bestPracticeDirPath = path.join(
|
const bestPracticeDirPath = path.join(
|
||||||
BEST_PRACTICE_CONTENT_DIR,
|
BEST_PRACTICE_CONTENT_DIR,
|
||||||
bestPracticeDirName
|
bestPracticeDirName,
|
||||||
);
|
);
|
||||||
const bestPracticeContentDirPath = path.join(
|
const bestPracticeContentDirPath = path.join(
|
||||||
BEST_PRACTICE_CONTENT_DIR,
|
BEST_PRACTICE_CONTENT_DIR,
|
||||||
bestPracticeDirName,
|
bestPracticeDirName,
|
||||||
'content'
|
'content',
|
||||||
);
|
);
|
||||||
|
|
||||||
// If best practice content already exists do not proceed as it would override the files
|
// If best practice content already exists do not proceed as it would override the files
|
||||||
if (fs.existsSync(bestPracticeContentDirPath)) {
|
if (fs.existsSync(bestPracticeContentDirPath)) {
|
||||||
console.error(
|
console.error(
|
||||||
`Best Practice content already exists @ ${bestPracticeContentDirPath}`
|
`Best Practice content already exists @ ${bestPracticeContentDirPath}`,
|
||||||
);
|
);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
@@ -88,10 +88,12 @@ function prepareDirTree(control, dirTree) {
|
|||||||
return { dirTree };
|
return { dirTree };
|
||||||
}
|
}
|
||||||
|
|
||||||
const bestPractice = require(path.join(
|
const bestPractice = require(
|
||||||
__dirname,
|
path.join(
|
||||||
`../public/jsons/best-practices/${bestPracticeId}`
|
__dirname,
|
||||||
));
|
`../src/data/best-practices/${bestPracticeId}/${bestPracticeId}`,
|
||||||
|
),
|
||||||
|
);
|
||||||
const controls = bestPractice.mockup.controls.control;
|
const controls = bestPractice.mockup.controls.control;
|
||||||
|
|
||||||
// Prepare the dir tree that we will be creating
|
// Prepare the dir tree that we will be creating
|
||||||
|
4527
src/data/best-practices/backend-performance/backend-performance.json
Normal file
4527
src/data/best-practices/backend-performance/backend-performance.json
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
jsonUrl: '/jsons/best-practices/backend-performance.json'
|
||||||
|
pdfUrl: '/pdfs/best-practices/backend-performance.pdf'
|
||||||
|
order: 1
|
||||||
|
briefTitle: 'Backend Performance'
|
||||||
|
briefDescription: 'Backend Performance Best Practices'
|
||||||
|
isNew: true
|
||||||
|
isUpcoming: false
|
||||||
|
title: 'Backend Performance Best Practices'
|
||||||
|
description: 'Detailed list of best practices to improve your backend performance'
|
||||||
|
dimensions:
|
||||||
|
width: 968
|
||||||
|
height: 1860.38
|
||||||
|
schema:
|
||||||
|
headline: 'Backend Performance Best Practices'
|
||||||
|
description: 'Detailed list of best practices to improve the backend performance of your website. Each best practice carries further details and how to implement that best practice.'
|
||||||
|
imageUrl: 'https://roadmap.sh/best-practices/backend-performance.png'
|
||||||
|
datePublished: '2023-01-23'
|
||||||
|
dateModified: '2023-01-23'
|
||||||
|
seo:
|
||||||
|
title: 'Backend Performance Best Practices'
|
||||||
|
description: 'Detailed list of best practices to improve the backend performance of your website. Each best practice carries further details and how to implement that best practice.'
|
||||||
|
keywords:
|
||||||
|
- 'backend performance'
|
||||||
|
- 'api performance'
|
||||||
|
- 'backend performance best practices'
|
||||||
|
- 'backend performance checklist'
|
||||||
|
- 'backend checklist'
|
||||||
|
- 'make performant backends'
|
||||||
|
---
|
@@ -0,0 +1 @@
|
|||||||
|
# Architectural styles
|
@@ -0,0 +1 @@
|
|||||||
|
# Async logging
|
@@ -0,0 +1 @@
|
|||||||
|
# Authentication authorization
|
@@ -0,0 +1 @@
|
|||||||
|
# Cache invalidation
|
@@ -0,0 +1 @@
|
|||||||
|
# Caching locations
|
@@ -0,0 +1 @@
|
|||||||
|
# Caching strategies
|
@@ -0,0 +1 @@
|
|||||||
|
# Cdns
|
@@ -0,0 +1 @@
|
|||||||
|
# Cleanup data
|
@@ -0,0 +1 @@
|
|||||||
|
# Compiled languages
|
@@ -0,0 +1 @@
|
|||||||
|
# Connection pool settings
|
@@ -0,0 +1 @@
|
|||||||
|
# Connection pooling
|
@@ -0,0 +1 @@
|
|||||||
|
# Connection timeouts
|
@@ -0,0 +1 @@
|
|||||||
|
# Critical paths
|
@@ -0,0 +1 @@
|
|||||||
|
# Db indexes
|
@@ -0,0 +1 @@
|
|||||||
|
# Denormalize
|
@@ -0,0 +1 @@
|
|||||||
|
# Enable compression
|
@@ -0,0 +1 @@
|
|||||||
|
# Implement pagination
|
@@ -0,0 +1 @@
|
|||||||
|
#
|
@@ -0,0 +1 @@
|
|||||||
|
# Join operations
|
@@ -0,0 +1 @@
|
|||||||
|
# Keep alive
|
@@ -0,0 +1 @@
|
|||||||
|
# Lazy eager
|
@@ -0,0 +1 @@
|
|||||||
|
# Load balancing
|
@@ -0,0 +1 @@
|
|||||||
|
# Message brokers
|
@@ -0,0 +1 @@
|
|||||||
|
# Minimize iframe count
|
@@ -0,0 +1 @@
|
|||||||
|
# Monitoring logging
|
@@ -0,0 +1 @@
|
|||||||
|
# Network latency
|
@@ -0,0 +1 @@
|
|||||||
|
# Offload heavy
|
@@ -0,0 +1 @@
|
|||||||
|
# Optimize algorithms
|
@@ -0,0 +1 @@
|
|||||||
|
# Orm queries
|
@@ -0,0 +1 @@
|
|||||||
|
# Pagination large data
|
@@ -0,0 +1 @@
|
|||||||
|
# Perf testing
|
@@ -0,0 +1 @@
|
|||||||
|
# Prefetch preload
|
@@ -0,0 +1 @@
|
|||||||
|
# Profile code
|
@@ -0,0 +1 @@
|
|||||||
|
# Profiling tools
|
@@ -0,0 +1 @@
|
|||||||
|
# Prometheus graphana
|
@@ -0,0 +1 @@
|
|||||||
|
# Reasonable payload
|
@@ -0,0 +1 @@
|
|||||||
|
# Regular audits
|
@@ -0,0 +1 @@
|
|||||||
|
# Replication
|
@@ -0,0 +1 @@
|
|||||||
|
# Request throttling
|
@@ -0,0 +1 @@
|
|||||||
|
# Scaling strategies
|
@@ -0,0 +1 @@
|
|||||||
|
# Select star
|
@@ -0,0 +1 @@
|
|||||||
|
# Similar requests
|
@@ -0,0 +1 @@
|
|||||||
|
# Slow logging
|
@@ -0,0 +1 @@
|
|||||||
|
# Streaming large
|
@@ -0,0 +1 @@
|
|||||||
|
# Unnecessary computation
|
@@ -0,0 +1 @@
|
|||||||
|
# Up to date
|
@@ -0,0 +1 @@
|
|||||||
|
# Use db sharding
|
@@ -0,0 +1 @@
|
|||||||
|
# Utilize caching
|
Reference in New Issue
Block a user