IT Study 19

Let's Encrypt SSL 추가하기 (nginx + ubuntu)

nginx에 http 세팅이 모두 완료됐다는 가정하에 작성되었습니다. 1. certbot 설치하기 sudo apt update sudo apt install -y snapd # snapd 최신 버전으로 업데이트 sudo snap install core sudo snap refresh core # snapd 를 사용해 certbot 설치 sudo snap install --classic certbot sudo ln -s /snap/bin/certbot /usr/bin/certbot 2. SSL 등록하기 sudo certbot --nginx 질의내용의 프롬프트가 나옴 # 이메일 등록 Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email a..

IT Study 2023.12.05

MySQL 운영 노하우(Know-how) II - DATA TYPE 알고 쓰자!

(읽기 전 주의) 이 글은 개인의 경험에 의해 작성된 것이므로, 100% 정답이 아니며, 더 다양한 방법, 더 나은 방법이 존재할 수 있습니다. 또한, 자세한 설명보다는 왜 운영 노하우로 선정했는지, 흔히 하는 실수가 무엇인지, 내가 놓쳤던 것들은 무엇인지에 대한 이해를 돕기 위해, 비교적 간단하게 경험을 바탕으로 설명하고 있습니다 (혹은, 설명하려고 노력하고 있습니다). 이 글은 계속해서 운영하면서 실수하거나, 동료들이 쉽게 놓치거나 하는 부분을 계속해서 추가해 나갈 것입니다. 또한, 좋은 팁들이 있다면 댓글에 공유 부탁드립니다! (이번 2편에서는 DATA TYPE에 대해 실수 혹은 놓치고 있는 부분들에 대해, 길게 기록해 두도록 하겠습니다) 1편 보러가기 MySQL 운영 노하우(Know-how) I ..

MySQL 운영 노하우(Know-how) I

(읽기 전 주의) 이 글은 개인의 경험에 의해 작성된 것이므로, 100% 정답이 아니며, 더 다양한 방법, 더 나은 방법이 존재할 수 있습니다. 또한, 자세한 설명보다는 왜 운영 노하우로 선정했는지, 흔히 하는 실수가 무엇인지, 내가 놓쳤던 것들은 무엇인지에 대한 이해를 돕기 위해, 비교적 간단하게 경험을 바탕으로 설명하고 있습니다 (혹은, 설명하려고 노력하고 있습니다). 이 글은 계속해서 운영하면서 실수하거나, 동료들이 쉽게 놓치거나 하는 부분을 계속해서 추가해 나갈 것입니다. 또한, 좋은 팁들이 있다면 댓글에 공유 부탁드립니다! 1. EXPLAIN 커맨드를 사용하라! select 절 안에 explain 절을 붙이면, MYSQL에서 해당 query를 어떻게 실행할 것인지 실행 계획이 나온다. 실제로 q..

[Nodejs] 채팅구현하기 2 - SocketIO

[Nodejs] 채팅구현하기 1 - SocketIO (처음부터 끝까지) Nodejs + socketio 를 활용하여 채팅을 구현해보자. 필수 설치 목록 nodejs npm 이 곳에서 다운로드하면 nodejs, npm 모두 설치된다. 사용하게 될 스펙 및 중요 모듈 Back-end : nodejs, express, socket.io, Fro.. itseminar.tistory.com (이 튜토리얼은 시리즈형태이므로 "채팅구현하기 1"을 보고 오셔야 튜토리얼의 원할한 진행이 가능합니다.) 튜토리얼 진행 시 사용된 코드들은 튜토리얼 하단부에 모두 전체파일로 제공되어 있습니다. 순서 JOIN이란? 채팅방 그리기 채팅방 참여 채팅방 메세지 전송 전체 코드 실제 코딩에 앞서 먼저 이번 튜토리얼에서 사용하게될 soc..

[Nodejs] 채팅구현하기 1 - SocketIO (처음부터 끝까지)

Nodejs + socketio 를 활용하여 채팅을 구현해보자. 필수 설치 목록 nodejs npm 이 곳에서 다운로드하면 nodejs, npm 모두 설치된다. 사용하게 될 스펙 및 중요 모듈 Back-end : nodejs, express, socket.io, Front-end : jquery, bootstrap(css), 순서 (대기실 구성하기 - 일반 채팅) Express를 활용하여 웹서버 띄우기 프론트 그리기 SocketIO를 를 붙여서 서버와 클라이언트(브라우저) 연결 다음편 순서 (채팅'방' 구현하기) 1. Express를 활용하여 웹서버 띄우기 원하는 폴더를 생성하고, 그 폴더에서 (~/working_folder) $ npm init 을 실행한다. npm init 을 하고나서 주로 enter..

JAVASCRIPT - HOIST (호이스트) 란

