<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How-To Guide on Advanced Beginner</title><link>https://advanced-beginner.github.io/ko/docs/scala/howto/</link><description>Recent content in How-To Guide on Advanced Beginner</description><generator>Hugo</generator><language>ko-KR</language><managingEditor>d8lzz1gpw@mozmail.com (kimbenji)</managingEditor><webMaster>d8lzz1gpw@mozmail.com (kimbenji)</webMaster><lastBuildDate>Mon, 23 Mar 2026 19:08:15 +0900</lastBuildDate><atom:link href="https://advanced-beginner.github.io/ko/docs/scala/howto/index.xml" rel="self" type="application/rss+xml"/><item><title>Implicit/Given 디버깅</title><link>https://advanced-beginner.github.io/ko/docs/scala/howto/implicit-debugging/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><author>d8lzz1gpw@mozmail.com (kimbenji)</author><guid>https://advanced-beginner.github.io/ko/docs/scala/howto/implicit-debugging/</guid><description>&lt;p&gt;컴파일러가 암시적 값을 찾지 못할 때 원인을 진단하고 해결하는 방법을 안내합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;소요 시간&lt;/strong&gt;: 약 10-15분&lt;/p&gt;
&lt;blockquote class="book-hint info"&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Scala 2&lt;/strong&gt;: &lt;code&gt;-Xlog-implicits&lt;/code&gt; 플래그로 검색 과정 확인&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scala 3&lt;/strong&gt;: 컴파일러 메시지가 더 명확하며, &lt;code&gt;import&lt;/code&gt; 제안도 제공&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;공통&lt;/strong&gt;: 스코프에 암시적 값이 있는지, 타입이 정확히 일치하는지 확인&lt;/li&gt;
&lt;/ul&gt;

&lt;/blockquote&gt;

&lt;hr&gt;
&lt;h2 id="이-가이드가-해결하는-문제"&gt;이 가이드가 해결하는 문제&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%ed%95%b4%ea%b2%b0%ed%95%98%eb%8a%94-%eb%ac%b8%ec%a0%9c"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음과 같은 컴파일 에러가 발생할 때 이 가이드를 사용하세요:&lt;/p&gt;
&lt;div class="book-tabs"&gt;
&lt;input type="radio" class="toggle" name="tabs-1" id="tabs-1-0" checked="checked" /&gt;&lt;label for="tabs-1-0"&gt;Scala 2&lt;/label&gt;&lt;div class="book-tabs-content markdown-inner"&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;could not find implicit value for parameter ord: Ordering[MyClass]&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;또는&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;ambiguous implicit values&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;input type="radio" class="toggle" name="tabs-1" id="tabs-1-1" /&gt;&lt;label for="tabs-1-1"&gt;Scala 3&lt;/label&gt;&lt;div class="book-tabs-content markdown-inner"&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;No given instance of type Ordering[MyClass] was found&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;또는&lt;/p&gt;</description></item><item><title>Future 에러 처리</title><link>https://advanced-beginner.github.io/ko/docs/scala/howto/future-error-handling/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><author>d8lzz1gpw@mozmail.com (kimbenji)</author><guid>https://advanced-beginner.github.io/ko/docs/scala/howto/future-error-handling/</guid><description>&lt;p&gt;비동기 코드에서 예외를 안전하게 처리하고 디버깅하는 방법을 안내합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;소요 시간&lt;/strong&gt;: 약 15-20분&lt;/p&gt;
&lt;blockquote class="book-hint info"&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;recover&lt;/code&gt;/&lt;code&gt;recoverWith&lt;/code&gt;: 특정 예외를 처리하고 대체값 반환&lt;/li&gt;
&lt;li&gt;&lt;code&gt;transform&lt;/code&gt;: 성공/실패 모두 변환&lt;/li&gt;
&lt;li&gt;&lt;code&gt;onComplete&lt;/code&gt;: 부수 효과 (로깅 등)에만 사용&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;절대 하지 말 것&lt;/strong&gt;: &lt;code&gt;Await.result&lt;/code&gt;로 예외를 동기적으로 던지기&lt;/li&gt;
&lt;/ul&gt;

