Table of contents
No headings in the article.
আমরা অনেক প্রোগ্রামার আছি যারা বাকেন্ডের প্রোপার জ্ঞান না থাকার কারণে অনেক কিছু শেখার পরেও মনে হয় এটা বুঝি আমি করতে পারব না আরও অনেক কিছু । অনেক সময় বুঝেই উঠতে পারি না যে কখন কোন যায়গায় কোন টেকনোলজিটি ব্যাবহার করতে হবে । তার একটা ছোট খাটো রোডমাপ দেওয়ার চেষ্টা করব ।
আগে কিছু server application Responsibility বা সার্ভারের কাজ কি ?
Listen Request
Process
এখানে আমাদের অনেক কিছু নিয়ে কাজ করতে হয় । লাইক ডাটা ফিল্টার সর্টিং এঁর মত আরও অনেক কঞ্চেপ্টস
Response
1 . API design
REST api
GraphQL
gRPC
SOAP (less than 1% খুব বেশি ব্যাবহার হয় না ১% মত কাজে লাগে সেটাও আডভান্স কাজে )
web socket
Message Broker (not Beginner friendly concepts)
2 . API Security
JWT Token
Refresh Token
OAuth2
SAML
indentity Providers ( cognito, Auth0, Firebase, Okta)
Role based authentication
3 . API Testing
Unit Testing
Acceptance Testing
Load Testing
4 . API Documentation
Swagger
Postman
5 . Database
NoSQL
MongoDB
AWS DynamoDB
SQL
PostGreSQL (এটা MySQL এঁর থেকে অনেক বেশি পারফরমেন্ট )
MySQL
MSSQL / Oracle
In memory (কেশিং এঁর কাজে ব্যাবহার করা হয় )
redis [ এটা শুধু কেশিং এঁর কাজে ব্যাবহার করা হয় না আরও কিছু আডভান্স কাজে লাগে ]
Mem Cached
Graph Database
- Neo4J
6 . linux server
7 . Cloud computing
8 . devOps
এখানকার ৬,৭,৮ আডভান্স কঞ্চেপ্ট এগুলো নিয়ে বিনিনার অবস্থায় চিন্তা করার দরকার নেই ।