<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Quokka young</title>
    <link>https://quokka-young.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Sun, 14 Jun 2026 16:57:31 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>개발자쿼카</managingEditor>
    <image>
      <title>Quokka young</title>
      <url>https://tistory1.daumcdn.net/tistory/5835147/attach/6e194c6a545a46258ed0c815408ab89f</url>
      <link>https://quokka-young.tistory.com</link>
    </image>
    <item>
      <title>Maven &amp;amp; Gradle</title>
      <link>https://quokka-young.tistory.com/23</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;빌드 관리 도구&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;프로젝트 빌드 과정을 자동화하며, 코드 컴파일, 의존성 관리, 테스트 실행, 패키징 등을 수행한다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;즉, 프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램이라고 할 수 있다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;우리가 프로젝트에서 작성한 Java 코드와 프로젝트 내에 필요한 각종 xml, properties, jar 파일들을 JVM이나 WAS가 인식할 수 있도록 패키징 해주는 빌드 과정(빌드 자동화 도구)이라 할 수 있다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;애플리케이션을 개발하면서, 일반적으로 개발에 필요한 다양한 외부 라이브러리들을 다운로드하고, 해당 라이브러리를 사용하여 개발해야하는 상황이 많다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;이 때, 각 라이브러리들을 번거롭게 모두 다운받을 필요 없이, 빌드 도구 설정 파일에 필요한 라이브러리 종류와 버전들, 종속성 정보를 명시하여 필요한 라이브러리들을 설정 파일을 통해 자동으로 다운로드 해주고 이를 간편히 관리해주는 도구이다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt; Maven&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;Java용 프로젝트 관리도구로 Apache의 Ant 대안으로 만들어졌다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;XML 기반의 빌드 도구로, 프로젝트 설정(빌드 중인 프로젝트, 빌드 순서, 다양한 외부 라이브러리 종속성 관계)을 pom.xml 파일에 기술하며, 중앙 저장소에서 필요한 라이브러리를 다운로드 받아 관리한다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;외부 저장소에서 필요한 라이브러리와 플러그인들을 다운로드 한 다음, 로컬시스템의 캐시에 모두 저장한다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;프로젝트 의존성 관리, 라이브러리 버전 관리, 빌드 환경 설정 등을 손쉽게 수행할 수 있다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;예시 코드&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;609&quot; data-origin-height=&quot;748&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Wqgj1/btsfpeWObH5/G8JcW58wVo9k3fUmAnrMj0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Wqgj1/btsfpeWObH5/G8JcW58wVo9k3fUmAnrMj0/img.png&quot; data-alt=&quot;출처 : https://choseongho93.tistory.com/220&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Wqgj1/btsfpeWObH5/G8JcW58wVo9k3fUmAnrMj0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWqgj1%2FbtsfpeWObH5%2FG8JcW58wVo9k3fUmAnrMj0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;460&quot; height=&quot;748&quot; data-origin-width=&quot;609&quot; data-origin-height=&quot;748&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : https://choseongho93.tistory.com/220&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt; Gradle&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2007년에 처음 개발되었고, 2013년 구글에 의해 안드로이드 프로젝트의 빌드 시스템으로 채택되었다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;Apache Maven과 Apache Ant에서 볼 수 있는 개념들을 사용하는 대안으로써 나온 프로젝트 빌드 관리 툴이다.(오픈 소스)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;Groovy DSL(Domain-specific-language : 도메인 특화 언어)로 작성된 빌드 도구로, Maven에 비해 간결하고 유연한 설정이 가능하다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;빌드 캐시 기능을 제공하여 빌드 시간을 줄일 수 있다.&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;프로젝트의 어느 부분이 업데이트 되었는지 알기 때문에, 빌드에 점진적으로 추가할 수 있다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;업데이트가 이미 반영된 빌드의 부분은 더이상 재실행되지 않는다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;Kotlin DSL도 지원하며, 이를 통해 더욱 간결하고 가독성 높은 빌드 스크립트를 작성할 수 있다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;예시 코드&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-05-14 오전 12.32.49.png&quot; data-origin-width=&quot;1216&quot; data-origin-height=&quot;1442&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QP3bL/btsfckYFQAM/Ql9UwQbAFj7tJ6Ajxm64C1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QP3bL/btsfckYFQAM/Ql9UwQbAFj7tJ6Ajxm64C1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QP3bL/btsfckYFQAM/Ql9UwQbAFj7tJ6Ajxm64C1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQP3bL%2FbtsfckYFQAM%2FQl9UwQbAFj7tJ6Ajxm64C1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;460&quot; height=&quot;1442&quot; data-filename=&quot;스크린샷 2023-05-14 오전 12.32.49.png&quot; data-origin-width=&quot;1216&quot; data-origin-height=&quot;1442&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Spring&amp;amp;Spring Boot Story</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/23</guid>
      <comments>https://quokka-young.tistory.com/23#entry23comment</comments>
      <pubDate>Sun, 14 May 2023 00:33:13 +0900</pubDate>
    </item>
    <item>
      <title>JUnit</title>
      <link>https://quokka-young.tistory.com/22</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;유닛테스트(단위테스트)&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;소프트웨어 개발 과정에서 소스 코드의 작은 단위인 메소드, 클래스, 모듈 등이 예상대로 잘 동작하는지를 검증하는 테스트이다.&lt;br /&gt;즉, 소프트웨어의 각 구성요소들이 개별적으로 올바르게 작동하는지를 검증하는 절차이다.&lt;/li&gt;
