분류 전체보기

KNOWLEDGE

SQL : 특정 텍스트를 치환하기 - REPLACE UPDATE

동읍면 데이터를 마이그레이션해놓고 전송을 하려고 보니 문제가 있는 내용을 확인했다. 마이그레이션 당시 openAPI에서 제공하는 엑셀 페이지를 그대로 긁어와 넣었는데, 막상 넣고 보니 1동, 2동과 같은 내용을 제1동, 제2동 등으로 표기해 기존 데이터와 충돌이 있었던 것이다. 부산 같은 경우는 행정동이 10개까지도 빠지는 동이 있기도 하고, 수동으로 변경하려니 분명히 놓칠 것 같다고 생각했는데, REPLACE 문으로 업데이트도 할 수 있다는 사실을 알았다. UPDATE STATE SET dong_eup_myeon = REPLACE(dong_eup_myeon, '제1', '1')다음 방식을 사용하면 구로제1동 => 구로1동 형태로 변경된다. 이 경우 전체 테이블 내역에 aff..

KNOWLEDGE/NETWORK

VPN - Virtual Private Network

안전하지 않은 통신망을 이용해 여러 네트워크 간 안전한 통신을 하기 위한 장치.프라이빗한 전용 네트워크를 가상적으로 만들기 위한 장치. 일반적으로는 전용선을 사용해 여러 네트워크를 간단하고 안전하게 연결할 수 있으나,이는 일반적으로 비용이 높으므로, 저가로 VPN을 사용해 여러 네트워크를 사용한다. VPN 연결은 데이터 패킷을 전송하기 전 컴퓨터에서 다른 서버로 리다이렉션을 거친다.이 서버는 VPN 서버로, 컴퓨터와 VPN 서버는 보안 데이터 터널을 생성하여 통신하게 되며,이 때문에 ISP와 기타 다른 곳에서도 인터넷 트래픽 콘텐츠를 볼 수 없게 된다.이를 터널링 프로토콜이라고 한다. 또한 VPN 통신은 IPSec과 같은 암호화를 거친다(이를 데이터를 스크램블한다고 표현하기도 한다).

THOUGHT

붕괴하지 않는 팀을 위하여

정치질이나 팀 간 소통 단절이나 업무 방식으로 인한 갈등 대부분은 어디서든 발생하는 일인 것 같다. 조직 내에서 개개인에 대한 신뢰감이 바탕이 되지 않으면 이런 일들이 더 자주 일어난다. 신뢰감이 없는 상황이란 이런 것이다. 1. 비난을 받을 것 같아 의도적으로 다른 사람을 폄하하거나 비난하여 본인의 입지를 다진다. 2. 다른 개발자가 자기 편의만 생각하며 일한다고 생각하며 소극적, 혹은 수동공격적으로 커뮤니케이션에 임한다. 3. 저 팀은 안 그래도 바쁜 우리 팀원들에게 공수를 요청하므로 요청에 부정적으로 응한다(내용과 관계없이). 4. 이 동료의 역량은 믿을 수 없으므로 곤란한 질문을 하거나 부담스러운 업무를 제공한다. 5. 이 동료는 마음에 들지 않으므로 꼭 필요한 자료를 전달하지 않거나 도움 요청에..

DEVELOPMENT

미러 서버

본래 서비스와 동일한 콘텐츠, 혹은 권한을 가진 서버. 주로 FTP 서버에서 사용하며, 사용자가 폭주해 시스템에 부하가 걸려 성능에 문제가 발생하는 경우 이를 방지하기 위해 다른 컴퓨터에 동일한 환경과 파일을 복사해 만든다. 주로 지역 단위로 분리가 되며, 통신은 지역이 가까울 수록 전송 속도가 빨라지므로 인근 지역의 사용자들은 해당 미러 서버를 사용하는 구조가 된다. http://kr.archive.ubuntu.com/ubuntu 는 설치 시 한국을 지정할 때 잡히는 apt 레포지토리 미러 서버로, 카카오나 대학 등에서도 빠른 다운로드 속도를 위해 미러 서버를 운영하고 있다. 우분투에서 미러 서버를 변경하는 방법은 다음과 같다. $ sudo sed -i s/kr.archive.ubuntu.com/mir..