개요 Hoist란? 선언부, 할당부 변수 호이스트 함수 호이스트 1. Hoist란? Hoist의 영어적 의미를 찾아보면 다음과 같다 (흔히 밧줄이나 장비를 이용하여) 들어[끌어]올리다 -- naver 검색 그렇다면 자바스크립트(Javascript)에서는 어떤 의미로 사용될까? javascript에 hoisting은 변수/함수를 상단으로 들어[끌어]올리는 것을 말한다. 이게 무슨말이냐 하면, var hoisted = "true"; hoisted 라고하는 변수를 scope 내 상위로 끌어올려 선언을 먼저 한다는 뜻이다. 여기서 진짜 엄청 중요한게.. "선언한다"와 "할당하다"는 다르다는 것이다. 2. 선언부, 할당부 그럼 위의 코드를 선언부와 할당부로 나눠보자. // 선언부 var hoisted; // 할당..

IT Study/Javascript 2020.11.11

var , let , const 의 차이

var, let, const 의 차이에 대해 예제와 함께 알아보자. 개요 Javascript 에 ES2015(ES6) 가 도입되면서 , 비약적으로 많은 발전이 있었다. 그 중 하나는 scope 에 따라 달리 쓰게되는 let, const 이다. 이전에 함수나 변수를 정의하기 위해 사용되었던, var 의 대체재 이다. 그렇다며 ㄴ왜 ES6 에서는 var 를 사용하지않고, let, const 를 사용하게 되었을까? 셋의 차이를 알기 위해선 먼저, 이때까지 우리가 사용해 왔던 var 에 대해 먼저 알아볼 필요가 있을 것 같다. 순서 var var의 문제점 let이란 const Summary 1. var 우선 변수 선언에 대해서 말하기 이전, scope 란 무엇인지에 대해 간략하게 설명할 필요가 있을 것 같다. ..

IT Study/Javascript 2020.11.10

MySQL에서 위도,경도 활용하여 거리 계산하기

순서 거리 계산 하기 하버사인 공식 MySQL 하버사인 공식 적용 (내용이 궁금하지 않으면, 바로 3번으로!) 1. 거리 계산하기 사실 이 내용에 대해서는 상당히 많은 부분의 설명이 필요하다. 위도와 경도가 무엇인지 알아야 하며, 지구의 반지름에 대해서도 알아야 하고.. sin, cos에 대해서도 알아야 한다. 상당히 많은 부분을 알아야 하므로 이 부분에 대해서 간단히 넘어가려 한다. (그래도 궁금한 건 못 참는다 하시는 분들은 여기를 참조하세요.) 56. 이걸 알아야 하나? 위도, 경도, 거리 계산 이번 공간에서는 지도의 위도( latitude, 래티튜드 ), 경도 ( longitude, 란져튜드 )에 알아보려고 해요. ... blog.naver.com 2-D ( x-y ) 좌표에서 두 점 사이의 거리..

Bash Script 슬랙 연동 – 웹훅 !

Bash Script에 슬랙을 연동하기 위해서는 슬랙 설정을 필수적으로 해야 한다. Bash Script에 연동하기 전에 슬랙에 기본 설정하기 슬랙 자동 알림 기본 설정 방법 (웹훅) 슬랙 자동 알림 설정, 예전만 해도, 서버에 문제가 있거나 상태 메시지를 확인하기 위해서, 이메일을 주로 활용해 왔다. 이메일 활용을 하는 것의 단점은, 이메일 노티피케이션 항상 켜 두어야 blog-it.seongman.com 코딩하기에 앞서 어떤 순서로 webhook integration 이 이루어지는지 알아보자 순서 cURL 요청 확인 Bash Script 작성 Bash Script 실행 1. cURL 요청 확인 Slack hook을 연동을 하기 위해서는 hooks의 url과 채널에 대해 알아야 한다. 슬랙 웹 훅 연동..

Nodejs 슬랙 연동 – 웹훅 !

이번 포스트에서는 Nodejs를 활용해서 슬랙 webhook을 연동해보자. Nodejs에 슬랙을 연동하기 위해서는 슬랙 설정을 필수적으로 해야 한다. Nodejs에 연동하기 전에 슬랙에 기본 설정하기 슬랙 자동 알림 기본 설정 방법 (웹훅) 슬랙 자동 알림 설정, 예전만 해도, 서버에 문제가 있거나 상태 메시지를 확인하기 위해서, 이메일을 주로 활용해 왔다. 이메일 활용을 하는 것의 단점은, 이메일 노티피케이션 항상 켜 두어야 blog-it.seongman.com 코딩하기에 앞서 어떤 순서로 webhook integration 이 이루어지는지 알아보자 순서 Nodejs 서버 열기 request 모듈 설치 (npm install request) slack hooks에 curl 요청 1. Nodejs 서버 ..