Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Evolutionary Architecture

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Evolutionary Architecture

Avatar for 정한빈

정한빈

March 08, 2024
Tweet

More Decks by 정한빈

Other Decks in Technology

Transcript

  1. 1. ૓ച੸ ইఃఫ୊ۆ ղо ૠ ௏٘о ৢ߄ܲ ௏٘ੋо? ࠺ૉפझ ۽૒ਸ

    ୽઒ೞחо? ৘࢚஖ ޅೠ ী۞ ா੉झо ઓ੤ೞחо? ࢿמ ѐࢶ੄ ৈ૑о ੓חо? ঱যী ੸೤ೠ झఋੌ۽ ੘ࢿغ঻חо? (pythonicೠо)
  2. 1. ૓ച੸ ইఃఫ୊ۆ ղо ૠ ௏٘о ৢ߄ܲ ௏٘ੋо? ࠺ૉפझ ۽૒ਸ

    ୽઒ೞחо? ৘࢚஖ ޅೠ ী۞ ா੉झо ઓ੤ೞחо? ࢿמ ѐࢶ੄ ৈ૑о ੓חо? ঱যী ੸೤ೠ झఋੌ۽ ੘ࢿغ঻חо? (pythonicೠо) ৢ߄ܲ ইఃఫ୊ܳ ૑ೱೞח ௏٘ੋо
  3. [PART 1 ৉೟] CHAPTER 1 ૓ച੸ ࣗ೐౟ਝয ইఃఫ୊ 1.1 ૓ച੸

    ࣗ೐౟ਝয੄ җઁ 1.2 ૓ച੸ ইఃఫ୊ 1.3 ࢚द ߸ചೞח ജ҃੄ ੢ӝ ҅ദ ࣻ݀ оמࢿ 1.4 दрী ٮܲ ইఃఫ୊੄ ࢿמ ੷ೞ ߑ૑ 1.5 ৵ ૓ചੋо? CHAPTER 2 ೖ౟פझ ೣࣻ 2.1 ੿੄ 2.2 ߧ઱ 2.3 ೖ౟פझ ೣࣻח ־о ੘ࢿೞחо 2.4 ೖ౟פझ ೣࣻ పझ౟ ೐ۨ੐ਕ௼ ࢶఖ 2.5 Ѿҗ vs ҳഅ CHAPTER 3 ੼૓੸ ߸ച ূ૑פয݂ 3.1 ੼૓੸ ߸ച CHAPTER 4 ইఃఫ୊ Ѣߡքझ ੗زച 4.1 ೖ౟פझ ೣࣻ৬ ইఃఫ୊ Ѣߡքझ 4.2 ௏٘ ӝ߈ ೖ౟פझ ೣࣻ 4.3 ఢః بҳ 4.4 ా೤ ইఃఫ୊ 4.5 ؘ࠳২झ 4.6 ূఠ೐ۄ੉ૉ ইఃఫ୊ 4.7 ೖ౟פझ ೣࣻח ޖӝо ইצ ୓௼ܻझ౟׮ 4.8 ೖ౟פझ ೣࣻ ޙࢲച [PART 2 ҳઑ] CHAPTER 5 ૓ചೞח ইఃఫ୊ షಫ۽૑ 5.1 ૓ച оמೠ ইఃఫ୊ ҳઑ 5.2 ইఃఫ୊ ௫థ ߂ ࣁ࠙ࢿ 5.3 ҅ড 5.4 ੤ࢎਊ ಁఢ ਃড CHAPTER 6 ૓ച੸ ؘ੉ఠ 6.1 ૓ച੸ ؘ੉ఠ߬੉झ ࢸ҅ 6.2 ࠗ੸੺ೠ ؘ੉ఠ ঵൨ 6.3 ֎੉౭࠳ীࢲ ೖ౟פझ ೣࣻ۽ [PART 3 ৔ೱ۱] CHAPTER 7 ૓ച оמೠ ইఃఫ୊ ҳ୷ 7.1 ૓ച੸ ইఃఫ୊੄ ਗܻ 7.2 ৉೟ 7.3 Ӓܽ೙٘ ೐۽ં౟ 7.4 ӝઓ ইఃఫ୊ ѐઑ 7.5 ইఃఫ୊ ݃੉Ӓۨ੉࣌ 7.6 ૓ച੸ ইఃఫ୊ ҳ୷ о੉٘ۄੋ 7.7 ೖ౟פझ ೣࣻ ઱ب ইఃఫ୊ ਃড CHAPTER 8 ૓ച੸ ইఃఫ୊੄ ೣ੿җ উ౭ಁఢ 8.1 ӝࣿ ইఃఫ୊ 8.2 ૐ࠙ ߸҃ 8.3 ࠺ૉפझ ҙबࢎ ਃড CHAPTER 9 ইఃఫ୊ पୌ 9.1 ઑ૒੸ ਃੋ 9.2 ࠺ૉפझ ࢎ۹ 9.3 ূఠ೐ۄ੉ૉ ೖ౟פझ ೣࣻ ҳ୷ 9.4 द੘ ૑੼ 9.5 ޷ې ੹ݎ 9.6 غח ੉ਬ৬ উ غח ੉ਬ ਃড 2. ૓ച੸ ইఃఫ୊ ҳࢿ
  4. [PART 1 ৉೟] CHAPTER 1 ૓ച੸ ࣗ೐౟ਝয ইఃఫ୊ 1.1 ૓ച੸

    ࣗ೐౟ਝয੄ җઁ 1.2 ૓ച੸ ইఃఫ୊ 1.3 ࢚द ߸ചೞח ജ҃੄ ੢ӝ ҅ദ ࣻ݀ оמࢿ 1.4 दрী ٮܲ ইఃఫ୊੄ ࢿמ ੷ೞ ߑ૑ 1.5 ৵ ૓ചੋо? CHAPTER 2 ೖ౟פझ ೣࣻ 2.1 ੿੄ 2.2 ߧ઱ 2.3 ೖ౟פझ ೣࣻח ־о ੘ࢿೞחо 2.4 ೖ౟פझ ೣࣻ పझ౟ ೐ۨ੐ਕ௼ ࢶఖ 2.5 Ѿҗ vs ҳഅ CHAPTER 3 ੼૓੸ ߸ച ূ૑פয݂ 3.1 ੼૓੸ ߸ച CHAPTER 4 ইఃఫ୊ Ѣߡքझ ੗زച 4.1 ೖ౟פझ ೣࣻ৬ ইఃఫ୊ Ѣߡքझ 4.2 ௏٘ ӝ߈ ೖ౟פझ ೣࣻ 4.3 ఢః بҳ 4.4 ా೤ ইఃఫ୊ 4.5 ؘ࠳২झ 4.6 ূఠ೐ۄ੉ૉ ইఃఫ୊ 4.7 ೖ౟פझ ೣࣻח ޖӝо ইצ ୓௼ܻझ౟׮ 4.8 ೖ౟פझ ೣࣻ ޙࢲച [PART 2 ҳઑ] CHAPTER 5 ૓ചೞח ইఃఫ୊ షಫ۽૑ 5.1 ૓ച оמೠ ইఃఫ୊ ҳઑ 5.2 ইఃఫ୊ ௫థ ߂ ࣁ࠙ࢿ 5.3 ҅ড 5.4 ੤ࢎਊ ಁఢ ਃড CHAPTER 6 ૓ച੸ ؘ੉ఠ 6.1 ૓ച੸ ؘ੉ఠ߬੉झ ࢸ҅ 6.2 ࠗ੸੺ೠ ؘ੉ఠ ঵൨ 6.3 ֎੉౭࠳ীࢲ ೖ౟פझ ೣࣻ۽ [PART 3 ৔ೱ۱] CHAPTER 7 ૓ച оמೠ ইఃఫ୊ ҳ୷ 7.1 ૓ച੸ ইఃఫ୊੄ ਗܻ 7.2 ৉೟ 7.3 Ӓܽ೙٘ ೐۽ં౟ 7.4 ӝઓ ইఃఫ୊ ѐઑ 7.5 ইఃఫ୊ ݃੉Ӓۨ੉࣌ 7.6 ૓ച੸ ইఃఫ୊ ҳ୷ о੉٘ۄੋ 7.7 ೖ౟פझ ೣࣻ ઱ب ইఃఫ୊ ਃড CHAPTER 8 ૓ച੸ ইఃఫ୊੄ ೣ੿җ উ౭ಁఢ 8.1 ӝࣿ ইఃఫ୊ 8.2 ૐ࠙ ߸҃ 8.3 ࠺ૉפझ ҙबࢎ ਃড CHAPTER 9 ইఃఫ୊ पୌ 9.1 ઑ૒੸ ਃੋ 9.2 ࠺ૉפझ ࢎ۹ 9.3 ূఠ೐ۄ੉ૉ ೖ౟פझ ೣࣻ ҳ୷ 9.4 द੘ ૑੼ 9.5 ޷ې ੹ݎ 9.6 غח ੉ਬ৬ উ غח ੉ਬ ਃড 2. ૓ച੸ ইఃఫ୊ ҳࢿ
  5. 2. ૓ച੸ ইఃఫ୊ ҳࢿ [PART 1 ৉೟] CHAPTER 1 ૓ച੸

    ࣗ೐౟ਝয ইఃఫ୊ 1.1 ૓ച੸ ࣗ೐౟ਝয੄ җઁ 1.2 ૓ച੸ ইఃఫ୊ 1.3 ࢚द ߸ചೞח ജ҃੄ ੢ӝ ҅ദ ࣻ݀ оמࢿ 1.4 दрী ٮܲ ইఃఫ୊੄ ࢿמ ੷ೞ ߑ૑ 1.5 ৵ ૓ചੋо? CHAPTER 2 ೖ౟פझ ೣࣻ 2.1 ੿੄ 2.2 ߧ઱ 2.3 ೖ౟פझ ೣࣻח ־о ੘ࢿೞחо 2.4 ೖ౟פझ ೣࣻ పझ౟ ೐ۨ੐ਕ௼ ࢶఖ 2.5 Ѿҗ vs ҳഅ CHAPTER 3 ੼૓੸ ߸ച ূ૑פয݂ 3.1 ੼૓੸ ߸ച CHAPTER 4 ইఃఫ୊ Ѣߡքझ ੗زച 4.1 ೖ౟פझ ೣࣻ৬ ইఃఫ୊ Ѣߡքझ 4.2 ௏٘ ӝ߈ ೖ౟פझ ೣࣻ [PART 2 ҳઑ] CHAPTER 5 ૓ചೞח ইఃఫ୊ షಫ۽૑ 5.1 ૓ച оמೠ ইఃఫ୊ ҳઑ 5.2 ইఃఫ୊ ௫థ ߂ ࣁ࠙ࢿ 5.3 ҅ড 5.4 ੤ࢎਊ ಁఢ ਃড CHAPTER 6 ૓ച੸ ؘ੉ఠ 6.1 ૓ച੸ ؘ੉ఠ߬੉झ ࢸ҅ 6.2 ࠗ੸੺ೠ ؘ੉ఠ ঵൨ 6.3 ֎੉౭࠳ীࢲ ೖ౟פझ ೣࣻ۽ [PART 3 ৔ೱ۱] CHAPTER 7 ૓ച оמೠ ইఃఫ୊ ҳ୷ 7.1 ૓ച੸ ইఃఫ୊੄ ਗܻ 7.2 ৉೟ 7.3 Ӓܽ೙٘ ೐۽ં౟ 7.4 ӝઓ ইఃఫ୊ ѐઑ 7.5 ইఃఫ୊ ݃੉Ӓۨ੉࣌ 7.6 ૓ച੸ ইఃఫ୊ ҳ୷ о੉٘ۄੋ 7.7 ೖ౟פझ ೣࣻ ઱ب ইఃఫ୊ ਃড CHAPTER 8 ૓ച੸ ইఃఫ୊੄ ೣ੿җ উ౭ಁఢ 8.1 ӝࣿ ইఃఫ୊ 8.2 ૐ࠙ ߸҃ 8.3 ࠺ૉפझ ҙबࢎ ਃড CHAPTER 9 ইఃఫ୊ पୌ 9.1 ઑ૒੸ ਃੋ 9.2 ࠺ૉפझ ࢎ۹ 9.3 ূఠ೐ۄ੉ૉ ೖ౟פझ ೣࣻ ҳ୷ ૓ച੸ ইఃఫ୊੄ ݾ੸,
 पୌ ߑউ ࢎਊೞח ইఃఫ୊ ҳઑ पઁ ࢎ۹
  6. 3. ೖ౟פझ ೣࣻۆ ਬ׫ పझ౟ بݫੋী ؀೧ ߸ചо ӝઓ ӝמী

    ޷஖ח ࠗ੿੸ੋ ৔ೱਸ ߑ૑ = بݫੋী ؀ೠ ޖѾࢿਸ ࠁ੢ೣ
  7. 3. ೖ౟פझ ೣࣻۆ ೖ౟פझ ೣࣻ ইఃఫ୊ী ؀೧ ߸ചо ӝઓ ӝמী

    ޷஖ח ࠗ੿੸ੋ ৔ೱਸ ߑ૑ = ইఃఫ୊ী ؀ೠ ޖѾࢿਸ ࠁ੢ೣ
  8. 3. ೖ౟פझ ೣࣻۆ ૓ച੸ ইఃఫ୊ܳ ҳ୷ೞӝ ਤೠ ࠁഐ ݒழפ્ ࢿמ,

    উ੿ࢿ, ࠁউ, ਍৔ࢿ, ௏٬ ಴ળ ١ ৈ۞ ରਗীࢲ ஏ੿ೞҊ ҙܻ
  9. 3. ೖ౟פझ ೣࣻۆ ೖ౟פझ ೣࣻী ࢎਊغח بҳ • ݽפఠ݂ •

    ௏٘ ݫ౟ܼ • ইఃఫ୊ పझ౟ ೐ۨ੐ਕ௼ • ஠য়झ ূ૑פয݂ • ࠁউ झப
  10. 3. ೖ౟פझ ೣࣻۆ ೖ౟פझ ೣࣻী ࢎਊغח بҳ • ݽפఠ݂ •

    ௏٘ ݫ౟ܼ • ? • ইఃఫ୊ పझ౟ ೐ۨ੐ਕ௼ • Wily • ஠য়झ ূ૑פয݂ • Gremlin • Locust • ࠁউ झப • safety • bandit
  11. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ୶࢚ب ҳഅ ௿ېझী ؀ೠ ୶࢚

    ௿ېझ(ੋఠಕ੉झ)੄ ࠺ਯ (୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ)) ಁః૑ উী ٜয੓ח ୶࢚ ௿ېझ ࣻ
 (ೞա ੉࢚੄ ࣽࣻೠ ੋఠಕ੉झܳ о૑Ҋ ੓ਵݴ ੋझఢझച ೡ ࣻ হח ௿ېझ) ಁః૑ উী ٜয੓ח ௿ېझ ࣻ
  12. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ୶࢚ب ҳഅ ௿ېझী ؀ೠ ୶࢚

    ௿ېझ(ੋఠಕ੉झ)੄ ࠺ਯ (୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ)) ୶࢚ب : ୶࢚੸ ୶࢚ب : ҳ୓੸
  13. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ࠛউ੿ب ਗबҗ ҳब ழ೒݂ ೤ী

    ؀ೠ ਗब ழ೒݂੄ ࠺ਯ (ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ)) ಁః૑ ৻ࠗ ௿ېझী ੄ઓೞח ಁః૑ ղࠗ ௿ېझ੄ ࣻ (੉ ಁః૑ী ੄ઓೞח ৻ࠗ ௿ېझ੄ ࣻ + ಁః૑ ৻ࠗ ௿ېझী ੄ઓೞח ಁః૑ ղࠗ ௿ېझ੄ ࣻ)
  14. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ࠛউ੿ب ਗबҗ ҳब ழ೒݂ ೤ী

    ؀ೠ ਗब ழ೒݂੄ ࠺ਯ (ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ)) ࠛউ੿ب : ࠛউ੿ : উ੿੸ ࠛউ੿ب উ੿੸? ੄ઓ೧ য়ח ಁః૑ٜ੉ ݆਷ ಁః૑ח ߸҃ೠ ղਊ੉ ੄ઓೞח ݽفܳ ݅઒दః۰ݶ ݒ਋ ݆਷ ੌ੉ ೙ਃೞ޲۽ ݒ਋ উ੿੸
  15. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ઱ ҅ৌ ݫ౟ܼ ୶࢚ب৬ ࠛউ੿ب۽

    ҳೡ ࣻ ੓ח ઱ ҅ৌр੄ Ѣܻ https://git.elicer.io/elice/backend/elice-worker/-/blob/master/app/mq_tasks/aibot_run.py?ref_type=heads ୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ) = ୶࢚ب ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ) = ࠛউ੿ب 0 / (1 + 0) = 0 3 / (3 + 0) = 1
  16. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ઱ ҅ৌ ݫ౟ܼ ୶࢚ب৬ ࠛউ੿ب۽

    ҳೡ ࣻ ੓ח ઱ ҅ৌр੄ Ѣܻ https://git.elicer.io/elice/backend/elice-worker/-/blob/master/app/mq_tasks/aibot_run.py?ref_type=heads ୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ) = ୶࢚ب ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ) = ࠛউ੿ب 0 / (1 + 0) = 0 3 / (3 + 0) = 1
  17. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ઱ ҅ৌ ݫ౟ܼ ୶࢚ب৬ ࠛউ੿ب۽

    ҳೡ ࣻ ੓ח ઱ ҅ৌр੄ Ѣܻ https://git.elicer.io/elice/backend/elice-api/-/blob/master/api/orm/models/course.py ୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ) = ୶࢚ب(A) ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ) = ࠛউ੿ب(B) 0 / (1 + 0) = 0 0 / (0 + 100) = 0
  18. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ઱ ҅ৌ ݫ౟ܼ ୶࢚ب৬ ࠛউ੿ب۽

    ҳೡ ࣻ ੓ח ઱ ҅ৌр੄ Ѣܻ https://git.elicer.io/elice/backend/elice-api/-/blob/master/api/orm/models/course.py ୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ) = ୶࢚ب(A) ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ) = ࠛউ੿ب(B) 0 / (1 + 0) = 0 97 / (97 + 94) = 0.508 - ҳब ழ೒݂ ࣻܳ ઴੉Ѣա - ୶࢚ചܳ ؊ ೞѢա
  19. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ઱ ҅ৌ ݫ౟ܼ ୶࢚ب৬ ࠛউ੿ب۽

    ҳೡ ࣻ ੓ח ઱ ҅ৌр੄ Ѣܻ https://git.elicer.io/elice/backend/elice-api/-/blob/master/api/orm/models/course.py ୶࢚௿ېझ ࣻ / (୶࢚௿ېझ ࣻ + ҳഅ௿ېझ ࣻ) = ୶࢚ب(A) ਗब ழ೒݂ ࣻ / (ਗब ழ೒݂ ࣻ + ҳब ழ೒݂ ࣻ) = ࠛউ੿ب(B) 0 / (1 + 0) = 0 97 / (97 + 94) = 0.508 - ҳब ழ೒݂ ࣻܳ ઴੉Ѣա - ୶࢚ചܳ ؊ ೞѢա
  20. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ઱ ҅ৌ ݫ౟ܼ ୶࢚ب৬ ࠛউ੿ب۽

    ҳೡ ࣻ ੓ח ઱ ҅ৌр੄ Ѣܻ ੄ઓࢿ਷ ୶࢚بо ֫਷ ݽٕ੄ ߑೱਵ۽ ൗ۞ঠ ೠ׮ Ex) spring boot Controller -> Service -> repository
  21. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ࣽജ ࠂ੟ب ݽٕ੄ ࠂ੟بܳ ஏ੿ೞח

    ࣻױ (Edge - Node + 2) (Ѿ੿੄ о૙ࣻ - Ѿ੿੉ ߊࢤೠ ௏٘ ۄੋ + 2) IFޙ іࣻ (3 - 2 + 2) = 3
  22. 4. ௏٘ ಿ૕ਸ աఋղח ૑಴ ੐ನ౟ ߑೱࢿ Ex) spring boot

    Controller -> Service -> Repository ۨ੉য р ੄ઓࢿ੄ ߑೱਸ ౣ۷ਸ ҃਋, ੗زਵ۽ ঌ۰઱ח tool