일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- kotlin spring
- 기록으로 실력을 쌓자
- 코틀린 코루틴의 정석
- aws
- kotlin querydsl
- 정보처리기사 실기
- minikube
- Pinpoint
- mysql 튜닝
- CloudWatch
- PETERICA
- kotlin
- 정보처리기사실기 기출문제
- Elasticsearch
- Spring
- Linux
- AWS EKS
- kotlin coroutine
- 공부
- Java
- 오블완
- CKA
- APM
- 티스토리챌린지
- CKA 기출문제
- AI
- IntelliJ
- 정보처리기사 실기 기출문제
- MySQL
- Kubernetes
- Today
- Total
목록Programming (188)
피터의 개발이야기
ㅁ 들어가며ㅇ Kotlin과 Spring을 사용하여 Hive 연결을 주기적으로 유지하기 위한 방법을 찾고 있었다.ㅇ 검색해면서 @Scheduled 어노테이션을 이용한 방법을 찾아 그 내용을 정리한 글이다. ㅁ @EnableScheduling 설정@SpringBootApplication@EnableSchedulingclass YourApplicationfun main(args: Array) { runApplication(*args)}ㅇ 기본적으로 애플리케이션의 메인 클래스나 설정 클래스에 @EnableScheduling 어노테이션을 추가한다. ㅁ 연결 유지 서비스 생성@Serviceclass HiveConnectionService( private val jdbcTemplate: JdbcTempl..
ㅁ 들어가며ㅇ 연동된 시스템의 지연 사항을 점검하면서 Spring Boot embeded Tomcat의 경우 메모리가 누적되면서 지연되는 경우믈 발견하였다.ㅇ Spring Boot의 임베디드 Tomcat을 사용할 때 메모리가 누적되는 현상에 대해 몇 가지 주요 원인과 해결 방법을 정리하였다. ㅁ 메모리 누수 (Memory Leak)ㅇ 원인: 애플리케이션 코드에서 적절히 리소스를 해제하지 않거나, 순환 참조 등으로 인해 발생할 수 있다.ㅇ 해결방법: - 힙 덤프를 분석하여 메모리 누수 지점을 찾아야 한다. - 코드 리뷰를 통해 리소스 해제가 제대로 이루어지는지 확인한다. - 순환 참조를 제거해야 한다. ㅁ 부적절한 GC 설정ㅇ 원인: GC 설정이 애플리케이션의 특성에 맞지 않아 메모리 회수가 제대로 이루어..
ㅁ 들어가며ㅇ 동료가 담당하는 프로젝트의 구성 중에 Semantic UI가 있었다.ㅇ Semantic UI는 백엔드 개발자가 프론트 개발을 위한 프레임 워크로 Bootstrap와 유사해 보였다.ㅇ Semantic UI가 무엇인지, Bootstrap와의 차이점에 대해서 정리해보았다. ㅁ Semantic UI란? Semantic UI는 웹 개발을 위한 현대적이고 직관적인 프론트엔드 프레임워크다. HTML과 CSS를 사용해 다양한 UI 컴포넌트를 제공하며, 자연스러운 언어를 사용한 클래스 이름으로 코드의 가독성을 높인다. ㅁ 주요 특징직관적인 문법: 클래스 이름이 자연어와 유사해 이해하기 쉽다.반응형 디자인: 다양한 화면 크기에 맞춰 자동으로 조정된다.다양한 컴포넌트: 버튼, 폼, 메뉴 등 풍부한 UI 요소..
ㅁ 들어가며 내가 운영하는 서비스에 Request Timeout Exception이 발생하였다. 이 서비스는 전체 서비스의 중간 모듈이기 때문에 전체 서비스의 품질을 위해서는 Timeout의 시간을 2초를 넘길 수 없었다. 이를 해결하기 위해 전체 서비스에 장애로 전파될 수 있는 로직을 비동기로 처리하기로 하였다. Spring Framework에서 제공하는 @Async 어노테이션은 메서드를 비동기적으로 실행할 수 있게 해주는 강력한 기능이다. 이를 통해 애플리케이션의 성능을 향상시키고 리소스를 효율적으로 사용할 수 있다. ㅁ Webflux 비동처 처리 방식에 대한 나의 경험 @PostMapping("/1.0/noti") public Mono Notification( ServerHttpReque..
ㅁ 들어가며ㅇ Python은 간결하고 읽기 쉬운 문법으로 코딩과 실행이 아주 편리한 프로그래밍 언어이다. ㅇ 이 글을 통해 Python을 시작하는 데 필요한 핵심 개념들을 정리하였다.ㅁ 데이터 타입#정수(int)print(1, 2, 3)#부동소수점(float)print(1.0, 3.14)#문자열(str)print("Hello",'World')#불리언(bool)print(True, False)#리스트(list)list=[1, 2, 3]print(list)#튜플(tuple)tuple=(1, 2, 3)print(tuple)#딕셔너리(dict)dict={"key": "value"}print(dict)#집합(set)set={1, 2, 3}print(set)ㅁ 변수x = 5 # 정수y = 3.14 # 부동소수점..
ㅁ 들어가며회사에서 AI부서로 이동하였다. 새롭게 AI를 공부하면서 Python은 필수적인 도구가 되었다. Python의 장점에 대해서 설명하고 Python을 어떻게 공부할 지 나의 계획을 정리해 보았다. ㅁ AI를 공부하기 위한 Python 장점 Python은 AI 학습에 있어 필수적인 도구다. 간결한 문법, 풍부한 라이브러리, 데이터 처리 능력, 강력한 커뮤니티 지원, 그리고 산업 표준으로서의 위치 때문에 AI를 공부하는 사람이라면 반드시 Python을 익혀야 한다. ㅇ 간결하고 쉬운 문법 Python은 다른 프로그래밍 언어에 비해 문법이 간결하고 읽기 쉽다. 이는 AI 알고리즘을 구현할 때 큰 장점이 된다. 복잡한 개념을 코드로 표현하기 쉽고, 다른 사람의 코드를 이해하는 데도 도움이 된다. 더..
ㅁ 들어가며ㅇ Kotlin의 채널은 코루틴 간에 데이터를 안전하게 전송하고 공유하기 위한 통신 기본 요소다. 채널은 동시성 프로그래밍에서 매우 유용한 도구로, 생산자-소비자 패턴을 구현하는 데 특히 적합하다. ㅁ 채널의 기본 개념ㅇ 채널은 일종의 파이프라인으로 생각할 수 있다. 개념적으로 큐와 유사하다. 한쪽 끝에서 데이터를 보내고 다른 쪽 끝에서 데이터를 받는다. 이를 통해 여러 코루틴 간의 안전한 통신이 가능해진다. @Testfun should_pass_data_from_one_coroutine_to_another() { runBlocking { // given val channel = Channel() // when launch { // cor..
ㅁ 들어가며ㅇ 지난 글, [GO] Go 언어의 장점에서 Go 언어의 동시성에 대해서 알게 되었다.ㅇ Go 언어의 Goroutine과 Kotlin의 Coroutine은 둘 다 동시성 프로그래밍을 위한 강력한 도구지만, 몇 가지 중요한 차이점과 각자의 장점이 있다.ㅇ 이 글에서는 두 개념을 비교하고 각각의 특징을 정리하였다. ㅁ Goroutine (Go 언어)ㅇ 특징경량 스레드: Goroutine은 OS 스레드보다 훨씬 가벼워 많은 수의 동시 작업을 효율적으로 처리할 수 있다.내장 기능: Go 언어에 기본적으로 내장되어 있어 별도의 라이브러리 없이 사용 가능하다.채널을 통한 통신: Goroutine 간 통신은 주로 채널을 통해 이루어진다.ㅇ 장점간단한 사용법: go 키워드만으로 쉽게 생성할 수 있다.효율적인..
ㅁ 들어가며ㅇ 새로운 팀으로 이동하면서 scala, Go, node.js 등 다양한 언어를 경험하고 있다.ㅇ GO 언어는 네트워크에 이점이 있어보여 이 언어의 장점에 대해서 정리해 보았다.ㅇ golang: Go 언어의 장점에서 잘 설명해 주셔서 참조하여 정리하였다. ㅁ 강력하고 정적인 타입 시스템ㅇ 코드 가독성 향상 Go는 강력하고 정적인 타입 시스템을 채택하고 있어 코드 가독성을 높인다.ㅇ 컴파일러 최적화를 통한 실행 속도 개선 컴파일 시 타입 체크를 수행하여 런타임 오류를 최소화하고, 프로그램의 안정성과 유지 보수성을 크게 향상시킨다.ㅇ 오류 감소 Go의 타입 시스템은 모든 타입 변환을 명시적으로 요구하여, 개발자가 의도하지 않은 타입 변환으로 인한 오류를 방지한다. ㅁ 가비지 컬렉션 지원ㅇ G..
수학은 이해하는게 아니라 익숙해지는것이다.폰노이만 ㅁ 들어가며 [Scala] 스칼라 기본 문법 정리에서 스칼라의 개념과 기본 문법을 정리하였다. 스칼라는 함수형 프로그래밍을 강력하게 지원하는 언어이다. 이 글은 스칼라에서 함수형 프로그래밍을 적용하는 주요 방법들을 정리해 보았다. ㅁ 불변성(Immutability) 활용val immutableList = List(1, 2, 3)ㅇ 스칼라에서는 val 사용하여 불변 변수를 선언할 수 있다. ㅇ 이를 통해 side effect를 줄이고 코드의 예측 가능성을 높일 수 있다. ㅁ 순수 함수(Pure Functions) 사용def add(x: Int, y: Int): Int = x + yㅇ 순수 함수는 동일한 입력에 대해 항상 동일한 출력을 반환하며, 외부 상태를..