본문 바로가기

분류 전체보기270

컴파일과 런타임 컴파일 소스코드가 컴퓨터가 이해할 수 있는 기계어로 변환되는 과정 런타임 컴파일이 끝난 후, 사용자에 의해 실행되어 지는 응용프로그램의 동작 컴파일 에러 vs 런타임 에러 컴파일 에러 유형 syntax error typecheck error 런타임 에러 유형 0 나누기 error 널(Null) 참조 에러 메모리 부족 에러 2019. 7. 14.
[웹] White Domain, RBL, SPF, DKIM White Domain 정상적으로 발송하는 대량 이메일이 RBL 로 간주되어 차단되는 것을 방지하기 위해, 사전에 등록된 개인이나 사업자에 한하여 국내 주요 포털사이트로의 임일 전송을 보장해주는 제도(무료) 단, 이후 모니터링을 통해 RBL 이력발송 사실이 확인되면 즉각 차단조치 또는 white 리스트에서 삭제될 수 있음 RBL (Real-time Blocking List) 이메일 수신시 간편하게 스팸여부를 차단할 수 있도록 제공되는 스팸발송에 이용되는 IP 리스트를 말하며, 대체로 DNS Lookup을 통해 확인하는 방식을 이용하므로 DNSBL(DNS-based Blackhole List) 라고도 함. 메일서버등록제 SPF(Sender Policy Framework) 메일서버 정보를 사전에 DNS에 공.. 2019. 7. 14.
[DB] Truncate, Delete, Drop 테이블에서 행을 삭제하는 방법 DELETE (데이터만 삭제) DELETE FROM example; DELETE 문을 사용할 때 TABLE이나 CLUSTER에 행이 많으면 삭제 될 때마다 많은 SYSTEM 자원이 소모된다. 트리거에 걸려있으면 각 행이 삭제될 때 실행된다. 이전에 할당되었던 영역은 삭제되어 빈 테이블이나 클러스터에 그대로 남아 있게 된다. 커밋을 하지 않았다면 롤백이 가능하다. 전체 or 일부 삭제가 가능하다.(WHERE 절 사용) 디스크에 용량은 그대로 남아있다. 데이터만 없어질 뿐. DROP (테이블 전체 삭제) DROP TABLE example; 테이블이나 클러스터를 삭제하면 모든 관련 INDEX, CONSTRANINT, TRIGGER, 권한도 삭제된다. TRUNCATE TRUNCAT.. 2019. 7. 14.
[Linux] 리눅스에 톰캣 설치 & 서비스 등록 회사에서는 보통 파일을 직접 다운받아서 파일을 넣은 후 바로 원하는 경로에 압축을 푸는 경우가 많다. tomcat tar.gz를 다운받아 ftp를 사용해 파일을 전송한다. 압축 풀기 tar zxvf apache-tomcat-7.0.88.tar.gz -C /usr/share/ gzip으로 압축된 파일을 -C 로 지정된 경로에 압축을 풀어라 tar [OPTION...] [FILE]... -f : 대상 tar 아카이브 지정. (기본 옵션) -c : tar 아카이브 생성. 기존 아카이브 덮어 쓰기. (파일 묶을 때 사용) -x : tar 아카이브에서 파일 추출. (파일 풀 때 사용) -v : 처리되는 과정(파일 정보)을 자세하게 나열. -z : gzip 압축 적용 옵션. -j : bzip2 압축 적용 옵션. -.. 2019. 7. 5.
[Git] 체리픽(Cherry Pick) 체리픽(Cherry Pick)이란? 특정 커밋의 변경사항을 가져오는 작업 체리픽(Cherry Pick)을 사용해야 하는 경우 여러 브랜치로 작업을 하는 중, 다른 브랜치에 있는 기능을 현재 브랜치에서 확인하고 싶을 때 누군가 작업도중 Commit Revert를 사용해 파일을 되돌린 경우 이때 체리픽을 사용하지 않고 merge를 해서 사용하려하면 conflict가 발생한다 방법 팀원 중 한명이 나의 브랜치의 커밋을 Revert 후 push 했다고 가정해보자. 나는 다음 작업을 위해 원격 브랜치를 우선 pull로 가져올 것이다. 하지만 그럴 경우 분명 있어야 할 코드가 없어진 것을 확인할 수 있을것이다. Revert 역시 하나의 commit log이기 때문이다. 이럴 경우, 사라진 내 커밋을 체리픽을 사용해.. 2019. 6. 29.
[MySql] 쿼리 캐시 쿼리 캐시 쿼리 캐시는 MySql 에만 존재하는 기능 중 하나로써, 적절한 설정을 하면 상당한 성능 향상 효과를 얻을 수 있다. SQL 문장을 캐시하는 것이 아니라 쿼리의 결과를 메모리에 캐시해 두는 기능이다. 구조는 간단히 맵(Map)과 같이 키와 값의 구조로 구현되어 있다. 여기서 키는 쿼리 문장, 값은 쿼리의 실행 결과를 나타낸다. 데이터베이스에서 쿼리를 처리할 때는 상당히 많은 부분의 처리 절차가 있다. 이를 전부 무시하고 동일한 쿼리 문장이 요청 됐다고해서 그냥 캐시된 결과를 보내서는 안된다. 처리 절차 요청된 쿼리 문장이 쿼리 캐시에 존재하는가? 쿼리 문장 비교대상에는 공백, 탭과 같은 문자도 모두 포함되며, 대소문자까지 완전히 동일해야 같은 쿼리로 인식한다. 동일한 쿼리라도 대소문자, 공백,.. 2019. 6. 27.