일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래밍
- Python
- Layer4
- Layer
- Router
- SQLD
- 자바
- 포트
- nextjs
- frame
- ip 할당
- java
- OSI
- 함수형
- 스위치
- 오라클
- class
- Layer2
- Linux
- Port
- next.js
- Packet
- oracle
- Mac
- network
- 네트워크
- dhcp
- Next
- 자격증
- 자바8
- Today
- Total
목록전체 글 (57)
BEER&DEV

리눅스에서의 make 명령어 이해하기 make 명령어는 주로 대규모 및 복잡한 소프트웨어 프로젝트에서 사용되며, 소스 코드를 컴파일하고 실행 파일을 생성하는 등의 작업을 자동화하는 데 유용합니다. make를 사용하면 프로젝트의 빌드 프로세스를 효율적으로 관리할 수 있습니다. Makefile 작성 make를 사용하기 위해서는 프로젝트 디렉토리에 Makefile이라는 파일이 필요합니다. Makefile은 make가 실행할 명령어들을 정의하는 텍스트 파일입니다. Makefile은 다양한 블록들로 구성되며, 각 블록은 타겟(Target)과 해당 타겟을 실행하기 위한 명령어들로 이루어집니다. 예를 들어, 다음은 간단한 Makefile의 예시입니다. all: hello hello: gcc -o hello hello..

시스템 정의 AWS ec2 Instance 1core RAM 2GB SSD 30GB t2.small OS 버전 Ubuntu 20.04 버전 기준입니다. Application 버전 Python 3.8 시스템 설정 AWS ec2 인스턴스를 처음 생성하게 되면 기본적인 프로그램(vi, apt 등..)을 제외 하고, 인스턴스의 경량화를 위해 아무것도 설치 되어있지 않습니다. 아래 가이드는 Django Application을 인스턴스에 올리는 커멘드를 순서대로 작성하였으며, 다른 설정 필요없이 커멘드만 따라서 입력해주시면 서버 구성이 완료됩니다. 시스템 확인 아래와 버전이 같은지 확인해줍니다. -- 우분투 버전 확인 $ lsb_release -a -- 결과 No LSB modules are available. D..

// ex) 특정 변수값 복사하기 const someData = "이걸 복사하고 싶어요"; let tempInput = document.createElement("input") tempInput.value = someData; // 굳이 body일 필요는 없습니다. 아무 엘리먼트나 지정해서 작성해도 무관합니다. document.body.appendChild(tempInput); tempInput.select(); document.execCommand("copy"); document.body.removeChild(tempInput);

Nginx 란? Nginx는 웹 서버 소프트웨어로, 가벼움과 높은 성능을 목표로 한다. 웹 서버, 리버스 프록시 및 메일 프록시 기능을 가집니다. APT 란? Advanced Package Tool의 약자인 APT는 Debian 시스템에 포함된 핵심 도구들의 집합체입니다. 즉, 우분투와 같은 데비안 계열의 패키지를 관리하는데 사용됩니다. Apt를 활용하면 다음과 같은 작업을 처리할 수 있습니다: 패키지 설치 패키지 업그레이드 패키지 삭제 의존성 해결 패키지 검색 패키지 정보 확인 저장소 관리 등 우분투(Ubuntu) 에 Nginx 설치하기 1. APT 업데이트 및 업그레이드 $ sudo apt update $ sudo apt upgrade 2. Nginx 설치 $ sudo apt install nginx..

왜 Windows에서 Linux 개발 환경이 필요한가? Windows에서 Linux 개발 환경을 필요로 하는 이유는 간단합니다. 회사에서 쓰는 PC는 Windows 운영체제를 사용하는데, 우리 서비스는 AWS 클라우드에서 Linux를 사용합니다. 그래서 로컬(개발) 환경과 클라우드(운영) 환경을 맞추려고 WSL2(Windows Subsystem for Linux)를 사용했습니다. 이렇게 하면 개발하고 테스트할 때 일관성을 유지하고 생산성도 높일 수 있습니다. 최소사양 WSL 2로 업데이트하려면 Windows 10 또는 Windows11 이상. x64 시스템의 경우: 버전 1903 이상, 빌드 18362.1049 이상. ARM64 시스템의 경우: 버전 2004 이상, 빌드 19041 이상. 구성? 도커, ..