&lt;li&gt;프로그램을 작은 단위로 쪼개어 각 단위가 정확하게 동작하는지를 검사함으로써 프로그램의 안정성을 높인다.&lt;/li&gt;
&lt;li&gt;System.out.println()으로 하는 번거로운 디버깅이 필요없으며, 개발기간 중 대부분을 차지하는 디버깅 시간을 단축한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;JUnit&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Java 언어를 위한 오픈 소스 단위 테스트 프레임워크이다.&lt;/li&gt;
&lt;li&gt;소스 코드의 작은 단위인 메소드, 클래스, 모듈 등을 테스트할 수 있다.&lt;/li&gt;
&lt;li&gt;단위 테스트를 작성, 실행 및 관리하기 위한 다양한 기능을 제공한다&lt;/li&gt;
&lt;li&gt;assertXXX를 사용하여 테스트 한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Assertion(단정문)&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;JUnit에서 기본으로 제공하는 테스트 API이다.&lt;/li&gt;
&lt;li&gt;구현된 프로그램에 대해 맞다는 가정 하에 적합성을 검증한다.&lt;/li&gt;
&lt;li&gt;프로그래머가 가정한 바가 그대로 구현되었는지 확인한다.&lt;/li&gt;
&lt;li&gt;밑에 적은 여러 메서드들을 제공하며, 테스트 시 비교하거나 제한을 두어 진행할 수 있도록 도와준다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;Assertion(단정문) 활용&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;assertArrayEquals(a, b) : 배열 A와 B가 일치하는지 확인한다.&lt;/li&gt;
&lt;li&gt;assertEquals(a, b) : 객체 A와 B가 같은 값을 가지는지 확인한다.&lt;/li&gt;
&lt;li&gt;assertEquals(a, b, c) : 객체 A와 B가 같은 값을 가지는지 확인한다. (c는 오차범위)&lt;/li&gt;
&lt;li&gt;assertSame(a, b) : 객체 A와 B가 같은 객체인지 확인한다.&lt;/li&gt;
&lt;li&gt;assertTrue(a) : 조건 A가 참인지 확인한다.&lt;/li&gt;
&lt;li&gt;assertNotNull : 객체 A가 null이 아닌지 확인한다.&lt;/li&gt;
&lt;li&gt;assertThat : 검증 값이 특정 상황을 만족하는지 확인한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Annotation 활용&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;@Test : 테스드 대상 메소드임을 의미한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1683989683348&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;@Test
public void testSum() { 

}&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;@Test - 수행시간 제한하기&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1683989603648&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// 시간단위 : 밀리 초
// 결과를 반환하는데 4,000밀리 초를 넘기면 테스트 실패
@Test(timeout=4000)
public void testSum() {

}&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;@Test - Exception 지정하기&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1683989943890&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// RuntimeException이 발생해야 테스트가 성공, 그렇지 않으면 실패
@Test(expected=RuntimeException.class)
public void testSum() {

}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;BeforeClass &amp;amp; AfterClass&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1683990038887&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// 모든 단위 테스트 실행 전에 최초로 한 번 실행(static 필수!)
@BeforeClass
public static void setUpBeforeClass() throws Exception {

}

// 모든 단위 테스트 실행 후에 마지막으로 한 번 실행(static 필수!)
@AfterClass
public static void tearDownAfterClass() throws Exception {

}&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;BeforeEach : 단위 테스트 실행 전마다 실행(= 단위 테스트 갯수만큼 여러 번 실행)&lt;/li&gt;
&lt;li&gt;AfterEach : 단위 테스트 실행 후마다 실행(= 단위 테스트 갯수만큼 여러 번 실행)&lt;/li&gt;
&lt;li&gt;Disabled : 해당 단위 테스트 실행 안함(무시함)&lt;/li&gt;
&lt;li&gt;DisplayName : JUnit 실행 창에 해당 단위 테스트의 메소드명 대신 parameter 값(문구) 출력&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Spring&amp;amp;Spring Boot Story</category>
      <category>Annotation</category>
      <category>assertion</category>
      <category>JUnit</category>
      <category>단위테스트</category>
      <category>단정문</category>
      <category>유닛테스트</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/22</guid>
      <comments>https://quokka-young.tistory.com/22#entry22comment</comments>
      <pubDate>Sun, 14 May 2023 00:19:56 +0900</pubDate>
    </item>
    <item>
      <title>SLF4J</title>
      <link>https://quokka-young.tistory.com/21</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;SLF4J&lt;/b&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Simple Logging Facade for java&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;로깅 프레임워크에 대한 추상화(인터페이스) 역할을 하는 라이브러리이다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;추상 로깅 프레임워크이기 때문에 단독으로 사용하지 않는다.&lt;/li&gt;
&lt;li&gt;인터페이스를 사용하여 로깅을 구현하게 되면 좋은 점은 추후에 필요로 의해 로깅 라이브러리를 변경할 때 코드의 변경 없이 가능하다는 점이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;예시 코드&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1683985956057&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Controller
@Slf4j
public class TestController {
    @GetMapping(&quot;/&quot;)
    public String String(String str){
        try {
            str.toString();
        } catch (NullPointerException e){
            log.trace(&quot;가장 디테일한 로그&quot;);
            log.warn(&quot;경고&quot;);
            log.info(&quot;정보성 로그&quot;);
            log.debug(&quot;디버깅용 로그&quot;);
            log.error(&quot;에러&quot;,e);
        }
        return &quot;test&quot;;
    }
}&lt;/code&gt;&lt;/pre&gt;</description>
      <category>Spring&amp;amp;Spring Boot Story</category>
      <category>@Slf4j</category>
      <category>logging</category>
      <category>Simple Logging Facade for Java</category>
      <category>slf4j</category>
      <category>로깅</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/21</guid>
      <comments>https://quokka-young.tistory.com/21#entry21comment</comments>
      <pubDate>Sat, 13 May 2023 22:55:17 +0900</pubDate>
    </item>
    <item>
      <title>Semantic Web과 Semantic Tag</title>
      <link>https://quokka-young.tistory.com/20</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Semantic Web&lt;/b&gt;&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;Semantic : '의미의, 의미론적인'이라는 뜻이다.&lt;br /&gt;&lt;b&gt;Semantic Web은 '의미있는 웹'&lt;/b&gt;이라고 할 수 있다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;Semantic Web의 목적&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;단순히 사람만이 웹의 정보를 파악하는 것이 아니라, 자동화된 기계가 그 의미를 해석하고, 정보 간의 관계를 이해할 수 있도록 하는 것이다.&lt;/li&gt;
