Skip to content

Instantly share code, notes, and snippets.

Kim Ji-Heon ihoneymon

Block or report user

Report or block ihoneymon

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View 20190529-java-memory-leak-analysis.adoc

20190528 [java] HeapDump 분석하기

아직까지는 메모리 릭 등의 문제로 힙덤프(HeapDump)를 생성하고 이를 분석하는 일을 해본 경험은 없다(…​ 이 넓고 얕은 지식이여).

우아한형제들 회사 블로그(도움이 될수도 있는 JVM memory leak 이야기, http://woowabros.github.io/tools/2019/05/24/jvm_memory_leak.html)를 보고 난 이후, '방법은 알아(정리해)둬야겠다' 싶어 정리한다.


@ihoneymon
ihoneymon / 20190509-woowahan-tech-seminar-jvm.adoc
Last active May 18, 2019
2019/05/09 5월 우아한형제들 테크 세미나
View 20190509-woowahan-tech-seminar-jvm.adoc

20190509 우아한 테크 세미나: 자바, 성능, 모니터링

0. 소개

  • 성능테스트 전문가!

  • 개발자가 반드시 알아야 할 자바 성능 튜닝 이야기, 2015

  • 자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기, 2011

@ihoneymon
ihoneymon / 20190415-spring-boot-kotlin-support-reflection.adoc
Last active Apr 23, 2019
스프링 부트 애플리케이션을 코틀린으로 구현하기 위해 필요한 라이브러리 kotlin-reflection
View 20190415-spring-boot-kotlin-support-reflection.adoc

20190415 'Kotlin reflection implementation not found at runtime'

코틀린으로 간단한 스프링 부트 애플리케이션을 만들어 실행하는데 눈에 걸리는 로그가 있었다.

> Task :bootiful-sbadmin:bootRun
11:07:07.591 [main] INFO org.springframework.core.KotlinDetector - Kotlin reflection implementation not found at runtime, related features won't be available.
@ihoneymon
ihoneymon / 20190408-kotlin-night-seoul.adoc
Last active Apr 9, 2019
깃헙은 은근히 여기저기 얼굴을 많이 비춘다. 아직도 목마른가?
View 20190408-kotlin-night-seoul.adoc

20190408 Kotlin Knight 서울

자바 개발자 관점의 '왜 코틀린인가?' (by 강현식)

  • Java 8 이상 쓰는 곳이 거의 없다.

  • 자바코드는 장황하다?

    • 롬복(Lombok)

      • 롬복이 지원안될 수 있다.

      • Annotation Processor 와 충돌 가능성

@ihoneymon
ihoneymon / 201904-java-byte-array-to-input-stream.adoc
Created Apr 4, 2019
[spring] RestTemplate 를 이용한 파일 업로드 기능: ByteArrayResource -> InputStreamResource 변경
View 201904-java-byte-array-to-input-stream.adoc

20190404 [spring] RestTemplate 를 이용한 파일 업로드 기능

기존 방식의 문제점

public AgreementResponse uploadAgreement(String memberId, File agreementFile) {
    log.info("Upload CMS Agreement: memberId: {}, agreement: {}, size: {}", memberId, agreement.getName(), agreement.getSize());
    MultiValueMap<String, Object> bodyMap = new LinkedMultiValueMap<>();
@ihoneymon
ihoneymon / 20190324-gradle-kotlin-script.kts
Created Mar 24, 2019
Gradle kotlin DSL 을 이용한 스프링 부트 애플리케이션 빌드스크립트 예제
View 20190324-gradle-kotlin-script.kts
buildscript {
extra["kotlinVersion"] = "1.3.11"
extra["springBootVersion"] = "2.1.1.RELEASE"
repositories {
maven("https://plugins.gradle.org/m2/")
}
dependencies {
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${extra["kotlinVersion"]}")
@ihoneymon
ihoneymon / 20190323-spread-sheet-manager-by-kotlin.adoc
Created Mar 23, 2019
코틀린에서 엑셀시트 다루기
View 20190323-spread-sheet-manager-by-kotlin.adoc

간단한 스프레드시트 처리기(by 코틀린(kotlin))

build.gradle.kts
plugins {
    id("org.springframework.boot") version "2.1.3.RELEASE"
    id("org.jetbrains.kotlin.jvm") version "1.2.71"
@ihoneymon
ihoneymon / 20190323-write-the-docs.adoc
Last active Mar 23, 2019
WTD(Write the docs) 밋업
View 20190323-write-the-docs.adoc

20190323 WTD(Write The Docs)

Write the docs 소개

  • read the docs: 사람들이 조금 더 문서를 많이 읽었으면 좋겠다.

    • Eric holscher: 문서화를 주제로 커뮤니티를 시작하고 싶은데 여러분이라면 어떻게 하겠는가?

  • 2013 년부터 컨퍼런스가 시작되고 있다.

  • 다양한 행사를 진행하고 있다.

@ihoneymon
ihoneymon / 20190322-ngrinder-upload-file-script.adoc
Created Mar 22, 2019
nGrinder 파일 업로드 테스트 스크립트
View 20190322-ngrinder-upload-file-script.adoc

20190322 nGrinder file upload(multipart/form-data) 기능 확인

nGrinder 를 이용한 성능테스트를 작성하고 있다. 이 과정에서 다른 시스템과 연계하는 과정에서 운영으로 넘어가기 위한 성능테스트를 준비하고 있는데, 파일업로드를 하는 과정이 필요했다.

이 구현코드는 여기저기 찾아보다가 grinder script gallery가 제일 깔끔하게 정리되어있다.

View 20181128_jenkins_multi_ssh_key_use.adoc

하나의 젠킨스에서 깃헙 저장소 여러 개를 빌드해야하는 경우

Note

젠킨스가 설치되어 있는 서버를 클라이언트로 보고 이 클라이언트에서 ssh 공개키를 여러벌 만들고 사용하는 저장소에 등록한 후 ssh Host 값을 가명(alias) 처리하여 젠킨스 한 곳에서 여러 저장소에 접근할 수 있도록 처리하는 방식이다.

You can’t perform that action at this time.