혼자서만 개발을 할 것인가? 개발기획에 앞서 지금은 혼자서 블로그 개발에 참여하고 있지만, 추후 동료들 또는 친구들과 함께 작업할 수 도 있다는 생각을 먼저 했다. 보통 개발단계에서는 로컬에 Database를 두고 진행하는 게 편하지만, 함께 작업을 한다면? 편하다기보다는 개발하면서 기획이 변경될 수도 데이터의 형태가 바뀌는 등 많은 변수가 있을 것으로 보이므로 함께 사용할 Database를 고민해 보던 중 Cloud 서비스를 이용하면 모든 문제를 해결할 수 있다고 판단했다. 하나의 Database로 테스트 데이터 파편화 및 샘플링 작업, 무엇보다 작업하는 로컬 컴퓨터는 부하도 없다. 그래서 무료로 제공하는 Database Cloud 서비스를 찾기로 했다. DB의 종류가 많은데 무엇을 선택해야 할까? 계..

"내 블로그가 어떻게 구글에 노출이 되는 거지?" 로봇이 웹사이트를 크롤링할 때 어떤 부분을 허용하고 어떤 부분을 차단할지를 결정하는 중요한 파일이 있습니다. 그 파일은 바로 "robots.txt"입니다. 이 파일은 웹사이트의 루트 디렉터리에 위치하며, 검색 엔진 로봇에게 특정 지침을 제공합니다. "robots.txt" 파일은 특정 로봇에 대한 지시를 설정하는 데 사용됩니다. 아래처럼 크게 두 가지로 나눠 볼 수 있습니다. "User-agent" 부분에서는 어떤 로봇에게 적용할지를 지정하고, "*"는 모든 로봇을 의미합니다. "Disallow"는 크롤링에서 제외할 디렉터리나 파일을 지정하며, "Allow"는 허용하는 부분을 나타냅니다. 예를 들어, "Disallow: /private/"는 "/privat..

"규칙을 먼저 정하자!" 코드 컨벤션이란? 코드 컨벤션은 일관된 코딩 스타일과 가독성을 유지하기 위한 중요한 규칙들을 정의한 것입니다. 팀 내에서 동일한 코딩 규칙을 공유하면 코드의 일관성이 유지되며, 이로써 코드의 가독성이 향상되고 협업이 효율적으로 진행될 수 있습니다. 주로 들여쓰기, 변수명 표기, 주석 등과 같은 측면에서 일관성을 유지하도록 설계되어 있습니다. 프로젝트를 개별적으로 진행하고 있더라도, 미리 정의된 코드 컨벤션을 도입하는 것은 매우 유용합니다. 현재는 혼자 작업 중이지만 향후 프로젝트 규모가 커지거나 다른 개발자들이 참여할 가능성이 있을 때를 대비한 것입니다. 일관된 규칙과 문서를 통해 다른 개발자들이 프로젝트에 쉽게 참여하고 이해할 수 있도록 함으로써 효율적인 협업이 가능해집니다. ..

"가장 중요하게 생각하는 것.." 블로그를 운영하면서 중요한 부분 중 하나는 구독자들이 게시물을 발견하고 읽을 수 있도록 하는 것입니다. 일반적으로 블로그 방문자는 직접 URL을 입력하는 대신 검색 엔진을 통해 찾아오게 됩니다. 그러므로 블로그가 검색 엔진에 노출되려면 sitemap.xml 또는 robots.txt 파일을 검색 엔진에 제공해야 합니다. React는 주로 클라이언트 측 렌더링(CSR)을 사용하므로 기본적으로 정적인 HTML 문서로 제공되지 않습니다. CSR 웹 애플리케이션은 브라우저에서 실행되기 전에 필요한 파일을 다운로드하기 때문에 검색 엔진이 웹 애플리케이션의 콘텐츠를 탐색하기 어려워집니다. 이로 인해 검색 엔진이 블로그 글을 효과적으로 수집하고 사용자의 검색어에 따라 결과로 노출시키기..

데이터베이스의 성능 최적화는 현대 소프트웨어 개발에서 핵심적인 역할을 합니다. 특히 데이터베이스 테이블에 대한 쿼리 성능을 향상시키기 위해 고려해야 할 중요한 측면 중 하나는 인덱스의 적절한 활용입니다. 그러나 인덱스를 무작정 늘리는 것이 항상 쿼리 성능을 향상시킬 수 있는 것은 아닙니다. 이 글에서는 데이터베이스 테이블의 컬럼 수가 많을 때 인덱스 증가가 무조건적으로 속도 향상을 가져오지 않는 이유에 대해 알아보겠습니다. 1. 인덱스의 역할과 동작 원리 이해 인덱스는 데이터베이스 쿼리의 성능을 향상시키기 위해 사용되는 도구로, 데이터의 빠른 검색을 가능하게 합니다. 하지만 인덱스는 추가적인 저장 공간을 차지하며, 데이터 삽입, 갱신, 삭제 작업에 영향을 미칩니다. 2. 인덱스의 종류와 선택 기준 데이터..