&lt;li&gt;검색 엔진에 노출(검색 엔진은 매일 웹 사이트 정보들을 수집하여 예상되는 검색 키워드에 대응하는 인덱스를 만들어 놓는데, 그 인덱스를 수집하는 기준이 HTML에서 Semantic Tag 사용 유무에 따라 인덱스에 포함 여부가 결정된다.)&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Semantic Tag&lt;/b&gt;&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;Semantic Tag는 '의미있는 태그'&lt;/b&gt;라고 할 수 있다.&lt;br /&gt;즉, HTML Tag들 중에서도 나름의 의미가 있는 태그들을 말한다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;Semantic Tag의 중요성&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;SEO(Search Engine Oprimization)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;검색을 최적화하기 위해서 제목, 부제목, 시멘틱 태그를 잘 활용한다면, 특정 키워드로 검색했을 때, 내가 만든 웹 사이트가 검색창에 노출될 수 있다.&lt;br /&gt;즉, 브라우저의 검색 엔진이 내가 만든 웹 사이트를 어떤 검색 결과에 띄워줘야 되는지를 알려줄 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;웹 접근성&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;웹 페이지를 시각적이 아니라, 음성으로 읽어주는 &quot;스크린리더&quot;를 이용하거나 또는 키보드만을 이용해서 내가 만든 웹 사이트를 이용하는 경우, 적절한 시멘틱 태그로 잘 만들어진 웹 사이트라면 스크린리더나 키보드만을 사용해서 문제없이 동작할 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;유지보수성&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;단순히, div tag로 모든 구조를 짜는 것보다 한 눈에 알아볼 수 있기 때문에, 다른 개발자들이 코드를 유지보수 하기가 더 편해진다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-language=&quot;html&quot;&gt;&lt;code&gt;&amp;lt;header&amp;gt;, &amp;lt;footer&amp;gt;, &amp;lt;nav&amp;gt;, &amp;lt;img&amp;gt;, &amp;lt;iframe&amp;gt; 등이 있음&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;header :&amp;nbsp;&lt;/b&gt;제목, 웹 사이트를 나타내는 로고, 검색 폼, 작성자 이름 등의 요소도 포함할 수 있다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;nav :&lt;/b&gt;&amp;nbsp; header 안에 여러가지 메뉴들이 모여있다면, div로 나누지 말고 nav 태그로 메뉴들을 정리할 수 있다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;footer : &lt;/b&gt;웹 사이트 맨 하단을 보면 부가적인 정보(회사 이름, 주소, 전화번호, 이메일, 팩스 등), 링크, 로고 등을 포함한다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;main :&amp;nbsp;&lt;/b&gt;현재 웹 사이트에서 중요한 컨텐츠는 main 태그 안에 넣는다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;article, section :&amp;nbsp;&lt;/b&gt;main 안에서도 div로만 구성하기보다 용도에 따라 이 두개의 tag를 사용해 볼 수 있다.&lt;br /&gt;article과 section 각각 언제, 어떻게 사용하는지 공부해서 사용하자!&lt;/li&gt;
&lt;li&gt;&lt;b&gt;div, span :&lt;/b&gt; 다른 태그들을 감싸는 컨테이너 태그로, 자체의 의미는 없다.&lt;br /&gt;하지만! div와 span의 차이점을 알고 잘 사용해야 한다. (더 자세한 내용은 공부해서 사용하자!!!! 꼭!!!)
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;div :&amp;nbsp;&lt;/b&gt;브라우저의 한 줄을 모두 차지한다. (블록 컨테이너)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;span :&amp;nbsp;&lt;/b&gt;컨테이너의 크기만큼만 차지한다. (인라인 컨테이너)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;img와 background-image&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;차이점&lt;/b&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;img는 &lt;b&gt;content&lt;/b&gt;에 해당되는 것이며, HTML에서 img 태그로 적용한다.&lt;/li&gt;
&lt;li&gt;background-img는 &lt;b&gt;presentation&lt;/b&gt;에 해당되는 것이며, css에서 적용한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1226&quot; data-origin-height=&quot;270&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ble1Bo/btsb5lSdF8h/0AlaP5VrEykFluEEnyKau0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ble1Bo/btsb5lSdF8h/0AlaP5VrEykFluEEnyKau0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ble1Bo/btsb5lSdF8h/0AlaP5VrEykFluEEnyKau0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fble1Bo%2Fbtsb5lSdF8h%2F0AlaP5VrEykFluEEnyKau0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;528&quot; height=&quot;116&quot; data-origin-width=&quot;1226&quot; data-origin-height=&quot;270&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;list-style-type: none;&quot;&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;각각 어떠한 경우에 사용하는지?&lt;/b&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;img&lt;/b&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;회사 로고, 인물 프로필 사진 등 콘텐츠 정보와 연관이 있는 이미지를 사용할 때&lt;/li&gt;
&lt;li&gt;경고 아이콘과 같이 중요한 의미가 내포된 이미지를 사용할 때&lt;/li&gt;
&lt;li&gt;페이지 프린트 시 이미지가 함께 나오도록 할 때&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;background-img&lt;/b&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;이미지가 콘텐츠의 일부가 아닐 때&lt;/li&gt;
&lt;li&gt;이미지 스프라이트 사용할 때&lt;/li&gt;
&lt;li&gt;말 그대로 웹 문서의 배경을 채우기 위한 용도일 때&lt;/li&gt;
&lt;li&gt;페이지 프린트 시 이미지 나오지 않게 할 때&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더 많은 태그들이 있지만 궁금하다면 &lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;a style=&quot;color: #006dd7;&quot; title=&quot;HTML 요소 참고서&quot; href=&quot;https://developer.mozilla.org/ko/docs/Web/HTML/Element&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;HTML 요소 참고서&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;를 참고하여 공부해보자!&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;태그를 사용하다보면 비슷한 태그들이 있는데 사용하는데에 있어서 의견이 다양하며, 아직은 어떤 태그를 어떻게 사용하는게 더 나은 방법인지 모르지만, 계속 공부하면서 많이 사용하다 보면 알 수 있을 것이다!&lt;/span&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc; background-color: #fbfdfc; color: #212529; text-align: start;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;list-style-type: none;&quot;&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>IT Story</category>
      <category>html</category>
      <category>html tag</category>
      <category>semantic tag</category>
      <category>Semantic web</category>
      <category>태그</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/20</guid>
      <comments>https://quokka-young.tistory.com/20#entry20comment</comments>
      <pubDate>Sat, 13 May 2023 08:35:02 +0900</pubDate>
    </item>
    <item>
      <title>Controller</title>
      <link>https://quokka-young.tistory.com/19</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;&lt;b&gt;Controller&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc; color: #333333; text-align: left;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;웹 애플리케이션의 &lt;b&gt;엔드포인트를 처리하는 데 사용&lt;/b&gt;되며, Spring Framework에서 핵심 구성 요소 중 하나이다.&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;클라이언트로부터 &lt;b&gt;요청을 수신하고, 적절한 로직을 수행한 후 응답을 반환한다.&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;&lt;b&gt;모델과 뷰를 연결하는 역할을 하며, 비즈니스 로직과 데이터 처리를 수행한다.&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;Controller는 디자인 패턴 중 하나인 MVC 패턴에서 C(Controller)에 해당한다.&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;Spring에서는 Controller의 역할을 하는 클래스를 다양한 방식으로 정의할 수 있다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;@Controller 어노테이션을 사용하거나, &lt;b&gt;@RestController 어노테이션을 사용하여 RESTful 웹 서비스를 구현할 수도 있다.&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;대표적으로 &lt;b&gt;GET, POST, PUT, DELETE&lt;/b&gt; 등의 여러 종류의 요청을 처리할 수 있다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;이러한 요청을 처리하고 응답을 반환하는 로직이 Controller에 구현된다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;&lt;b&gt;RestController&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;@RestController 어노테이션은 Spring에서 &lt;b&gt;RESTful 웹 서비스를 구현할 때 사용된다.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;@Controller 어노테이션과는 달리, &lt;b&gt;@RestController을 사용하면 해당 클래스의 모든 메서드가 @ResponseBody 어노테이션을 포함한 것으로 간주된다.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;이는 모든 메서드가 HTTP 응답(Response)의 데이터 본문으로 직접 반환됨을 의미한다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;RestController는 Controller의 역할을 하면서, 해당 Controller에서 &lt;b&gt;반환하는 모든 객체를 자동으로 JSON 형태로 변환&lt;/b&gt;하여 클라이언트에게 전송된다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;이를 통해, RESTful 웹 서비스를 쉽게 구현할 수 있다.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;여기서 Restful을 모르겠다면 &lt;a style=&quot;color: #000000;&quot; title=&quot;REST API&quot; href=&quot;https://quokka-young.tistory.com/5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;REST API&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;를 보고 오자!&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #000000;&quot;&gt;&lt;b&gt;RestController 예시&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-05-13 오전 7.53.57.png&quot; data-origin-width=&quot;1562&quot; data-origin-height=&quot;584&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dTFknQ/btsfdqwTyrA/KuZSzAVXo5FDiK1Y0FkTUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dTFknQ/btsfdqwTyrA/KuZSzAVXo5FDiK1Y0FkTUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dTFknQ/btsfdqwTyrA/KuZSzAVXo5FDiK1Y0FkTUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdTFknQ%2FbtsfdqwTyrA%2FKuZSzAVXo5FDiK1Y0FkTUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1562&quot; height=&quot;584&quot; data-filename=&quot;스크린샷 2023-05-13 오전 7.53.57.png&quot; data-origin-width=&quot;1562&quot; data-origin-height=&quot;584&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Spring&amp;amp;Spring Boot Story</category>
      <category>Annotation</category>
      <category>controller</category>
      <category>RestController</category>
      <category>Spring</category>
      <category>springboot</category>
      <category>어노테이션</category>
      <category>컨트롤러</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/19</guid>
      <comments>https://quokka-young.tistory.com/19#entry19comment</comments>
      <pubDate>Sat, 13 May 2023 07:52:51 +0900</pubDate>
    </item>
    <item>
      <title>Markup Language</title>
      <link>https://quokka-young.tistory.com/18</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Markup Language란?&lt;/b&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;: 태그 등을 이용하여 문서나 데이터 구조를 명기하는 언어의 한 가지이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;종류&lt;/b&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc; color: #333333; text-align: left;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;표현적 마크업(Presentational Markup)&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;절차적 마크업(Procedural Markup)&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #000000;&quot;&gt;기술적 마크업(Descriptive Markup) : 문서의 일부에 이름을 다는데 사용된다.&lt;br /&gt;주요 마크업 언어에는 HTML이 있다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>IT Story</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/18</guid>
      <comments>https://quokka-young.tistory.com/18#entry18comment</comments>
      <pubDate>Sat, 13 May 2023 07:48:40 +0900</pubDate>
    </item>
    <item>
      <title>YAML</title>
      <link>https://quokka-young.tistory.com/17</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;YAML이란?&lt;/b&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;YAML Ain't Markup Language의 약자다.&lt;/li&gt;
