기타 14

Git 커밋 상태를 확인하여 배포하는 쉘 스크립트

쉘(Shell)은 유닉스 및 유닉스 계열 운영체제의 커맨드라인 인터페이스를 의미하며 리눅스, 맥 OS의 기본 쉘로는 bash가 제공된다. 그리고 쉘에서는 웹 브라우저의 콘솔에서 자바스크립트 코드를 사용할 수 있는 것처럼 쉘 스크립트 코드를 실행할 수 있다. 쉘 스크립트를 사용하면 파일 입출력, 연속적인 명령어 실행, 사용자 인터페이스 구현 등이 가능해진다. Git 저장소의 커밋 및 푸시 여부도 쉘 스크립트 안에서 Git 명령어의 실행을 조합하는 방식으로 구현할 수 있다. 쉘 스크립트를 사용해서 현재 브랜치 정보 확인하기 쉘 스크립트에도 프로그래밍 언어인 만큼 변수를 사용할 수 있다. Git 명령어를 이용해 현재 브랜치의 이름, 현재 작업중인 로컬 브랜치(HEAD)의 커밋 해시 스트링, 그리고 원격 저장소..

기타 2020.02.08

도메인, DNS, A레코드, CNAME ??

도메인이란 숫자로 이루어진 인터넷 주소를 알기 쉽게 영문으로 표현한 것이다. DNS(도메인 이름 시스템)는 도메인 이름의 웹사이트 및 이메일 설정을 제어한다. 도메인 이름으로 이동하면 DNS 설정에 따라 어느 회사의 서버에 도달할지 결정된다. 예를 들어, A사의 DNS 설정을 사용하는 경우 방문자는 해당 도메인 이름을 사용할 때 A사의 서버에 도달한다. 사용자의 다른 회사 서버로 해당 설정을 변경하는 경우, 방문자들이 사용자의 도메인을 방문할 때 당사 대신 해당 회사로 도달하게 됨. DNS 요소설명 네임서버 네임서버는 도메인 이름을 DNS 설정을 제어하는 회사로 "연결"합니다. 일반적으로 이는 사용자가 도메인 이름을 등록한 회사가 됩니다. 하지만 사용자의 웹사이트가 다른 회사를 통해 호스팅되는 경우, 해..

기타 2020.02.08

SMTP, POP3, IMAP 메일관련 프로토콜 개념

IMAP와 POP3는 아웃룩(Outlook), 썬더버드(Thunderbird), 안드로이드 기본 이메일 앱과 같은 메일 클라이언트에서 이메일에 접속하고자 할 때 사용하는 프로토콜. 사용하는 포트번호가 다르며 방식도 다르게 설정되어 있습니다. 물론 회사 보안을 위해 포트번호는 변경될 수 있지만 방식은 변경되지 않음. SMTP(Simple Mail Transfer Protocol) Port 25 - default, non-encrypted port Port 465 - using SMTP securely 이메일을 보낼 때 사용되는 기본 프로토콜. 클라이언트-서버간 통신, 서버-서버간 통신을 모두 담당한다. 아래 POP3, IMAP은 둘다 메일을 받아 오는 역할이고, SMTP는 메일을 발신하는 역할을 한다. s..

기타 2019.12.27

슬로우쿼리(slowquery)

* slow query 란 ? DBMS 가 client로부터 요청받은 query를 수행할때 일정시간 이상 수행되지 못한 query 즉 길어야 1~2초 걸리는 db 쿼리가 예상보다 오래걸리는 경우를 뜻함. 저번주 잘못 된 쿼리덕에 전자결재 서버가 마비되는 상황 발생. 원인은 where절에 null값이 들어가 풀스캔 쿼리로 인해... 해결은 컨트롤러의 if문 한줄 추가로 간단하게 해결함. 언제든 값이 정상적이지 않을거라는 예외상황을 염두해둬야함 로그잘 쌓고 잘 확인하자 * 로그쌓는법 슬로우쿼리는 my.cnf 파일 내에서 설정. my.cnf의 경로는 주로 /etc/my.cnf를 사용합니다. 편집기를 통해 다음의 내용을 입력한다. my.cnf로 수정할 경우 mysql 서비스 재시작이 필요함. 항목 my.cnf ..

기타 2019.11.28