전체 글 27

Node.js 기여해보기

7월부터 오픈소스 컨트리뷰션 아카데미 라는 프로그램에 참여하여 멘티로 활동하고 있습니다.https://chss3339.tistory.com/28 오픈소스 컨트리뷰션 아카데미에서 Node.js 참여형 멘티로 참여하게 되었습니다. (OSSCA)아카데미 소개 사이트https://www.contribution.ac/ OSS 사이트 내 아카데미 소개 페이지https://www.oss.kr/contribution_academy OSS 사이트 내 참여형 프로젝트 소개https://www.oss.kr/ossca_24_projects_2 OSS 사이트 내 Nodechss3339.tistory.com 초반에는 어려운 내용도 많이 기여를 해보고 싶다고 생각을 했는데, 이게 생각보다 만만치않았습니다.웹개발에서 많이 사용되는 ..

나의 삶 2024.09.02

오픈소스 컨트리뷰션 아카데미에서 Node.js 참여형 멘티로 참여하게 되었습니다. (OSSCA)

아카데미 소개 사이트https://www.contribution.ac/ OSS 사이트 내 아카데미 소개 페이지https://www.oss.kr/contribution_academy OSS 사이트 내 참여형 프로젝트 소개https://www.oss.kr/ossca_24_projects_2 OSS 사이트 내 Node.js 프로젝트 소개https://www.oss.kr/ossca_24_projects_2/show/9df32a1b-f3ea-479c-b1e8-3d5a239b61bf  오픈소스 컨트리뷰션 아카데미는 선배 개발자(멘토) 분들께서 후배 개발자(멘티)를 멘토링 하는 방식으로 진행되며, 오픈소스에 익숙하지 않은 멘티들이 기여해볼 수 있게 기회를 제공하는 프로그램입니다.올해 초 회사에서 Node.js 업그레..

나의 삶 2024.07.16

2023년을 보내며

2022년을 보내면서도 한 해를 돌아보는 글을 작성했었는데, 이번에도 2023년을 보내면서 글을 작성해보려고 합니다. 개발과 관련하여 가장 큰 이벤트는 개발자로 일한지 1년이 지났다는 것입니다. 2022년 10월 4일에 입사했고, 2023년 10월 4일에 1년을 맞이했습니다. 회사에서도 1년이 될때마다 셀프 리뷰를 하는데, 지난 날 동안 해왔던 일을 보며 많은 생각이 들었습니다. 개발과 도메인 지식이 많이 부족했기때문에 입사 초반에는 어려움을 많이 겪었는데, 지금은 이해가 어느정도 되고 있습니다. 회사에서 일을 하며 큰 실수를 할 뻔한 적도 있고, 자잘한 실수도 많이 했는데 한 번도 안좋은 말을 들은 적이 없습니다. 오히려 똑같은 실수를 반복하지만 않으면 된다는 조언과 함께 항상 그럴수도 있다고, 책임은..

나의 삶 2023.12.20

친절한 SQL 튜닝 - 조시형

https://product.kyobobook.co.kr/detail/S000001975837 친절한 SQL 튜닝 | 조시형 - 교보문고 친절한 SQL 튜닝 | product.kyobobook.co.kr 이 책은 SQL 튜닝에 대해 설명되어있는 책입니다. 처음에는 SQLP 자격증을 공부하려고 샀는데, 주니어 입장에서 짧지 않은 기간동안 이 자격증만 주구장창 공부하기에는 다른것도 공부해야될게 많아서 이 책만 읽었습니다. 최근에 어디선가 봤는데, 원래 주니어땐 이거공부하다가 저거공부하다가 하면 나중에 그 지식들이 이어진다고 합니다. 오라클이 기준이며 중간중간 MSSQL 쿼리도 나옵니다. DBA가 아니라 개발자를 위한 책이여서 처음부터 SQL 튜닝에 대해 나오진 않습니다. 인덱스가 무엇인지부터 어떻게 작동하는..