&lt;li&gt;구성 파일 작성에 자주 사용되는 데이터 직렬화 언어이다.&lt;/li&gt;
&lt;li&gt;XML과 같은 다른 마크업 언어와는 달리, 사람이 읽고 쓰기 쉽고, 기계가 파싱하고 생성하기 쉽다.&lt;/li&gt;
&lt;li&gt;가벼운 데이터 구조이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;YAML 구문&lt;/b&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;JSON의 상위 집합이므로 YAML에서 JSON 파일을 사용할 수 있다.&lt;/li&gt;
&lt;li&gt;Python 스타일의 들여쓰기 방법으로 중첩을 표시한다.&lt;br /&gt;탭 문자는 허용되지 않으므로, 공백을 대신 사용한다. 중괄호, 대괄호, 닫기 태그 또는 따옴표와 같은 통상적인 형식 기호는 없다.&lt;/li&gt;
&lt;li&gt;.yml 또는 .yaml이라는 확장자를 사용한다.&lt;/li&gt;
&lt;li&gt;맵 또는 목록 구조로 되어 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;YAML 예시&lt;/b&gt;&lt;/h3&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-05-13 오전 7.44.26.png&quot; data-origin-width=&quot;527&quot; data-origin-height=&quot;460&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/k9Zxf/btsfclQjRsP/heDI9U7535bpyvowiHMGy0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/k9Zxf/btsfclQjRsP/heDI9U7535bpyvowiHMGy0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/k9Zxf/btsfclQjRsP/heDI9U7535bpyvowiHMGy0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk9Zxf%2FbtsfclQjRsP%2FheDI9U7535bpyvowiHMGy0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;527&quot; height=&quot;460&quot; data-filename=&quot;스크린샷 2023-05-13 오전 7.44.26.png&quot; data-origin-width=&quot;527&quot; data-origin-height=&quot;460&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>IT Story</category>
      <category>markup language</category>
      <category>YMAL</category>
      <category>마크업</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/17</guid>
      <comments>https://quokka-young.tistory.com/17#entry17comment</comments>
      <pubDate>Sat, 13 May 2023 07:45:35 +0900</pubDate>
    </item>
    <item>
      <title>Quokka</title>
      <link>https://quokka-young.tistory.com/16</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;많은 사람들이 나에게 물어본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&quot; 너는 왜 블로그 이름이 Quokka young이야?? &quot;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;... 음.. 단순하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;쿼카라는 동물을 닮아서 내 별명이 쿼카가 됐다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;뒤에 young은 내 이름의 마지막 글자다! (매우 단순)&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;750&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/P3UUS/btsfg4fo6Wa/o1YYH9CbqSQmKfLiFR0JIK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/P3UUS/btsfg4fo6Wa/o1YYH9CbqSQmKfLiFR0JIK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/P3UUS/btsfg4fo6Wa/o1YYH9CbqSQmKfLiFR0JIK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FP3UUS%2Fbtsfg4fo6Wa%2Fo1YYH9CbqSQmKfLiFR0JIK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;750&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;750&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;800&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2b40A/btsfcNFR9TJ/s0W1oMNVTfDO7551fePWGk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2b40A/btsfcNFR9TJ/s0W1oMNVTfDO7551fePWGk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2b40A/btsfcNFR9TJ/s0W1oMNVTfDO7551fePWGk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2b40A%2FbtsfcNFR9TJ%2Fs0W1oMNVTfDO7551fePWGk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;800&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;800&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;쿼카는 캥거루과에 속하는 소형 포유류 동물이다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;항상 웃는 인상 때문에&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;'세상에서 가장 행복한 동물'&lt;/b&gt;이라고 불린다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;천적이 없었기에 사람을 만나도 무서움을 못 느끼고 쿼카 특유의 친화력으로 사람들에게 다가가 함께 사진도 찍을 만큼의 귀여운 동물이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6oIwn/btsfckqgUGN/Qn2Dk1MsYbUopH0XTufxHk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6oIwn/btsfckqgUGN/Qn2Dk1MsYbUopH0XTufxHk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6oIwn/btsfckqgUGN/Qn2Dk1MsYbUopH0XTufxHk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6oIwn%2FbtsfckqgUGN%2FQn2Dk1MsYbUopH0XTufxHk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1024&quot; height=&quot;1024&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;나는 &lt;b&gt;꿈도 희망도 없었고, 내 미래가 그려지지 않았던 평범한 학생이었다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그러다 퍼블리셔라는 직업을 갖게 되었고, 개발자들과 소통하면서 알아듣지 못하는 이야기 속에 같이 끼고 싶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;도대체 자바라는 건 무엇이며, C언어라는 건 어떤 것이고, 알아보지도 못하겠는 영어들 속에서 어떻게 개발이란 걸 하고 있는 것인지, 개발이 궁금하다고 이야기하는 나에게 별 그리기부터 하라는 개발자들의 말들을 이해하고 싶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그렇게 나는 개발이라는 분야에 더 욕심이 생겼고, 도전을 하고 싶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;무모한 도전이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아무것도 모르고 제대로 알아보지 않은 상태에서 도전했기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;비전공자인 나는 어디서부터 어떻게 공부를 시작해야 할지 막막했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;Wecode라는 부트캠프를 다녔고, 거기서 Python과 Django를 배워 웹 개발에 첫걸음을 밟게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그렇게 개발을 시작하게 되었고, 나는 처음으로 사람들이 &lt;b&gt;'본인이 하고 싶고 본인이 일하면서 즐겁고 행복해야하는 직업을 가져야 한다'&lt;/b&gt;라는 말의 이유를 알게되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;하고 싶었던 꿈이 생겼고, 해야만 할 것 같은 꿈이 생겼고, 희망이 생겼고, 내 미래가 그려졌고, 흥미와 재미를 얻었다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;하지만.. 너무 쉽게 생각했었던 거였을까..?&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;취업까지의 준비는 오래 걸렸고, 나는 점점 의지를 잃어갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;면접에서 &quot;이 기간 동안 뭘 준비하고 어떤 걸 했죠?&quot;라는 질문에 머리가 하얘졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;나에게 '&lt;b&gt;간절함'&lt;/b&gt;이 없었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;기초적인 것도 제대로 몰랐고, 외워서 치는 코드, 외우지도 못하며 이해하지도 못한 개발의 흐름, 지식 등..&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;개발에 '개'자도 제대로 알지 못했던 내가 어떻게 개발자를 할 수 있으며, 개발자라고 말할 수 있을까..&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;내가 처음 개발에 첫 걸음을 밟았을 때의 그 감정, 초심 그때로 다시 돌아가 제대로 공부하면서 내 간절함을 표현해보려고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;남들보다 오래걸려도 괜찮으니 포기는 절대 하지 않을 생각이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;난 쿼카처럼 &lt;b&gt;항상 웃으면서 일할 수 있는 개발자&lt;/b&gt;로 성장하고 싶다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;내가 좋아하는 일, 내가 하고 싶은 일은 개발자라는 이 일 하나뿐이고, 웃음을 잃지 않는 개발자로 성장할 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이 웃음의 의미는 '내가 즐겁고 행복하다'라는 의미도 갖고 있지만,&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;'남들도 웃게 만드는 사람이다'&lt;/b&gt;라는 의미도 갖고 있는 개발자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Quokka Story</category>
      <category>일기</category>
      <category>쿼카</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/16</guid>
      <comments>https://quokka-young.tistory.com/16#entry16comment</comments>
      <pubDate>Sat, 13 May 2023 06:16:35 +0900</pubDate>
    </item>
    <item>
      <title>AWS EC2 Instance 생성하기</title>
      <link>https://quokka-young.tistory.com/15</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;지금부턴 &lt;b&gt;EC2 Instance 생성하는 방법&lt;/b&gt;을 같이 알아보려고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혹시! 이 전 &lt;a title=&quot;AWS EC2 Instance 생성 전 용어 알아보기&quot; href=&quot;https://quokka-young.tistory.com/14&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;AWS EC2 Instance 생성 전 용어 알아보기&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;를 읽고 오지 않았다면 먼저 읽어보는걸 추천한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;512&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbFKXv/btsfaLhv4Vr/xeOZc3I3Rt8JxCtsONoj91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbFKXv/btsfaLhv4Vr/xeOZc3I3Rt8JxCtsONoj91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbFKXv/btsfaLhv4Vr/xeOZc3I3Rt8JxCtsONoj91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbFKXv%2FbtsfaLhv4Vr%2FxeOZc3I3Rt8JxCtsONoj91%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;512&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;512&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;일단 &lt;a title=&quot;AWS&quot; href=&quot;https://aws.amazon.com/ko/free/?trk=fa2d6ba3-df80-4d24-a453-bf30ad163af9&amp;amp;sc_channel=ps&amp;amp;sc_campaign=acquisition&amp;amp;sc_medium=ACQ-P%7CPS-GO%7CBrand%7CDesktop%7CSU%7CCore-Main%7CCore%7CKR%7CKR%7CText&amp;amp;ef_id=Cj0KCQiAw9qOBhC-ARIsAG-rdn4sjqYECexmv1SezBRETWOrlboT10ds9Gvr7FSye3domJfnA-Tc7K8aAsumEALw_wcB:G:s&amp;amp;s_kwcid=AL!4422!3!563761819834!e!!g!!aws&amp;amp;ef_id=Cj0KCQiAw9qOBhC-ARIsAG-rdn4sjqYECexmv1SezBRETWOrlboT10ds9Gvr7FSye3domJfnA-Tc7K8aAsumEALw_wcB:G:s&amp;amp;s_kwcid=AL!4422!3!563761819834!e!!g!!aws&amp;amp;all-free-tier.sort-by=item.additionalFields.SortRank&amp;amp;all-free-tier.sort-order=asc&amp;amp;awsf.Free%20Tier%20Types=*all&amp;amp;awsf.Free%20Tier%20Categories=*all&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;AWS&lt;/a&gt;(클릭하여 링크 들어가기)를 들어가서 &lt;b&gt;콘솔에 로그인&lt;/b&gt;을 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;579&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WfViU/btsffvK5q2g/8MXw1mJYQnIiMlls97uTqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WfViU/btsffvK5q2g/8MXw1mJYQnIiMlls97uTqk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WfViU/btsffvK5q2g/8MXw1mJYQnIiMlls97uTqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWfViU%2FbtsffvK5q2g%2F8MXw1mJYQnIiMlls97uTqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;579&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;579&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;1. 첫번째로 EC2에서 사용할 OS Machine을 선택하는 과정이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 Ubuntu Server 18.04 LTS(HVM), SSD Volume Type - 64비트(x86)를 선택했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;여기서 AmaZon Machine Image(AMI)란?&lt;/b&gt;&lt;br /&gt;: 인스턴스 생성에 필요한 모든 소프트웨어 정보를 담고 있는 템플릿 이미지라고 한다.&lt;br /&gt;AMI는 사용자들도 얼마든지 자신의 인스턴스에 맞게 생성할 수 있기 때문에 편리하며 생성 후 동일한 환경을 갖는 인스턴스를 한 번에 생성할 수 있다.&lt;/li&gt;
