규도자 개발 블로그
PHP로 리눅스(linux) 크론(cronjob, crontab) 제어하기 2018-12-19CentOS에서는 정상적으로 작동하였으나 우분투에서는 에러를 일으켜 명령어가 좀 더 안정적인 것으로 변경됨. 자세한 변경내역 →깃허브반복된 작업을 알아서 실행해주는 crontab. 로그를 쌓을 때나, 자동 갱신 시스템을 만들 때 등 은근히 많이 쓰이게 된다. 하지만 crontab을 수정할 때마다 항상 불편했는데... 보통 iptables나 dbms처럼 명령어를 통해 cronjob을 등록하고 삭제하는 등의 행동은 수행할 수가 없었다. 항상 crontab -e라는 명령어를 통해 텍스트에디터형식으로 열고 편집하고 저장하고 하는 식으로 작업했지. 그게 불편해서 php에서 원하는 모든 cronjob행동을 제어할 수 있게 ..
Docker로 CentOS이미지 Systemctl 사용하기, 그 세번째 제목에서 알 수 있다시피 Docker로 CentOS의 systemd기능을 사용하는 방안에 대해서 나는 전에도 글을 두 번이나 남긴 적이 있다. 도커(Docker)로 CentOS 이미지 systemctl 사용하기 - 1 도커(Docker)로 CentOS 이미지 systemctl 사용하기 - 2 그렇게 후련한 마음에 이번에는 Docker를 통해 nginx컨테이너를 구동하려고 깃허브를 기웃기웃거리던 와중에 이 레포를 발견했다.CentOS공식 Github 그리고 예상하다시피 이것도 있다.CentOS에서 공식으로 지원하는 Dockerfiles 그리고 물론 이 안에 CentOS에서 systemd를 이용하기 위한 dockerfile도 존재한다. ..
리눅스(Linux)와 유닉스(Unix)의 차이 범주Linux(리눅스)Unix(유닉스) 설명리눅스는 오픈소스이며 무료 OS이다.유닉스는 대학, 회사, 큰 기업에서 주로 선호하는 OS이다.비용리눅스는 무료이다. 따라서 잡지나 책을 동해서도 배포될 수 있다.유료버전의 리눅스도 있지만 대부분 윈도우보다는 저렴하다.유닉스는 판매 회사별로 가격이 다르다.사용자모든사람. 집에서 사용하는 사람에서부터 개발자 그리고 컴퓨터 열혈팬 같은 사람들 모두.유닉스 운영체제는 주로 메인프레임, 서버 그리고 모든사람을 위해 설계된 OSX를 제외한 워크스테이션을 위해 개발되었다. 유닉스 환경과 클라이언트-서버 프로그램 모델은 인터넷의 개발의 필수 요소이다.제조사리눅스 커널은 커뮤니티에 의해 개발되었다. 리누스 토발즈(Linus Ben..
과연 도커(Docker) 컨테이너를 통해 데이터베이스를 운영하는 게 좋은 방법일까? 개인적으로 만들어보고 싶은 웹 어플리케이션이 있어서 도커를 활용해보려고 했는데 데이터베이스와 관련한 부분에서 뭔가 삐걱대는 느낌이었다. 그도 당연할 것이 도커철학과 데이터베이스의 개념 자체가 정면충돌하기 때문이다. 도커는 이미지를 컨테이너화해서 없애고 만들고 하는 식으로 깔끔하면서도 배포환경과 개발환경을 동일하게 만들기 쉽게 해놨다. 만약 개발 및 배포환경으로 쓸 이미지를 구성하는 도중에 어떠한 설정이나 과정이 꼬여 무엇이 잘못된지도 모를 정도로 컨테이너가 망가져버린다면 그냥 컨테이너를 지우고, 새로이 이미지에서 컨테이너를 생성하면 된다. 그리고 완성하면 push명령어를 통해 도커허브에 올려두거나 아예 코드 자체를 볼륨에..
이런 말로도 쓸 수 있겠다. 데이터베이스에 들어가는 값은 최대한 변하지 않는 값이어야 한다. 예를 들어서 어떤 플랫폼에서 나이를 다룬다고 하자. 그리고 사람들의 나이를 각 회원들의 열에 저장하였다. 생각만으로 머리가 아파지지 않는가? 나이를 세는 기준은 무엇인가. 연도? 생일? 만약에 전자라면 해가 지날 때마다 모든 회원들의 나이데이터를 불러와서 1을 더한 다음에 다시 저장하는 과정을 거쳐야 한다. 만약에 후자라면 매일매일 날짜를 체크하여 회원의 생일이 지났는지를 검사하여 생일이 지났으면 해당 회원의 나이를 불러와서 1을 더한 다음에 다시 저장해야한다. 이것도 아주 단적인 예만 말한 것이다. 만약에 회원이 외국인이라면? 혹은 나이를 세는 기준이 바뀐다면? 그도 그럴 것이 이 '나이'라는 것이 현대에 와서..
유명한 프로그래밍 격언이다. 이미 만들어진 걸 또 만들려고 고생하지 말라는 말이다. 좀 더 구체적으로 파고들자면 예를 들어 C언어가 있는데 C언어가 불신스럽다고 C언어를 다시 만들려 하고, 답변형 게시판 알고리즘이나 로직이 이미 인터넷에 그득그득한데 마음에 안든다고 스스로 알고리즘을 아예 새로 만든다던가 하는 것들 말이다. 이 대상은 언어에서부터 서드파티 라이브러리, 그리고 어떤 특정한 문제해결을 위해 발명된 알고리즘(수많은 정렬 알고리즘, 탐색 알고리즘 등)에까지 아주아주 폭넓다. 부단 IT계열뿐만 아니라 일상생활에도 적용되는 이야기이다. 젓가락이 태초의 모습 그대로 완성된 것이라 그 용도에 따른 변형은 조금조금씩 있지만 구조 자체가 변하지 않는 것처럼 말이다. 이처럼 성능개선이나 특성에 따른 변경은 ..