&lt;/blockquote&gt;

&lt;hr&gt;
&lt;h2 id="이-가이드가-해결하는-문제"&gt;이 가이드가 해결하는 문제&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%ed%95%b4%ea%b2%b0%ed%95%98%eb%8a%94-%eb%ac%b8%ec%a0%9c"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 상황에서 이 가이드를 사용하세요:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Future에서 발생한 예외가 조용히 사라지는 경우&lt;/li&gt;
&lt;li&gt;비동기 코드의 에러를 어떻게 처리해야 할지 모를 때&lt;/li&gt;
&lt;li&gt;&lt;code&gt;recover&lt;/code&gt;, &lt;code&gt;recoverWith&lt;/code&gt;, &lt;code&gt;transform&lt;/code&gt; 중 어떤 것을 사용해야 할지 결정이 필요할 때&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="증상"&gt;증상&lt;a class="anchor" href="#%ec%a6%9d%ec%83%81"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-scala" data-lang="scala"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;scala.concurrent.Future&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;scala.concurrent.ExecutionContext.Implicits.global&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;val&lt;/span&gt; &lt;span class="n"&gt;future&lt;/span&gt; &lt;span class="k"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;Future&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;throw&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;RuntimeException&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Something went wrong&amp;#34;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;프로그램은&lt;/span&gt; &lt;span class="n"&gt;정상&lt;/span&gt; &lt;span class="n"&gt;종료되지만&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;예외는&lt;/span&gt; &lt;span class="n"&gt;어디로&lt;/span&gt; &lt;span class="n"&gt;갔을까&lt;/span&gt;&lt;span class="o"&gt;?&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="이-가이드가-다루지-않는-것"&gt;이 가이드가 다루지 않는 것&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%eb%8b%a4%eb%a3%a8%ec%a7%80-%ec%95%8a%eb%8a%94-%ea%b2%83"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Future의 기본 개념&lt;/strong&gt;: &lt;a href="https://advanced-beginner.github.io/ko/docs/scala/concepts/concurrency/"&gt;동시성 개념 문서&lt;/a&gt;를 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cats Effect IO / ZIO의 에러 처리&lt;/strong&gt;: 해당 라이브러리 문서를 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;액터 시스템(Akka)의 에러 처리&lt;/strong&gt;: Akka 문서를 참조하세요&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="시작하기-전에"&gt;시작하기 전에&lt;a class="anchor" href="#%ec%8b%9c%ec%9e%91%ed%95%98%ea%b8%b0-%ec%a0%84%ec%97%90"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 환경이 준비되어 있는지 확인하세요:&lt;/p&gt;</description></item><item><title>타입 에러 디버깅</title><link>https://advanced-beginner.github.io/ko/docs/scala/howto/type-error-debugging/</link><pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate><author>d8lzz1gpw@mozmail.com (kimbenji)</author><guid>https://advanced-beginner.github.io/ko/docs/scala/howto/type-error-debugging/</guid><description>&lt;p&gt;복잡한 타입 에러 메시지를 해독하고 해결하는 방법을 안내합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;소요 시간&lt;/strong&gt;: 약 15-20분&lt;/p&gt;
&lt;blockquote class="book-hint info"&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Type Mismatch&lt;/strong&gt;: 기대 타입과 실제 타입을 비교하여 어디서 불일치가 발생했는지 확인&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bounds 위반&lt;/strong&gt;: 타입 파라미터의 상한/하한 제약 조건 확인&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Variance 문제&lt;/strong&gt;: 공변/반공변 위치에 올바른 타입이 있는지 확인&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;splain 플러그인&lt;/strong&gt;: 복잡한 타입 에러를 읽기 쉬운 형태로 변환&lt;/li&gt;
&lt;/ul&gt;

&lt;/blockquote&gt;

