전체 글 876

Nginx - access log 파일 이름 (날짜 형태로 변경)

access log의 경우 map으로 특정 변수를 사용해, 일자를 포함해서 log rotate가 된다. 1.13.x 이상부터 다만, error log는 안된다. 스크립트를 만들어서 사용 하면 된다. (SIG를 줄 수 있다.) log rotate - access log 파일 이름을 날짜로 설정 하기 map $time_iso8601 $logdate { '~^(?\d{4})-(?\d{2})-(?\d{2})' $year$month$day; default 'nodate'; } log_format format '$remote_addr - - [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" &..

인프라/nginx 2022.05.09

우아한테크 세미나 - 지속가능한 SW 개발을 위한 코드리뷰

https://www.youtube.com/watch?v=ssDMIcPBqUE&ab_channel=%EC%9A%B0%EC%95%84%ED%95%9CTech 알게 된 부분 unused import, declaration => error로 표시 되도록 설정 PR을 올릴 때 주석 달기 -> 먼저 읽어보고 설명을 커멘트로 남겨서 리뷰어의 시간 절약 리뷰어를 모두 포함 시켜라 의미 있는 커밋으로 분리 파일 생성부터 커밋을 분리 테스트 추가 커밋 등 리뷰에 대한 룰 확보 아침 30분, 점심 이후 30분 PR의 변경분이 적도록 노력 리뷰하는 것 자체의 노고를 인정 해줘야 함. 리뷰의 핵심 무엇이 코드를 나아지게 하는가? 에 초점 누가 그런 아이디어를 냈는지가 아니다. 너만 빼라. 너라고 하지 않는게 좋고, 대상은 코..

승돌 쓰다 2022.04.28

코드스피츠 77 - ES6+ 기초편 6회차 (Generator, Promise, Async/Await)

