일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정처기공부
- 정보처리기사
- 프로그래머스
- Groovy문법
- 롬복
- CICD
- java
- 롬북
- Java8
- 생성자
- controller
- Docker
- 빌드자동화도구
- 알고리즘
- 정보처리기사필기
- 무중단배포
- aws
- 시계열디비
- 완전탐색알고리즘
- 롬복사용시주의할점
- 어노테이션
- 정처기필기
- PULL방식아키텍쳐
- 빌드스크립트
- 정처기
- 자바
- API
- 서버
- spring
- git
- Today
- Total
목록전체 글 (47)
우당탕탕 개발일지
JVM 이란? Java Virtual Machine 의 약자 자바 가상 머신 (가상 컴퓨터, 실제 컴퓨터는 아닌 소프트웨어로 만들어진 컴퓨터) 자바와 운영체제 사이에서 중개자 역할을 수행 자바 바이트 코드를 실행하기 위한 기계 가비지 컬렉터(Garbage Colletor : GC)를 사용한 메모리 관리를 자동으로 수행 레지스터 기반이 아닌 스택 기반으로 동작 한번 작성하면, 어디서든 실행! (Write once, run anywhere) - Sun Microsystems windows용으로 작성 된 애플리케이션은 windows 운영체제에서만 사용가능 만약, Macintosh 운영체제에서 사용 되려면 windows용으로 작성 된 애플리케이션을 macintosh용으로 애플리케이션을 수정해야만 한다. ( 해당..
Gradle(그래이들)이란? 유연성과 성능에 중점을 둔 오픈 소스 빌드 자동화 도구 Groovy Script 를 이용한 Build 자동화 시스템 같은 빌드 도구인 Ant, Maven의 장점을 모아 2012년에 출시 Android OS의 빌드 도구로 채택 간결함 / 빠른 속도 / 유연성 / 확장성 / 다양하고 많은 문서화 등의 장점이 있음 📌 빌드 관리 도구 ( = Gradle / Maven / Ant ) 프로젝트에서 필요한 xml, properties, jar 파일들을 자동으로 인식하여 빌드해주는 도구 빌드 되기전 미리 소스 코드를 컴파일, 테스트, 정적분석 등을 하여 실행가능한 앱인지 확인 및 빌드 실행을 해줌 프로젝트의 정보 관리, 테스트 빌드, 배포 등의 작업을 해줌 배포작업 ⇒ 배포가 되는 위치로..
Prometheus(프로메테우스) 란? 오픈 소스 기반의 모니터링 시스템이다. 대상 시스템으로 부터 각종 모니터링 지표를 수집하여 저장하고 검색할 수 있는 시스템이다. 구조가 간단하여 운영이 쉽고, 강력한 쿼리 기능을 가지고 있다. 또, 그라파나를 통한 시각화를 지원한다. 무엇보다 넓은 오픈 소스 생태계를 기반으로 해서 많은 시스템을 모니터링할 수 있는 다양한 플로그인을 가지고 있다. 특히, 이런 간편함 때문에 쿠버네티스의 메인 모니터링 시스템으로 많이 사용되면서 요즘 특히 더 주목을 받고 있다. ✅ SoundCloud사에서 만든 오픈 소스 기반 모니터링 솔루션 ✅ go언어로 만들어짐 - 하드웨어 레벨 / 애플리케이션 모니터링 가능 - 마이크로서비스 - multiple language 지원(java, g..
📌 SOP(Same Origin Policy) 정책 동일한 출처에서만 리소스를 공유할 수 있다. 👉 동일한 출처에 대한 정책 동일 출처 서버에 있는 리소스는 자유롭게 가져올 수 있지만, 다른 출처 서버에 있는 이미지나 유튜브 영상 같은 리소스들은 상호작용이 불가능하다. SOP는 2011년, RFC 6454에서 처음 등장한 보안 정책으로 말 그대로 "같은 출처에서만 리소스를 공유할 수 있다" 라는 규칙을 가진 정책이다. ✅ 동일 출처 정책이 필요한 이유? "CSRF 공격!" 만일 제약이 없다면, 해커가 CSRF(Cross-Site Request Forgery) 나 XSS(Cross-Site Scripting)등의 방법을 이용하여 우리가 만든 애플리케이션에서 해커가 심어놓은 코드가 실행되어 개인 정보들을 가..
여러 프로젝트를 만들면서 배포를 할 때 '젠킨스 + Gitlab' 또는 'Gitlab'으로 CI/CD를 구축하여 배포하였다. 이건 프로젝트가 gitlab 저장소로 관리되어있어야 하는데 초반에 만들어둔 프로젝트는 github 저장소에 있다보니 기존 방법 대로 CI/CD를 하려면 gitlab으로 프로젝트를 옮기는 과정이 필요했다. gitlab 👉 github 미러링은 해봤는데 github 👉 gitlab 미러링은 처음... 방법은 비슷하겠거니하고 찾아봤는데 "pull mirroring"을 하면된다고한다.(참고로 깃랩에서 깃헙은 push mirroring) gitlab 미러링으로 들어가 pull로 변경하려고 보니 변경해야하는 Mirror direction이 비활성화되어 클릭이 안되는것... 찾아보니 githu..
멋사 수업이 끝난 뒤 지금까지 해왔던 프로젝트를 정리하고 리팩토링하던 중초반에 사용했던 프로젝트와 현재 진행중인 프로젝트의 JDK 버전이 달라 프로젝트 리팩토링 시 문제가 생겼다...초반 프로젝트는 java11 , 현재 프로젝트는 java17...JAVA_HOME 환경변수는 이미 java17로 셋팅되어있는 상태이기 때문에 java11 프로젝트를 열면 JDK 설정에서 멈춤 상태로 프로젝트가 열리지 않았다 :-( 매번 JAVA_HOME의 경로를 변경하여 11, 17 를 왔다갔다 할 수도 없기 때문에 폭풍 검색!스크립트를 작성하여 시스템 환경변수 path에 적용하면 cmd 명령어로 JAVA_HOME의 JDK를 변경할 수 있었다.해당 내용을 까먹지 않도록 포스팅윈도우 JAVA 버전 관리우선, 난 초반에 java..