&lt;hr&gt;
&lt;h2 id="이-가이드가-해결하는-문제"&gt;이 가이드가 해결하는 문제&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%ed%95%b4%ea%b2%b0%ed%95%98%eb%8a%94-%eb%ac%b8%ec%a0%9c"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음과 같은 컴파일 에러가 발생할 때 이 가이드를 사용하세요:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;type mismatch;
 found : List[String]
 required: List[Int]&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt;type arguments [Dog] do not conform to method process&amp;#39;s
type parameter bounds [A &amp;lt;: Animal with Serializable]&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt;covariant type A occurs in contravariant position in type A =&amp;gt; Unit&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="이-가이드가-다루지-않는-것"&gt;이 가이드가 다루지 않는 것&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%eb%8b%a4%eb%a3%a8%ec%a7%80-%ec%95%8a%eb%8a%94-%ea%b2%83"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;타입 시스템의 기초 개념&lt;/strong&gt;: &lt;a href="https://advanced-beginner.github.io/ko/docs/scala/concepts/type-system-advanced/"&gt;타입 시스템 개념 문서&lt;/a&gt;를 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;암시적 값 관련 에러&lt;/strong&gt;: &lt;a href="https://advanced-beginner.github.io/ko/docs/scala/howto/implicit-debugging/"&gt;Implicit/Given 디버깅&lt;/a&gt;을 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;매크로/리플렉션 관련 에러&lt;/strong&gt;: 해당 라이브러리 문서를 참조하세요&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="시작하기-전에"&gt;시작하기 전에&lt;a class="anchor" href="#%ec%8b%9c%ec%9e%91%ed%95%98%ea%b8%b0-%ec%a0%84%ec%97%90"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 환경이 준비되어 있는지 확인하세요:&lt;/p&gt;</description></item><item><title>sbt 의존성 충돌 해결</title><link>https://advanced-beginner.github.io/ko/docs/scala/howto/sbt-dependency-conflicts/</link><pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate><author>d8lzz1gpw@mozmail.com (kimbenji)</author><guid>https://advanced-beginner.github.io/ko/docs/scala/howto/sbt-dependency-conflicts/</guid><description>&lt;p&gt;라이브러리 버전 충돌을 진단하고 해결하는 방법을 안내합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;소요 시간&lt;/strong&gt;: 약 15-20분&lt;/p&gt;
&lt;blockquote class="book-hint info"&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;증상&lt;/strong&gt;: 컴파일은 성공하지만 런타임에 &lt;code&gt;NoSuchMethodError&lt;/code&gt;, &lt;code&gt;ClassNotFoundException&lt;/code&gt; 발생&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;진단&lt;/strong&gt;: &lt;code&gt;sbt dependencyTree&lt;/code&gt;로 충돌 라이브러리 확인&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;해결&lt;/strong&gt;: &lt;code&gt;exclude&lt;/code&gt;, &lt;code&gt;dependencyOverrides&lt;/code&gt;, &lt;code&gt;force()&lt;/code&gt; 활용&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;예방&lt;/strong&gt;: eviction 경고를 무시하지 말 것&lt;/li&gt;
&lt;/ul&gt;

&lt;/blockquote&gt;