&lt;li&gt;그럼 위 사진의 오른쪽을 보면 &lt;b&gt;64비트(x86), 64비트(Arm) 중 x86 과 Arm은 도대체 뭘까?&lt;/b&gt; 라는 궁금증이 생겼다.&lt;br /&gt;하지만 여기에 내가 정리하는 것보다 유튜브 영상을 참고 하면 더 좋을 것 같아서 유튜브 영상을 가져왔다.&lt;br /&gt;&lt;b&gt;참고 영상 : &lt;a title=&quot;https://www.youtube.com/watch?v=fBg-L6pwS_0&quot; href=&quot;https://www.youtube.com/watch?v=fBg-L6pwS_0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.youtube.com/watch?v=fBg-L6pwS_0&lt;/a&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=fBg-L6pwS_0&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/RZXjc/hySAoVvJ0c/Vr4po5o3puisVMpBMSBerk/img.jpg?width=640&amp;amp;height=480&amp;amp;face=0_0_640_480&quot; data-video-width=&quot;640&quot; data-video-height=&quot;480&quot; data-video-origin-width=&quot;640&quot; data-video-origin-height=&quot;480&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/fBg-L6pwS_0&quot; width=&quot;640&quot; height=&quot;480&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;616&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmnmXX/btsfgirgD39/RKpGsJ2ti9xzAsCLNnSPnK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmnmXX/btsfgirgD39/RKpGsJ2ti9xzAsCLNnSPnK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmnmXX/btsfgirgD39/RKpGsJ2ti9xzAsCLNnSPnK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmnmXX%2FbtsfgirgD39%2FRKpGsJ2ti9xzAsCLNnSPnK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;616&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;616&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;2. 두번째는 CPU 메모리 등의 서버의 규모를 선택하는 과정이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 프리티어로 사용했기 때문에 t2.micro로 선택했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;EC2는 컴퓨터와 데이터 전송에 따라서 과금이 발생할 수 있기 때문에 다른 사이즈를 선택하면 과금이 많이 생길 수 있다!!!!!&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;596&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vMGLg/btsfegU1Rfk/E75z92I1XnRxCRQ0Uev71k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vMGLg/btsfegU1Rfk/E75z92I1XnRxCRQ0Uev71k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vMGLg/btsfegU1Rfk/E75z92I1XnRxCRQ0Uev71k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvMGLg%2FbtsfegU1Rfk%2FE75z92I1XnRxCRQ0Uev71k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;596&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;596&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;509&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cWss47/btsfe6Lpcs7/Wzdkzdqt8lYB3MF2ITHNgk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cWss47/btsfe6Lpcs7/Wzdkzdqt8lYB3MF2ITHNgk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cWss47/btsfe6Lpcs7/Wzdkzdqt8lYB3MF2ITHNgk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcWss47%2Fbtsfe6Lpcs7%2FWzdkzdqt8lYB3MF2ITHNgk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;509&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;509&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;3. 세번째는 인스턴스 구성 화면이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만드는 EC2 인스턴스는 서브넷에 배치가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 인스턴스를 구성해보면 서브넷을 subnet-0db7d2b396b0187a3 | 기본값 ap-northeast-2a로 설정하고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퍼블릭 IP 자동 할당은 서브넷 사용 설정(활성화)를 선택하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퍼블릭 IP 자동 할당을 활성화 하면 동적으로 공인 IP 주소가 부여되고, EC2 인스턴스가 다시 시작할 때마다 자동으로 변경된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 나중에 고정 IP를 사용하려면 Elastic IP 설정을 하면 고정된 공인 IP를 할당할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음은 종료 방식이다.&lt;br /&gt;종료 방식에는 2가지(중지, 종료)가 있는데, 중지를 선택하면 EC2 셧다운(Shutdown) 시에 OS가 정지돼서 OS Image가 고정이 되고 재시작하면 같은 상태로 시작이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종료를 선택하게 되면 OS를 정지하는 것과 동시에 EC2 인스턴스가 삭제가 되므로 중지를 선택하고 다음으로 넘어가자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 실수로 인스턴스가 삭제됨을 방지하기 위해 종료 방지 기능 활성화 - 우발적인 종료로부터 보호를 체크하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(나는 인스턴스 삭제할 때 이 기능을 체크한지 잊고 있어서 헷갈린 적이 있었ㄷ...)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;VPC(Virtual Private Cloud)란?&lt;br /&gt;&lt;/b&gt;: 사용자의 AWS 계정 전용 가상 네트워크를 말한다.&lt;br /&gt;&amp;nbsp; - VPC는 가상 Private Cloud와 서브넷으로 구성하는 가상 네트워크를 구성해준다.&lt;br /&gt;&amp;nbsp; - VPC 환경을 사용하면 IP 주소를 기반으로 한 논리적인 네트워크 공간을 구성할 수 있다.&lt;br /&gt;&amp;nbsp; - 방화벽 같은 접근 제어 정책을 설정할 수 있다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Private Cloud가 무엇일까?&lt;/b&gt;&lt;br /&gt;: Private Cloud는 인터넷 또는 개인 내부 네트워크를 통해 일반 사용자가 아닌 특정 사용자에게만 제공되는 컴퓨팅 서비스라고 한다.&lt;br /&gt;즉, 기업이 직접 클라우드 환경을 구축하고 이를 기업 내부에서 활용하거나 또는 계열사에 공개하는 것을 뜻한다.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;그럼! &lt;b&gt;서브넷은 무엇일까??&lt;br /&gt;&lt;/b&gt;: 말그대로 부분망이다. IP 주소에서 네트워크 영역을 부분적으로 나눈 부분망, 부분 네트워크를 뜻한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;624&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dltAgt/btsfaKQoVST/dXmVlVh69cJNYKRt6fzOS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dltAgt/btsfaKQoVST/dXmVlVh69cJNYKRt6fzOS0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dltAgt/btsfaKQoVST/dXmVlVh69cJNYKRt6fzOS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdltAgt%2FbtsfaKQoVST%2FdXmVlVh69cJNYKRt6fzOS0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;624&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;624&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;4. 다음으로 스토리지(Storage)를 추가하는 화면이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스토리지(Storage)는 용량을 기본 8GIB보다 올리게 되면 이것 또한 요금이 부과될 수 있으므로 기본 8GIB를 사용한다. 여기선 따로 설정할게 없다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;여기서 말하는 EBS(Elastic Block Store)란?&lt;/b&gt;&lt;br /&gt;(다들 알겠지만 EBS 교육방송을 말하는 것은 아니다......ㅎ)&lt;br /&gt;: 일종의 하드디스크, EC2 인스턴스에 디스크처럼 사용할 수 있는 Block Storage이다.&lt;br /&gt;&amp;nbsp; - EC2에 마운트(Mount)해서 사용하는 스토리지(Storage) 타입이다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;스토리지(Storage)는 무엇일까?&lt;br /&gt;&lt;/b&gt;: 공유파일 시스템을 통해 서버와 애플리케이션에 데이터에 대한 액세스를 제공하도록 클라우드에 데이터를 저장하는 방법을 말한다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;그럼 여기서 마운트(Mount)는 뭘까 궁금해!!!&lt;br /&gt;&lt;/b&gt;: 리눅스 또는 유닉스 운영체제에서 파일 시스템을 연결하는 것을 의미한다.&lt;br /&gt;외부 스토리지에서 제공되는 데이터를 EC2 인스턴스에서 읽고 쓸 수 있게 해주는 방법이다.&lt;br /&gt;예를 들어, 데이터베이스 서버에 대한 디스크 볼륨이나, 파일 공유 서버에서 사용하는 공유 폴더 등에서 유용하게 사용될 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;624&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cyWZk3/btsfaLaIVvf/bzKqc15AnziGXlEsIrpIsk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cyWZk3/btsfaLaIVvf/bzKqc15AnziGXlEsIrpIsk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cyWZk3/btsfaLaIVvf/bzKqc15AnziGXlEsIrpIsk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcyWZk3%2FbtsfaLaIVvf%2FbzKqc15AnziGXlEsIrpIsk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;624&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;624&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;5. 태그를 추가하는 과정이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 Wecode 프로젝트 때 인스턴스 생성하기 위해 만들었던 과정이라 임의로 wecode_project : wehaeyo로 넣어줬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(본인이 원하는 태그를 추가하면 된다.)&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;태그란 무엇인가?&lt;br /&gt;&lt;/b&gt;: 리소스 구성을 위한 메타데이터 역할을 하는 한 쌍의 키와 값이다.&lt;br /&gt;즉, 자원을 관리할 때 관리를 편하게 하기 위하여 사용자가 정의하는 한 쌍의 키와 값이다.&lt;br /&gt;&amp;nbsp; - 언제든지 리소스에서 제거할 수 있다.&lt;br /&gt;&amp;nbsp; - 태그는 자동으로 배정되지 않는다.&lt;br /&gt;&amp;nbsp; - IAM에서 태그를 제어(편집, 생성, 삭제 등)할 수 있는 사용자를 제어할 수 있다.&lt;br /&gt;&amp;nbsp; &amp;nbsp; 즉, IAM 제어 정책 권한을 제어할 수 있다.&lt;br /&gt;&amp;nbsp; - EC2 리소스 태그를 지정해서 비용을 관리할 수 있다.&lt;br /&gt;&amp;nbsp; - 용도에 따라 태그를 지정할 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;623&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bopuzh/btsfeAslT0c/zCiuyfwBjLrWi9lyPVyo90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bopuzh/btsfeAslT0c/zCiuyfwBjLrWi9lyPVyo90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bopuzh/btsfeAslT0c/zCiuyfwBjLrWi9lyPVyo90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbopuzh%2FbtsfeAslT0c%2FzCiuyfwBjLrWi9lyPVyo90%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;623&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;623&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;6. 이번은 보안 그룹 설정 과정이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2에서는 http와 https 접속을 허용하기 위해서는 규칙 추가를 해줘야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러기 위해서는 모든 IP 주소로부터 SSH 접속을 허용하도록 되어있어서 여기서 규칙 추가를 선택하여&lt;br /&gt;&lt;b&gt;유형 - 사용자 지정 TCP / 포트 범위 - 8000 / 소스 - 위치 무관&lt;/b&gt;&amp;nbsp;을 설정해준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;619&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c2cKpA/btsfef9FVSa/ylgdC3R21kXxINO1LpX4p0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c2cKpA/btsfef9FVSa/ylgdC3R21kXxINO1LpX4p0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c2cKpA/btsfef9FVSa/ylgdC3R21kXxINO1LpX4p0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc2cKpA%2Fbtsfef9FVSa%2FylgdC3R21kXxINO1LpX4p0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;619&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;619&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;7. 지금까지 설정한 정보들을 확인하는 화면이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 확인하다가 잘못 설정한 부분이 있다면 이전으로 돌아가서 다시 설정해 주면 된다.(설정했던 정보들이 지워지지 않는다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 시작하기를 선택하면 키 페어를 설정하는 팝업창이 나온다.(...캡처를....못..했.....ㄷ..ㅏ)&lt;br /&gt;&lt;b&gt;새로 만드는 사람은 키 페어 이름을 지정해주고 키 페어는 한 번만 받을 수 있으므로 꼭!!! 기억하거나 본인이 확인할 수 있는 폴더에 잘 저장해서 보관해야 한다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;596&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4rCsr/btse92400Qa/iNcBKZFb6sEw31P1IGut80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4rCsr/btse92400Qa/iNcBKZFb6sEw31P1IGut80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4rCsr/btse92400Qa/iNcBKZFb6sEw31P1IGut80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4rCsr%2Fbtse92400Qa%2FiNcBKZFb6sEw31P1IGut80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;596&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;596&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;9. EC2 Instance 생성 완료!!!!!!!&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;background-color: #ffc1c8;&quot;&gt;&lt;b&gt;여기서 정말 중요한 부분!!!!!!!!!!!&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;background-color: #ffc1c8;&quot;&gt;&lt;b&gt;AWS를 쓸 때 꼭 설정을 잘 확인하면서 선택해야 한다...&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;background-color: #ffc1c8;&quot;&gt;&lt;b&gt;AWS는 내가 생각하지 못했던 부분에서 과금이 나올 수 있고, 생각했던 부분에서도 엄청난 과금이 나올 수 있기에 꼭!!! 잘 확인하고, 공부해서 사용하도록 하자..(내...이야..기다.....ㅎ..)&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;</description>
      <category>AWS Story</category>
      <category>AWS</category>
      <category>ec2</category>
      <category>instance</category>
      <category>인스턴스 생성</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/15</guid>
      <comments>https://quokka-young.tistory.com/15#entry15comment</comments>
      <pubDate>Sat, 13 May 2023 04:43:19 +0900</pubDate>
    </item>
    <item>
      <title>AWS EC2 Instance 생성 전 용어 알아보기</title>
      <link>https://quokka-young.tistory.com/14</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;EC2 Instance 생성하기 전 용어 먼저 알아가 보자.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;(AWS는&lt;span style=&quot;color: #006dd7;&quot;&gt; &lt;a style=&quot;color: #006dd7;&quot; title=&quot; AWS 소개&quot; href=&quot;https://quokka-young.tistory.com/9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;b&gt;AWS 소개&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;를 한 번 읽어 보는 것도 좋다. 중복되는 부분도 있다!)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; background-color: #ffc9af;&quot;&gt;&lt;b&gt;인스턴스란?&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;클라우드의 가상 서버를 말한다. 즉, AWS에서 제공해 주는 클라우드 서버 자원이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #ffc1c8;&quot;&gt;리전(Region)과 가용영역(Availability Zone) 줄여서 AZ)이란?&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;리전(Region)은 AWS의 서비스들이 제공되는 서버의 물리적인 위치(지역)이라고 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;682&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PQXzf/btsfaLPlaxn/T7ybsENyQPKaEuC516tgNK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PQXzf/btsfaLPlaxn/T7ybsENyQPKaEuC516tgNK/img.png&quot; data-alt=&quot;출처 : AWS ( https://aws.amazon.com/ko/about-aws/global-infrastructure/?nc2=type_a )&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PQXzf/btsfaLPlaxn/T7ybsENyQPKaEuC516tgNK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPQXzf%2FbtsfaLPlaxn%2FT7ybsENyQPKaEuC516tgNK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;682&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;682&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : AWS ( https://aws.amazon.com/ko/about-aws/global-infrastructure/?nc2=type_a )&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;리전은 2개 이상의 가용영역으로 구성되어 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;많은 리전 중에 작아서 잘 안 보이지만 서울의 리전은 3개의 가용 영역이 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;이렇게 여러 개의 리전을 두는 이유는 네트워크 속도가 가장 큰 이유이다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;우리나라 서버에 있는 서비스를 미국에서 접속하면 아무래도 속도가 느려질 수밖에 없는데 만약 미국에 서비스해야 한다면 미국 쪽 리전에 서버를 생성하여 서비스하면 속도 면에서 빠르다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;두 번째 이유로는 큰 재해를 대비하기 위함이라고 한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;AWS에서는 기본적으로 장애라는 건 발생 가능하다고 판단하여 그 장애에 대응하기 위한 여러 서비스들을 제공하고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;예를 들어, 재해(전쟁, 지진, 화재)도 포함이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;리전을 여러 곳에 둔 것도 이러한 재해 시 다른 리전으로 서비스가 가능하게 끔이라고 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;다른 이유들도 있겠지만 두 가지 이유정도 알아봤다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;background-color: #ffc1c8; font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;가용영역(Availability Zone 줄여서 AZ)이란, 리전 안에 있는 IDC(데이터 센터)를 의미한다.&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;이 IDC의 위치는 AWS 내부 직원들도 모르며, 각각 위치는 멀리 떨어져서 각종 재해 발생 시 다른 가용영역에 서비스를 계속할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffc9af; font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;EC2란?&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Elastic Compute Cloud로 다양한 OS 버전의 가상 서버를 제공하는 아마존의 웹 서비스이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 안전하고 크기 조정이 가능한 컴퓨터 용량을 클라우드에서 제공하는 웹 서비스라고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 이제 &lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;a style=&quot;color: #006dd7;&quot; title=&quot;AWS EC2 Instance 생성하기&quot; href=&quot;https://quokka-young.tistory.com/15&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;AWS EC2 Instance 생성하기&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;에서 계속 알아가 보자.&lt;/p&gt;</description>
      <category>AWS Story</category>
      <category>Availability Zone</category>
      <category>AWS</category>
      <category>AZ</category>
      <category>ec2</category>
      <category>Region</category>
      <category>가용영역</category>
      <category>리전</category>
      <author>개발자쿼카</author>
      <guid isPermaLink="true">https://quokka-young.tistory.com/14</guid>
      <comments>https://quokka-young.tistory.com/14#entry14comment</comments>
      <pubDate>Sat, 13 May 2023 03:41:53 +0900</pubDate>
    </item>
  </channel>
</rss>