강의

멘토링

로드맵

Programming

/

Devops & Infra

Deployment strategies and tips for stable service deployment

In this lecture, you will learn how to understand various deployment strategies and choose the right deployment method for your situation to maximize service stability. You will also get practical tips on setting up Slack alarms and deploying to an operating environment!

(4.9) 21 reviews

1,325 learners

  • foo
이론 중심
배포
Jenkins
CI/CD
Slack
slack-bot
Thumbnail

Reviews from Early Learners

What you will learn!

  • Distribution Strategy

  • Jenkins

  • How to prevent problems that may occur during deployment

Most failures occur during deployment.

Deployment is more than simply the process of applying code to the server. It's a critical step that directly impacts the quality and stability of the service, as well as the user experience. Since even a small deployment error can lead to a major service outage, rapid and safe deployment is essential in modern software development. Especially in environments where technology is rapidly changing and multiple teams collaborate, a more strategic deployment approach is required.

In this lecture, "Deployment Strategies and Tips for Stable Service Deployment," we'll introduce deployment strategies applicable to various situations, drawing on our experience automating deployments using Jenkins. Various deployment methods, such as rolling deployment, blue-green deployment, and canary deployment, each have unique characteristics and benefits and may be optimal for specific situations. We'll cover when and why each deployment strategy is necessary, as well as how to apply them in practice. This will help you minimize risks during deployment and achieve stable service operation.

We also explain how to build a deployment notification system using Slack. Using Slack, you can monitor deployment status in real time and share it transparently with team members, fostering an efficient collaboration environment. We'll also explore what information should be included in notification messages and how to use this to increase the reliability of the deployment process.

Finally, we explain why it's important to understand the difference between development and production environments, and further discuss how to segment your environments to build a stable deployment process. We'll discuss how to thoroughly test in the development environment and safely deploy to the production environment, and we'll also introduce strategies for increasing service stability by segmenting your environment further as needed.

This course provides essential content for those seeking to learn practical deployment strategies and tips beyond deployment automation. It will be helpful to all developers and engineers who aim to reduce deployment failures and ensure stable service operation.

Learn about these things

Distribution Strategy

Learn about the concepts of various deployment strategies—rolling deployment, blue-green deployment, and canary deployment—and the situations in which each strategy applies. Through this, you'll learn how to reliably deploy code without service interruption.

Receive deployment results via Slack

Learn how to receive real-time notifications via Slack during the deployment process, enabling smooth communication and quick responses with your team.

Why separate development and operational environments?

Understand the reasons and importance of separating development and production environments, and learn how to do so to ensure safe testing and stable operations.

Things to note before taking the course

Practice environment

  • Operating System and Version (OS): Windows 10,

  • Tools used: Intellij Community 2023.2, Google Chrome

Learning Materials

Player Knowledge and Precautions

  • We use Vultr for our cloud service, but you can also use other cloud services like AWS or GCP. However, there will be some differences, such as firewall settings, when using other cloud services. However, I believe you'll gain more by researching these issues yourself and experiencing them firsthand.

  • This tutorial will be based on an application built with Spring Boot, but it can be applied to other languages and frameworks with just a few script modifications. If you have any questions, please leave a comment. I'll be happy to help as best as I can.

  • The practice environment configuration is the same as that used in the previous lecture , and even if you did not attend the previous lecture, you can follow the contents in the appendix without any problems taking the course.


  • If you have any questions while taking the course, please leave a question. I'll update the information if necessary.

Recommended for
these people

Who is this course right for?

  • Those who have taken the previous lecture, Distribution Automation Lecture

  • For those who want to try out different distribution strategies to suit their situation

  • For those who want to quickly implement a deployment alarm system with Slack and Jenkins

Need to know before starting?

  • Experience with automating application deployment

  • Experience using GitHub

Hello
This is

5,424

Learners

248

Reviews

111

Answers

4.9

Rating

9

Courses

안녕하세요.

멘토링을 하면서 주니어 개발자들이 어려워 하는 개념들에 대해 어떻게 하면 쉽게 전달할 수 있을지에 대해서 많은 고민을 하고 있는 푸(Foo)라고 합니다.

잘 부탁 드리겠습니다.


이력

  • 2019. 08 ~ 현재 : 카카오 자바 백엔드 개발자

  • 2021. 08 ~ 현재 : programmers 백엔드 데브코스 멘토

  • 2021. 12 ~ 현재 : F-Lab 자바 백엔드 멘토

 

  • 이것이 취업을 위한 백엔드 개발이다 with 자바(링크)

 

기타 이력 및 타 플랫폼 강의들은 아래 GitHub 링크에서 확인할 수 있습니다.

GitHub - https://github.com/lleellee0

Curriculum

All

18 lectures ∙ (1hr 47min)

Published: 
Last updated: 

Reviews

All

21 reviews

4.9

21 reviews

  • KYUNG TAE BAE님의 프로필 이미지
    KYUNG TAE BAE

    Reviews 286

    Average Rating 5.0

    5

    17% enrolled

    • 안민재님의 프로필 이미지
      안민재

      Reviews 15

      Average Rating 5.0

      5

      33% enrolled

      배포에 관해 좀 더 개념을 잡고 학습하는데 좋은 디딤돌 강의였습니다!

      • soyokaze75님의 프로필 이미지
        soyokaze75

        Reviews 20

        Average Rating 4.9

        Edited

        5

        100% enrolled

        • 두두님의 프로필 이미지
          두두

          Reviews 21

          Average Rating 5.0

          5

          100% enrolled

          • 이정훈님의 프로필 이미지
            이정훈

            Reviews 3

            Average Rating 5.0

            5

            33% enrolled

            이론이지만 배포란 무엇이고, 배포 방식들에 대한 개념과 각각의 장단점을 쉽게 설명해주셔서 좋았어요. 좋은 강의 감사합니다!

            Free

            foo's other courses

            Check out other courses by the instructor!

            Similar courses

            Explore other courses in the same field!