Generator const infinity = (function*() { let i = 0; while(true) yield i++; }) console.log(infinity.next()) yield를 이용하면 블록을 중간에 끊어주는 효과가 발생 => JS에서는 하나의 문들을 Record로 만들어 주고, 해당 레코드를 실행 할지 말지를 결정 하게 됨. suspension, generator, command pattern등 여러 가지 개념들이 설명 되어 나오는데, 각각을 잘 이해하는게 중요하다. gererator + async + executor generator => 흐름을 멈춰준다. const profile = function*(end, next, r) { const userid = yield $...

Oracle To PostgreSQL 작업 하다 배운것

nvl => COALESCE으로 대체 nvl 함수는 null이면, 다른값으로 치환 해주는 함수이다. 오라클에서는 정말 잘 쓰이지만, postgresql에서는 해당 함수가 없다. COALESCE이란 함수가 있기에 대체가 가능하다. decode => CASE WHEN 으로 대체 오라클에서 자주 사용하는 조건문 함수 decode가 postgresql에는 없다. CASE WHEN [COLUMN] IS NULL THEN 'N' ELSE [COLUMN] END AS [COLUMN]형태로 바꿔서 사용이 가능하다. 날짜 값에서 특정 시간 만큼 빼기 - mybatis에서 파라미터로 넘겨줄 때 처리 보통 오라클에서 쓸때는 아래처럼 사용 했다. (SYSDATE - 60/60/24) 이걸 mybatis로 바꾸면..

DB/Postgresql 2022.04.15

타다 - 대한민국 스타트업의 초상

https://movie.daum.net/moviedb/main?movieId=152961 타다: 대한민국 스타트업의 초상 Daum영화에서 자세한 내용을 확인하세요! movie.daum.net 해당 다큐를 보면서, 요새 주식 선진국 지수 들어가자 말자 하는 와중에서 선진국 지수를 들어가는게 무슨 소용인가? 라는 생각을 하게 되었다. 기술적인 진보를 이룩하려는 스타트업이 법의 규제에 방해를 받고 진보 되지 못하는 사회가 문제가 된다. 어찌보면, 사회에서 특정 계층에 대한 법적 제도 안에서의 구제가 역설적이게도 다른 사람들의 일자리 창출의 박탈이 된다. 어쩌면, 택시 드라이버 라이센스에 대한 이슈, 택시 시장의 몰락 위험 그에 따라 발생할 택시 단체의 반발 여객 운수 자동차법 자체가 엄청나게 법의 가호를 받..

승돌 쓰다 2022.04.13

lambda 아키텍처 vs kappa 아키텍처

FullStack으로 일 하다가, 팀의 규모가 20여명 정도로 커지는 바람에 FE/BE를 나누게 되면서 작년부터 저는 BE영역에서 일 하고 있습니다. 그러다 보니 데이터 관련한 아키텍처들에 관심이 많아졌고, 어떻게 하면 이해가 쉬운 구조이면서 이슈 없는 데이터 플로우 구조를 만들 수 있을까 고민 하고 있습니다. 그러던 와중에 생소한 용어를 듣게 되어 간단하게 공유하고자 합니다. Ref. https://www.credera.com/insights/modern-data-architecture-an-overview-of-lambda-and-kappa-architectures https://www.qlik.com/blog/lambda-or-kappa-the-need-for-a-new-data-processing..

프로그래밍 2022.04.12

공감 가는 글을 봤다.

출처는 이 곳입니다. https://t.motd.kr/posts/1575/%eb%a6%ac%eb%8d%94%ec%9d%98-%ec%95%88%ed%8b%b0%ed%8c%a8%ed%84%b4/ 리더의 안티패턴 — T's message of the day 무지 잘못된 아키텍처에 대한 집착에 가까운 나르시즘 전체를 바라보는 멍청하리만치 낮은 시각 개체지향 디자인에 대해 전혀 모르거나 경험이 없음 무지에 대한 무지 이중성 겉으로는 익스트 t.motd.kr 리더의 안티패턴이란 글이다. 이 글을 보자마자 무릎을 탁 치게 되는데, 2006년도 글이니 결과적으로 세상 사람 사는 이야기는 다 같다는 말이고, 개발자들의 세계 이전에 사람 사는 세계이기에 역사는 반복 된다. 진보는 조금씩 이루어질 뿐이고, 살아가는 모습은 ..

승돌 쓰다 2022.03.23

alfred workflow 오류 - python 못찾을 때

언제부터인가, alfred workflow가 동작을 안하는 걸 보니 python2 환경이라 그렇고, monterey 업데이트 좀 하다보니 아예 맥 기본 path에 python3만 존재하면서 오류가 발생 했다. https://www.alfredapp.com/help/kb/python-2-monterey/ 위 페이지를 참고해보면, 된다. export PATH="/opt/homebrew/bin:/usr/local/bin:${PATH}" eval "$(brew shellenv)" brew install pyenv pyenv install 2.7.18 ln -s "${HOME}/.pyenv/versions/2.7.18/bin/python2.7" "${HOMEBREW\_PREFIX}/bin/python" 위의 방식..

MacOS 2022.03.21

성장과 즐거움 그 사이, 개발자

https://ppss.kr/archives/251753 왜 기업은 직원들의 성장을 원하지 않을까? 기업이 직원들의 성장을 원하지 않는다니 이게 대체 뭔 말인가? ​리더들은 대체로 조직의 성장을 원한다. 사업 규모도 커지고 직원들도 많아지기를 원한다. 그런데 젊은 직원들, MZ세대의 성장 ppss.kr 직원들의 성장도 중요한 부분이지만, 보다 더 중요한 포인트는 왜 기업은 직원들의 일의 즐거움에 대해서는 무관심 할까?에 더 초점을 맞춰야 한다고 생각 합니다. 개발자는 일을 어떻게 할 때, 즐거움이 올라가는지? 어떤 부분에서 스트레스가 높아지는지? 관리 대상이라고 생각 합니다. 일이라는 것이 어떤 의미인지? 조금 다각도로 볼 필요가 있다고 생각 합니다. 우리가 어떤 일을 할 때, 늘 같은 성과가 나오는지?..

승돌 쓰다 2022.03.13
반응형