목록전체 글 (293)
쿠다의 공부 블로그
이전 글에서는 부하 테스트의 합격 기준과 실행 계획을 정리했습니다.이번 글에서는 실제 테스트를 진행하면서 결과의 신뢰도를 높이기 위해 환경을 바꾸고, HikariCP 병목을 찾아 조정한 과정을 기록합니다.[자취선배] 부하테스트와 실행 계획 세우기 [자취선배] 부하테스트와 실행 계획 세우기📝 배경개발자라면 자신이 만든 서버가 얼마나 버티는지 알아야 하지 않을까? 팀원들과 논의해 정해진 예산 안에서 인프라를 구성했습니다. 그러던 중 이런 질문을 받았습니다.“현재 프로젝quddnd.tistory.com 📝 CloudShell 결과를 신뢰할 수 있을까?처음에는 AWS CloudShell에서 k6를 실행했습니다.애플리케이션 서버와 부하 발생기를 분리할 수 있다는 장점이 있었지만, 부하를 높이자 목표 RPS에 ..
📝 배경개발자라면 자신이 만든 서버가 얼마나 버티는지 알아야 하지 않을까? 팀원들과 논의해 정해진 예산 안에서 인프라를 구성했습니다. 그러던 중 이런 질문을 받았습니다.“현재 프로젝트의 서버는 어느 정도의 트래픽까지 버틸 수 있나요?” 서버가 실행된다는 사실만으로는 답하기 어려웠습니다. 처리 가능한 요청량뿐만 아니라 응답시간과 오류율, 병목이 발생하는 지점도 함께 확인해야 했습니다.막연하게 추측하는 대신 측정값으로 답하기 위해 부하 테스트를 계획했습니다.📝 부하 테스트란 무엇일까요?처음에는 부하 테스트를 단순히 많은 요청을 보내 서버가 죽는지 확인하는 작업이라고 생각했습니다.하지만 서버가 살아 있어도 응답에 몇 초씩 걸리거나 요청 일부가 누락된다면 정상적으로 서비스를 제공했다고 보기 어렵습니다.부하 ..
📝 1차 심사 합격먼저 이번 프리코스는 많은 시간을 투자하며 고민해본 시간이 된 것 같습니다.오픈 미션 도전을 통해 많은 문제들을 직면 했기 때문입니다. quddaz/Stockify: 가상 주식 투자 시뮬레이터 Stockify GitHub - quddaz/Stockify: 가상 주식 투자 시뮬레이터 Stockify가상 주식 투자 시뮬레이터 Stockify. Contribute to quddaz/Stockify development by creating an account on GitHub.github.com(프리티어 끝나서 배포는 하지 않았습니다... 돈이 업성요) 그래서 프리코스에서 많은 것을 얻어가 만족하고 있었고 합격 예감 또한 들었지만 불안감은 많았어요.통과 이메일을 딱 3시에 받았는데 그 때 ..
이번에 우아한 테크코스 1~3주차를 하고 오픈미션을 받게 되면서 작성하는 회고록입니다. 우테코를 신청한 계기?저는 지난 8월에 대학교를 졸업했습니다. 학교를 다니는 동안 백엔드 개발자가 되고 싶다는 꿈을 꾸며, 여러 대회에 나가고 팀 프로젝트도 하면서 나름 열심히 달려왔어요.그런데 이상하게도, 항상 마음 한켠엔 ‘내가 잘하고 있는 걸까?’, ‘지금 이 정도면 충분할까?’ 하는 불안함이 있었습니다.코드를 짜고 프로젝트를 만들긴 했지만, 막상 제 실력이 어느 정도인지, 어떤 부분이 부족한지 스스로 판단하기가 참 어려웠어요.그러다 졸업하고 한 달쯤 지났을 때, 우아한테크코스 모집 공고를 보게 됐습니다.“아, 이거다.” 싶었어요.단순히 코드를 잘 짜는 것보다 같이 성장하는 법을 배우고, 제 한계를 정확히 마주..
5. 람다5-1 람다Kotlin의 람다식은 자바보다 더 간결합니다. 파라미터가 하나일 경우 it 키워드로 암시적 참조가 가능하며, 람다가 마지막 인자이면 괄호 밖으로 뺄 수 있습니다.(Trailing Lambda)val list = listOf("a", "b", "c")// 1. 기본list.forEach({ s -> println(s) })// 2. Trailing Lambdalist.forEach { s -> println(s) }// 3. 'it' 사용list.forEach { println(it) } Java는 it과 같은 암시적 파라미터나 Trailing Lambda 문법은 없습니다.List list = List.of("a", "b", "c");// 1. 기본 람다list.forEach(s ->..
저는 평소 자바를 중심으로 개발해왔습니다. 이번에 코틀린을 배우고 활용할 기회가 생겨, 새로운 언어로의 도전을 통해 개발 역량을 넓혀가고자 합니다.1. 변수 1-1 변수 선언Kotlin은 변수 선언 때 val(불변), var(가변) 키워드를 통해 타입 추론을 지원합니다.아래처럼 가변, 불변을 정하고 타입 추론 기능이 기본 탑재되어 있습니다. val name: String = "김병웅" // 읽기만 가능var age: Int = 20 // 읽기/쓰기 가능var address = "충북" // 타입 추론 (String) Java는 final 키워드를 직접 적어 변수의 불변성을 지정해줘야 하며, 타입을 항상 명시해야 합니다.final String name = "김병웅"; //..
