목록2025/08 (5)
사적인 개발자
자료 : 현실 세계에서 관찰/측정을 통해 수집된 값/사실 정보 : 자료를 처리해 얻어진 결과P(D) = I 추상화 : 공통적인 개념을 이용해 같은 종류의 다양한 객체를 정의함 - 공통적인 개념 : 차비, 노선도 ... - 같은 종류 : 버스 - 다양한 객체 : 시외버스, 시내버스 관광버스 ... 자료의 추상화 : 데이터의 공통 특징만 뽑아 그림그리듯 개념화시킴 자료구조 : 추상화를 통해 자료의 논리적 관계를 구조화함 - 자료의 논리적 관계 : 색연필 정리. 색깔별로? 제조사별로? - 입력 자료에 대한 추상화 상태 자료 ➡ (자료의 추상화) ➡ 자료구조 알고리즘 : 컴퓨터에게 시킬 일을 (추상화된) 명령어의 연속 덩어리로 만든 것 - 알고리즘은 자료구조를 사용하는 주체 - 명령의 추상화 상태 추상 자료형 ..

프레임워크 없이 쌩 Java로 socket 통신을 만들어보았다.하나하나 뜯어보면서 해봅시다,,, package com.gym.http;import java.io.*;import java.net.ServerSocket;import java.net.Socket;public class simpleHttpServer { public static void main(String[] args) throws IOException{ ServerSocket serverSocket = new ServerSocket(8080); // 서버 포트 열기 - 포트 바인드 System.out.println("서버 start! http://localhost:8080"); while (true..

리다이렉션 이슈발생 메인 플랫폼에서 게임별 세부 메인페이지로 이동되는 부분에서, 특정 게임에서 페이지 이동이 안되는 것을 발견했다.ERR_TOO_MANY_REDIRETS 에러 발생페이지가 나왔고, 이 에러는 무한 리다이렉션 루프에 빠졌다는 것을 보여준다. 우선 curl 명령어를 통해 리다이렉션 에러가 맞는지 확인해본다.curl 명령어는 아래 형태로 사용하고, URL 데이터를 가져오는데 여기서 -L 옵션을 추가하면 리다이렉션을 자동으로 따라가도록 한다. 기본적으로 curl 명령어는 리다이렉션을 따라가지 않기 때문에 해당 옵션을 붙여주면 된다.# 기본 형태curl [옵션] [URL]# url의 리다이렉션을 출력curl -L https://www.game.com/index 그러자 아래와 같은 에러가 확인되었다..

grails에 장착되어있는 Spock를 활용해 TDD 샘플코드를 테스트 해 보았다.grails의 경우에는 도메인을 만들면 테스트 파일을 스캐폴딩을 통해 같이 만들어주는데,아직 실무에서는 거의 쓰지 않고있어 성능 확인차, 그리고 TDD는 어떻게 진행되는건가 보고싶어 테스트를 진행했다.TDD TDD 실행 순서 1. Red: 실패하는 테스트를 먼저 작성한다 2. Green: 테스트를 통과시키기 위한 최소한의 코드를 작성3. Refactor: 코드를 리팩터링하며 구조를 개선 생성한 파일- Book.groovy- BookService.groovy- BookServiceSpec.groovy Book.groovypackage testclass Book { String title Date dueDate}..

1탄 : [Linux] Fluentd 로그파일 자동 모니터링 스크립트 crontab 적용기2탄 : [Linux] Fluentd 로그파일 자동 모니터링 스크립트 crontab 적용기 - 후기 지난이야기 요약1. fluentd 로그 자꾸 쌓이는거 귀찮음2. 자동 리셋 쉘 만듦3. crontab 적용시킴 (월수금 10:00)4. cron 안돌아서 원인파악함(경로명 문제) 2탄에서 끝내고 싶었는데, 후기의 후기까지 나와버렸다. 월/수/금 10:00 cron으로 적용해놓았기에, 오늘(금) 10시에 쉘이 잘 돌아가는지 모니터링을 하고있었는데.. 문제 발생 - fluentd.log가 삭제되지 않는다?! 로그는 성공으로 잘 찍히는데, 파일이 삭제되지 않은것이 아닌가!# fluentd_filesize_check.log..