&lt;hr&gt;
&lt;h2 id="이-가이드가-해결하는-문제"&gt;이 가이드가 해결하는 문제&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%ed%95%b4%ea%b2%b0%ed%95%98%eb%8a%94-%eb%ac%b8%ec%a0%9c"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 상황에서 이 가이드를 사용하세요:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;컴파일은 성공하지만 런타임에 &lt;code&gt;NoSuchMethodError&lt;/code&gt;가 발생하는 경우&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ClassNotFoundException&lt;/code&gt;이 발생하지만 라이브러리가 분명히 있는 경우&lt;/li&gt;
&lt;li&gt;sbt 빌드 시 eviction 경고가 출력되는 경우&lt;/li&gt;
&lt;li&gt;여러 라이브러리가 같은 의존성의 다른 버전을 요구하는 경우&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="증상"&gt;증상&lt;a class="anchor" href="#%ec%a6%9d%ec%83%81"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 컴파일은 성공하지만 실행 시 에러&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$ sbt run
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;java.lang.NoSuchMethodError: &lt;span class="s1"&gt;&amp;#39;void com.google.common.collect.ImmutableMap.forEach()&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 또는 클래스를 찾지 못함&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$ sbt run
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="이-가이드가-다루지-않는-것"&gt;이 가이드가 다루지 않는 것&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%eb%8b%a4%eb%a3%a8%ec%a7%80-%ec%95%8a%eb%8a%94-%ea%b2%83"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;sbt 기본 사용법&lt;/strong&gt;: sbt 공식 문서를 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Maven/Gradle 의존성 관리&lt;/strong&gt;: 해당 빌드 도구 문서를 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scala 바이너리 호환성&lt;/strong&gt;: Scala 버전 간 호환성 문제는 별도 주제입니다&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="시작하기-전에"&gt;시작하기 전에&lt;a class="anchor" href="#%ec%8b%9c%ec%9e%91%ed%95%98%ea%b8%b0-%ec%a0%84%ec%97%90"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 환경이 준비되어 있는지 확인하세요:&lt;/p&gt;</description></item><item><title>성능 프로파일링</title><link>https://advanced-beginner.github.io/ko/docs/scala/howto/performance-profiling/</link><pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate><author>d8lzz1gpw@mozmail.com (kimbenji)</author><guid>https://advanced-beginner.github.io/ko/docs/scala/howto/performance-profiling/</guid><description>&lt;p&gt;Scala 애플리케이션의 성능 병목을 찾고 최적화하는 방법을 안내합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;소요 시간&lt;/strong&gt;: 약 20-25분&lt;/p&gt;
&lt;blockquote class="book-hint info"&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;CPU 프로파일링&lt;/strong&gt;: JFR(Java Flight Recorder)로 핫스팟 식별&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;메모리 분석&lt;/strong&gt;: 힙 덤프를 VisualVM 또는 MAT로 분석&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;컬렉션 선택&lt;/strong&gt;: 용도에 맞는 컬렉션을 사용하면 성능이 크게 달라짐&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;최적화 기법&lt;/strong&gt;: &lt;code&gt;@specialized&lt;/code&gt;, &lt;code&gt;@tailrec&lt;/code&gt;, 박싱 회피&lt;/li&gt;
&lt;/ul&gt;

&lt;/blockquote&gt;

&lt;hr&gt;
&lt;h2 id="이-가이드가-해결하는-문제"&gt;이 가이드가 해결하는 문제&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%ed%95%b4%ea%b2%b0%ed%95%98%eb%8a%94-%eb%ac%b8%ec%a0%9c"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 상황에서 이 가이드를 사용하세요:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;애플리케이션의 응답 시간이 갑자기 느려진 경우&lt;/li&gt;
&lt;li&gt;메모리 사용량이 지속적으로 증가하는 경우 (메모리 누수 의심)&lt;/li&gt;
&lt;li&gt;어떤 컬렉션을 사용해야 할지 성능 관점에서 결정이 필요한 경우&lt;/li&gt;
&lt;li&gt;GC 일시 정지가 빈번하게 발생하는 경우&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="이-가이드가-다루지-않는-것"&gt;이 가이드가 다루지 않는 것&lt;a class="anchor" href="#%ec%9d%b4-%ea%b0%80%ec%9d%b4%eb%93%9c%ea%b0%80-%eb%8b%a4%eb%a3%a8%ec%a7%80-%ec%95%8a%eb%8a%94-%ea%b2%83"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;JVM 튜닝 (GC 옵션 등)&lt;/strong&gt;: JVM 공식 문서를 참조하세요&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;분산 시스템 성능 최적화&lt;/strong&gt;: 별도 주제입니다&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cats Effect / ZIO의 성능 최적화&lt;/strong&gt;: 해당 라이브러리 문서를 참조하세요&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="시작하기-전에"&gt;시작하기 전에&lt;a class="anchor" href="#%ec%8b%9c%ec%9e%91%ed%95%98%ea%b8%b0-%ec%a0%84%ec%97%90"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;다음 환경이 준비되어 있는지 확인하세요:&lt;/p&gt;</description></item></channel></rss>