도서 2023.10.06

Node.js에서 Async Await, Try Catch 남발하기

저는 Node.js 백엔드 개발자입니다. 엘리스 (부트캠프)로 Node.js를 처음 배웠습니다. 부트캠프에서는 동기, 비동기에 대해 설명은 해주지만 초심자가 알아듣게 설명을 해주지는 않고, 설명을 해준다고 해도 그때는 이해하기 어려운 개념이었습니다. 동기, 비동기, Blocking, Non-Blocking 등 취업을 해야하니까 이론으로 공부만 했지, 실제로는 어떻게 작동하는지 감을 못잡았습니다. 회사에서 일을 하다보니 서버를 나누고, 비동기적으로 처리해야될게 많아져 다른분들께서 작성하신 코드를 보며, 그리고 그 코드들을 따라하며 어느정도 눈을 뜨게 되었습니다. 그러다보니 제 스스로 제가 작성했던 코드에 대해 창피한 순간이 많은데, 그 중에 두가지가 Async Await, Try Catch를 남발한 것입니..

나의 삶 2023.10.06

[Real MySQL 8.0] 아키텍처 - MySQL 엔진 아키텍처

MySQL 엔진과 스토리지 엔진 mysql 엔진: 머리 스토리지 엔진: 손, 발 mysql 엔진은 요청된 sql 문장을 분석하거나 최적화 하는 등의 처리를 수행합니다. 스토리지 엔진은 데이터를 저장하거나 읽어오는 작업을 수행합니다. myql 엔진은 하나지만, 스토리지 엔진은 여러 개를 동시에 사용할 수 있습니다, CREATE TABLE test_table (fd1 INT, fd2 INT) ENGINE=INNODB; test_table 에 대해 INSERT, UPDATE 등의 DML 작업이 발생하면 InnoDB 스토리지 엔진이 처리합니다. 각 스토리지 엔진은 성능 향상을 위한 기능을 가지고 있습니다. - MyISAM 스토리지 엔진: 키 캐시 - InnoDB 스토리지 엔진: 버퍼 풀 핸들러 API mysql..

Database 2023.09.05

[Real MySQL 8.0] 사용자 및 권한

mysql은 사용자의 접속 지점 (호스트 명 or ip 주소)도 계정의 일부가 됩니다. %는 모든 IP 또는 모든 호스트명을 의미합니다. 아래 두 계정은 서로 다른 비밀번호를 가지고 있는 다른 계정입니다. 'svc_id'@'%' 'svc_id'@'127.0.0.1' 만약 127.0.0.1 로 접속을 한다면 mysql은 아래 계정을 선택합니다. 권한이나 계정 정보에 대해 mysql은 범위가 가장 작은 것을 항상 먼저 선택하기 때문입니다. 그래서 이 경우에 '%'에 대한 계정의 비밀번호를 입력하면 비밀번호가 일치하지 않습니다. 계정 종류 시스템 계정: SYSTEM_USER 권한을 가짐, db 서버 관리자 - 계정 관리 - 다른 세션 또는 그 세션에서 실행 중인 쿼리 강제 종료 - 스토어드 프로그램 생성 시 ..

Database 2023.09.01

[Real MySQL 8.0] mysql 설치와 설정

docker compose 를 제외한 모든 내용은 Real MySQL 8.0 Chpater 2 를 읽고 정리하였습니다. 공부용 docker compose version: '3' services: real-mysql: image: mysql:8.0 ports: - '3311:3306' restart: always container_name: real-mysql # stdin_open과 tty를 true로 해야 컨테이너 안에서 터미널 실행이 가능하다. stdin_open: true tty: true environment: TZ: Asia/Seoul MYSQL_USER: user MYSQL_PASSWORD: user MYSQL_DATABASE: real-mysql MYSQL_ROOT_PASSWORD: root..

Database 2023.08.28