Microservices and Container-based Software Development
A tantárgyleírás hatályossága
| Subject name (Hungarian, English) |
Mikroszolgáltatások és konténeralapú szoftverfejlesztés
Microservices and Container-based Software Development
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Subject code | BMEVIAUAV42 | ||||||||||||
| Subject type | — | ||||||||||||
| Training Level | — | ||||||||||||
| Course types and hours (weekly/semester) |
|
||||||||||||
| Assessment type | félévközi érdemjegy | ||||||||||||
| Credits | 2 | ||||||||||||
| Subject coordinator |
Dr. Dudás Ákos
contact:
akos.dudas@aut.bme.hu
|
||||||||||||
| Responsible department |
—
|
||||||||||||
| Faculty | |||||||||||||
| Subject website | — | ||||||||||||
| Primary curriculum type | — | ||||||||||||
| Direct prerequisites – Strong prerequisite | none | ||||||||||||
| Direct prerequisites – Weak prerequisite | none | ||||||||||||
| Direct prerequisites – Parallel prerequisite | none | ||||||||||||
| Direct prerequisites – Milestone prerequisite | none | ||||||||||||
| Direct prerequisites – Exclusion | none |
Objectives
Az előadások és laboratóriumok együtt kerülnek megtartásra. Az elméleti ismeretek az óra elején kerülnek bemutatásra, majd azt követően a laboratórium rész a téma gyakorlati oldalát ismerteti, a hallgatókkal együtt készítve el egy-egy kis alkalmazást, demó rendszert.
|
Hét |
Előadás anyaga |
|
1. |
Bevezetés. Elosztott rendszerek alapproblémái, a monolitikus és mikroszolgáltatások architektúra bemutatása, mikroszolgáltatás alapú rendszerek tervezése. |
|
2. |
Konténer alapú szoftverfejlesztés alapjai, Docker alapvető működése, Docker-konténerek felépítése, Dockerfile írása, docker CLI használata. Kontéer-kompatibilis szoftverfejlesztői környezetek. |
|
3. |
Több komponensből álló rendszer futtatása konténer alapokon, Docker-compose fájlok és használatuk. |
|
4. |
Állapotkezelés mikroszolgáltatások környezetben, adattárolási architektúrák, gyakran használt adatbázis rendszerek (Elasticsearch, Mongodb). |
|
5. |
Tranzakciókezelés elosztott környezetben, „eventually consistent” modell. |
|
6. |
Naplózás és alkalmazás monitorozás elosztott, mikroszolgáltatás alapú rendszerekben, „health check”-ek implementálása a mikroszolgáltatásokban. |
|
7. |
API Gateway-ek használata, útvonal irányítás mikroszolgáltatás alapú rendszerekben. Url alapú útvonalválasztás. |
|
8. |
Mikroszolgáltatások közötti kommunikáció http és message queue alapon; alternatív kommunikációs protokollok (pl. protobuf). Üzenetvesztés és megbízható kommunikáció; üzenet ismétlés, circuit-breaker, throttle minták. |
|
9. |
Kérések nyomkövetése szolgáltatások között, OpenTracing szabvány-alapú rendszerek. |
|
10. |
Konténerek a DevOps folyamatban. Konténer-alapú fordítás, „Docker-in-docker” modell, Azure DevOps használata. |
|
11. |
A Kubernetes platform alapjai, alkalmazás telepítése Kubernetes platformra, Podok és Deploymentek használata. |
|
12. |
A Kubernetes platform alapjai, DaemonSet, Ingress, CronJob használata. Helm chart készítése. |
|
13. |
Mikroszolgáltatás keretrendszerek: Orleans. Mikroszolgáltatás platformok a felhőben (PaaS): Azure Service Fabric. |
|
14. |
Házi feladat bemutatása. |
Learning outcomes
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Knowledge
No learning outcomes recorded.
Skills
No learning outcomes recorded.
Attitudes
No learning outcomes recorded.
Autonomy and responsibility
No learning outcomes recorded.
Oktatási módszertan
Tanulástámogató anyagok
Not provided.
Recommended preliminary knowledge for completing the subject
General rules
Assessment methods
In-term assessments
No detailed assessments provided.
Weight of in-term assessments
No weights provided.
Exam-period assessments
No detailed assessments provided.
Weight of exam elements
No weights provided.
Grade calculation
No grade thresholds provided.
Attendance requirements
No attendance requirements provided.
Rules for retake and resubmission
Not provided.
Short description
Not provided.
Detailed description
Not provided.
Recommended courses
Workload to complete the subject
No workload breakdown provided.
Validity of subject requirements
Curriculum placement
No curriculum placements recorded for this subject version.