THOUGHT

DevFest GDG Songdo 2023 후기

페스타에서 우연히 devfest 개최 글을 보고 흥미롭다고 생각해 참석 신청을 했다. 굉장히 많은 사람들이 참석했고 특정 세션들은 넓은 홀을 사람들이 꽉 채울 정도로 인기가 많았다. 가장 인상적이었던 발표는 3시 50분에 진행된 [팀장의 탄생] 이라는 주제였다. 엔지니어였다가 팀장직을 맡게 되고 어떤 식으로 좋은 팀장이 되기 위해 노력했는지에 대해 이야기해주셨다. 좋은 팀장의 가장 중요한 점은 업무를 하달하는 역할이 아니라 업무를 잘 할 수 있게 만드는 역할이라는 점이다. 이 일을 왜 해야하지? 왜 이렇게 하면 안 되지? 누가 이런 걸 하라고 하는거지? 라는 식으로 팀원에게 단순히 업무만 전달해서는 동기부여를 끌어내기 어렵다. 적어도 단기적으로는 기술에 대한 열정 정도로 이겨낼 수도 있겠지만, 장기적으로..

KNOWLEDGE/WEB

Content Security Policy

프론트엔드 개발자 분이 작업하시는 걸 지켜보고 있다가 문득 이상한 현상을 확인했다. 서비스는 React + Next로 되어있었는데, localhost로 돌리는 서비스가 자꾸만 https로 보내지는 현상이었다. (Next.js 프록시 서버로 api 요청이 간다) Axios에 전역 설정으로 뭘 잡아두셨나? 했는데 그것도 아니었고, Next의 server 쪽에 https 세팅을 해두셨나 했는데 그것도 아니었다. config에 https를 잘못 적었나 싶어 전체 검색을 돌려봤으나 해당 문제도 아니었다. 뭔가 기이한 일이라 한번 봐보겠다고 이야기를 드렸다. 코드 어디에도 문제가 될 부분은 없었으나 동작을 안 하는 게 이상했고, 몇 주 전 같이 작업했을 때까지만 해도 없던 이슈라서, 마지막으로 내가 같이 작업했던 ..

DEVELOPMENT

graceful shutdown

현재 진행중인 모든 요청을 처리한 후 프로세스를 종료하는 방식 reload - 전체 프로세스를 유지한 채 그 외 프로세스만 재시작 - 세션 종료 없이 설정 파일만 불러옴 restart (stop && start) - 전체 프로세스를 종료한 후 재시작 - 다운타임이 발생할 수 있음

SERVER

RAID 구성 방식에 대하여

프로세서나 메모리는 고장나면 정상 제품으로 변경하면 되지만, 스토리지는 고장나면 데이터 소실로 일어날 수 있다. 특히 HDD는 물리적 충격 등에 취약하므로 서버용 스토리지는 일반적으로 RAID 구성을 통해 장애 대응을 위한 대비를 구성하는 편이다. RAID 0 두 개, 혹은 그 이상의 하드디스크에 데이터를 분산하고 한꺼번에 출력, 즉, 스트라이핑. 이론적으로 하드디스크에서 읽을 수 있는 속도의 한계를 병렬 읽기를 통해 읽으므로 이론상 n배의 액세스 속도로 읽을 수 있다. 이는 내결함성을 위한 구성이 아니며 디스크 I/O 성능 개선이 목표이다. 특정 하드디스크에 문제가 발생할 경우 데이터가 분산되어 있으므로 다른 하드디스크의 데이터도 사용할 수 없게 된다. JBOD Just a Bunch of Disks...

정민아
'분류 전체보기' 카테고리의 글 목록 (2 Page)