본문 바로가기

전체 글149

[인턴일지 #7] 인턴 끝! 12/22 퇴사 후 새해가 되어서야 작성하는 인턴 종료 일지! (첫 인턴 일지와 데자뷰..) 드디어 4개월간의 인턴 생활이 마무리되었다. 전공을 다루는 직장생활은 처음이라 걱정도 많았지만, 어떤 부분에서든 성장해서 나가자는 목표로 임하니까 매일매일이 배워가는 즐거움으로 금방 지나가버렸다. 내가 진행했던 업무 내용은 아래와 같다. Topic Task Java Profiling JVM 및 JVMTI에 대한 이해 Java Profiler 3종 (pinpoint, scouter, visualvm) 환경 설정 및 사용 Scouter를 이용한 자사 테스팅 도구(cover, scouter) 프로파일링 JVM 클래스 정보 추출하는 커스텀 Java Agent 개발 Java Remote Debug OperatingSyst.. 2024. 1. 1.
[Spring Boot - Firebase] 연동하기 준비물 : Firebase 프로젝트 기존 Firestore Database에서 스프링 서버로 데이터를 불러오기 위해 연동하는 과정을 진행해 볼 것이다. Firebase 프로젝트는 이미 생성했다고 가정하고 진행하겠다. 1. Firebase 비공개 키 다운로드 Firebase 프로젝트 대시보드의 프로젝트 개요 / 프로젝트 설정 / 서비스 계정으로 이동한다. SDK 언어를 Java로 설정한 후, 새 비공개 키 생성을 클릭한다. 스프링 프로젝트의 src / main / resources에 다운받아진 json 비공개 키를 복붙한다. 파일명은 각자 지정하면 되는데, 나는 firebaseServiceAccountKey.json으로 저장했다. 2. FirebaseConfig 설정 스프링부트 프로젝트에 FirebaseC.. 2023. 10. 28.
[밥약 | 백엔드] 서비스 출시 드디어 밥약이 출시되었다!! https://www.babyakmate.com/ 밥약 www.babyakmate.com 시험기간에 출시된지라 아직 밥약이 활발히 올라오지는 않았지만, 벌써 누적 가입자수가 130여명이다. (로그인 및 회원가입 API에 문제가 없다..! 휴ㅋㅋㅋㅋ) 출시 전 이대학보에서 인터뷰를 하고 기사를 발행해주셨는데, 후속 기사를 위한 인터뷰 요청도 들어와서 11월 즈음 진행될 것 같다. 신기하다. 실제로 밥약 글이 올라온 것을 보니 서비스 출시가 실감나는 것 같다. 시험 기간 이후 많은 이용자 유입에 잘 대처해서 지속가능한 서비스로 밥약을 잘 운영해보고 싶다. 2023. 10. 28.
[인턴일지 #6] Java GC, Heap Dump https://dramatic-lift-c67.notion.site/Java-GC-Memory-Dump-df1b555892774033809377b0a669c77b?pvs=4 Java GC와 Memory Dump | Built with Notion Ref dramatic-lift-c67.notion.site 2023. 10. 28.
[인턴일지 #5] Java Profiling, Profilers 1. Java Profiler 등장 배경 프로그램 규모가 커지거나 복잡해지면 모든 JVM Internal Components가 효율적인지 모니터링 어려움 특징 Memory Usage, Garbage Collection, CPU Utilization 등을 분석 JVMTI 이용 주로 Agent - Server - UI 구조 2. Java Profiling Tools APM (Application Performance Management) Pinpoint Scouter VisualVm 형태 Web Client Standalone Client Standalone Client Plugins 저장소 HBase compressed files Agent Java Agent • Host Agent (OS Agent) -.. 2023. 10. 28.
[Spring Boot] 주기적 코드 실행 서베이지에서는 활성 패널의 수에 따라 수집 가능한 최대 응답수가 달라지게 된다. 이에 따라 서베이지는 10일 단위로 활성 패널의 현황을 자동 업데이트하는 기능을 도입하기로 결정했다. 오늘은 Spring Boot의 @Scheduled을 이용하여 10일마다 실행되는 scheduled task를 만들어 볼 것이다. 1. @EnableScheduling 스프링의 scheduled task 실행을 가능하게 하는 어노테이션이며, 메인 Application에 붙여준다. @SpringBootApplication @EnableScheduling public class SurveasyApplication { public static void main(String[] args) { SpringApplication.run(S.. 2023. 10. 23.
[인턴일지 #4] JVM, JVMTI [참고] Chapter 2. The Structure of the Java Virtual Machine Chapter 2. The Structure of the Java Virtual Machine Conditional branch: ifeq, ifne, iflt, ifle, ifgt, ifge, ifnull, ifnonnull, if_icmpeq, if_icmpne, if_icmplt, if_icmple, if_icmpgt if_icmpge, if_acmpeq, if_acmpne. docs.oracle.com 1. Java Compile & Run 1-1. Java Compile & Run 과정 .java 파일 생성 Java Compiler (javac)로 .java 파일 컴파일 .java → .cla.. 2023. 10. 4.
[인턴일지 #3] 자사 도구 분석 2023. 9. 19.
[인턴일지 #2] 프로젝트 정리 2023. 9. 19.