728x90
반응형

전체 글 340

[Docker Server] 도커 기반의 PHP 웹 서비스 구성

예전에는 PHP를 통해서 웹 서비스를 구성하는 것을 APM이라고 불렀다. Apache + PHP + Mysql의 앞 글자를 따서 이렇게 이름을 불렀던 것이다. 아파치는 굉장히 훌륭한 프로그램이고 기능도 다양하기 때문에 막강한 프로그램이다. 하지만 이렇게 기능이 많다는 얘기는 무겁고 설정이 어렵다는 의미가 되기도 한다. 실제로 아파치의 모든 설정을 다 알기는 쉽지 않다. 아파치는 다른 프로그램과 연동도 다양하기 진행할 수 있고 많은 역할을 할 수 있기 때문에 이에 대한 설정들은 꽤 복잡하고 어렵다. 그래서 그 대항마로 만들어진 것이 nginx라고 할 수 있을 것이다. nginx는 꽤 간단하고 설정도 간편하게 할 수 있지만 그렇다고 성능이 떨어지는 것도 아니였다. 그래서 10년여전부터 php 서비스를 구성할..

Programming/Technic 2023.02.03

[fastapi] Pydantic Model을 Request Form 데이터로 받기

회사에서 Fastapi를 통해서 개발을 하고 있는데 Fastapi의 장점 중에 하나가 Swagger와 Redoc으로 자동으로 문서를 만들어준다는 것이다. Fastapi를 사용하면서 백엔드 개발자의 입장에서 이점이 가장 마음에 든다. 코드만 잘 작성해두면 자동으로 문서를 만들어준다니!! Request parameter와 Response Model을 잘 정리해두면 이쁜 문서가 짠 하고 만들어진다. 근데 개발을 하다가 Request parameter에 Schema로 이쁘게 만들 수 있는데 이게 json형태로 자동으로 지정된다. Schema를 잘 작성하면 Frontend에서 거기 맞게 데이터를 잘 가공해서 보내면 문제가 없는데 파일 업로드를 같이 하면서 데이터를 받으려니 Form으로 받아야 하는데 그럼 정성스럽..

Programming/Python 2023.01.31

[Codeigniter 3.x] 쿼리 로그 남기기 #2

앞에서 남긴 로그를 보면 포멧팅 되지 않은 상태로 출력된다. 이렇게 출력된 로그는 짧은 쿼리는 상관없겠지만 복잡한 쿼리를 확인하기에는 다소 무리가 있다. 비교적 간단한 쿼리이지만 쿼리를 작성할 때 로그를 출력할 것을 생각하고 작성하지 않는다면 복잡한 쿼리는 보기 어려울 것이다. 위의 이미지의 쿼리는 쿼리를 실제로 작성한 쿼리이기 때문에 그나마 들여쓰기라도 했지만 ORM을 통해서 생성되는 쿼리는 더 복잡하게 출력된다. 그래서 쿼리 로그를 남길 때 일정 부분 포멧팅해줄 필요가 있다. 물론 필요한 부분의 쿼리를 복사해서 인터넷에서 포멧팅해주는 사이트에서 해줄 수 있을 것이다. 하지만 쿼리를 한 번에 알아보고 싶다는 필요가 있다. 포멧팅을 하면 로그의 용량은 증가할 것이지만 용량을 포기하고 로그를 한 번에 보고..

Programming/PHP 2023.01.29

[Codeigniter 3.x] 쿼리 로그 남기기 #1

개발을 하다가보면 로그의 중요성은 아무리 말로 설명해도 부족하기만 하다. 몸소 체험하고 왜 로그가 중요한지 절실하기 느껴봐야 어떤 로그를 어떻게 남겨야 하는지 느낄 수 있게 된다. 웹 개발에서 있어서 Query에 관련된 로그는 필수적이라고 볼 수 있을 것이다. 어떤 쿼리를 던졌고 해당 쿼리를 처리하는데 걸린 시간이 얼마인지 알 수 있다면 사이트 혹은 프로그램이 느려지는 구간을 찾는데 많은 도움을 받을 수 있게 된다. 해당 글에서는 Codeigniter 3.x 버전에서 쿼리를 남기는 코드를 남겨보고자 한다. 기본적으로 Codeigniter 3.x 버전의 디렉토리 구조를 파악하고 있다는 전제로 하고 설명을 시작한다. 우선 /application/config/hooks.php 파일을 열어서 다음에 코드를 입력..

Programming/PHP 2023.01.27

[Docker Server]Ubuntu Docker 설치

본 글의 리스트에서는 Docker를 이용해서 PHP 웹 서버를 구축하는 것을 목표로 한다. 해당 글에서 사용하는 릴리즈 버전은 Ubuntu 22.04로 한다. 우선 우리는 서버에 도커를 올리기 위해서 Ubuntu Server에 Docker를 설치하는 것부터 시작할 것이다. 우분투를 설치한 이후에 다음의 명령어를 통해서 설치된 패키지들을 최신화한다. sudo apt update sudo apt upgrade 위의 명령어는 도커를 설치하는 것과는 별개의 명령어로 단순히 패키지를 업그레이드 하기 위한 명령어이다. 도커 정식 홈페이지에서는 우분투에 도커를 설치하는 방법을 다음에 4가지로 소개하고 있다. 리눅스용 Docker Desktop을 통한 설치 우분투 패키지 매니저 apt를 이용한 설치 dpkg를 이용한 ..

Programming/Technic 2023.01.24

외교를 전혀 기대할 수 없는 대통령

어제 UAE를 방문했다는 윤석열 대통령이 한 말 때문에 떠들썩하다. 대통령이라는 사람이 다른 나라에 가서 왜 그 나라의 주적이 누구인지 떠들어대는지 알 수가 없다. 엄밀히 말하면 주권침해일 수 있다. 또 내 기억이 정확하다면 우리 군대에서도 우리의 주적은 북한이라고 하지 않는다. 북한 정부와 그 수괴라고 하지. 북한 전체를 주적으로 삼지는 않는다. 이 것은 북한 주민과 북한 정권을 분리해서 생각하자는 취지로 생각해볼 수 있을 것이다. 서울에서 가장 번화하고 화려한 길은 바로 테헤란로라고 할 수 있을 것이다. 테헤란로는 서울과 테헤란이 자매결연을 맺으며 이를 기념하기 위해서 만들어진 길이다. 서울에 테헤란로가 있고 테헤란에는 서울로가 있다.(https://terms.naver.com/entry.naver?..

겨울철에 냉장고를 가동해야할까?

요새 꽂혀있는 생각 중에 하나가 밖에 기온이 영하로 내려가는 이런 시절에 굳이 대형 냉장고를 비싼 전기료를 내가면서 가동해야 하는가 이다. 센서를 통해서 외부의 공기를 유입할 수 있는 시스템을 만들고 외부에서 유입되는 공기의 온도가 특정 온도가 되면 냉장고로 유입되도록 하면 냉장/냉동을 하기 위한 전기료를 아낄 수 있지 않을까? 물론 날씨가 더운 여름에는 그다지 효과가 있지는 않겠지만 요즘같은 겨울철에 난방을 하면서 난방으로 인해 올라간 기온 때문에 다시 냉장/냉동을 하니 이중으로 전기료가 비싸지는게 아닌가 싶다. 적정 온도로 내려오면 이런 공기를 유입시킨다면서 실내 온도로 인해서 올라간 온도의 공기보다 외부에서 유입된 공기가 온도가 낮다면 온도를 낮춰야 하는 시작점이 더 낮을테니 이런 면에서는 좀 더 ..

대형마트에 대한 생각

난 개인적으로 상상을 많이 하는 편이다. TV를 보면서 또는 영화를 보면서 또는 게임을 하면서 등의 상황에서 불현듯 떠오르는 생각들이 뭉실뭉실 연결되다가 사라지곤 하는 경험을 많이 한다. 이런 생각들이 그냥 사라지는 것이 아쉬워서 이제부터는 그냥 글이라도 몇 글자 적어서 기록을 남겨보고자 한다. 얼마 전 이직을 하면서 대형마트 개발 관련 업무를 진행하는 조직으로 가게 되었고 많은 교육 동영상을 보면서 회사가 하는 일에 대해서 공부하였다. 그러던 중 차이나는 클라스 프로그램 지난 편을 보다가 농업에 대한 회차를 보게 되었다. 이를 보면서 아 이러면 좋지 않을까 떠오르는 생각이 나서 이 생각들을 정리하면서 교육 동영상으로 보면서 생각난 부분까지 같이 몇 가지 정리해보고자 한다. 종묘(Seed) 해당 회차는 ..

육아휴직 D+184, 복직 D-1 - 뒤돌아보기(2018.1.23)

민이 생후 1590일, 예니 생후 350일.엄청나게 길게 느껴졌던 6개월의 시간이 끝나고 내일부터 다시 출근해야한다.무덥던 여름에 시작된 육아휴직은 이번 겨울 사상 가장 추운 날 끝나서 복직하게 된다.많은 시간 동안 아이들과 함께 할 수 있어서 감사했던 시간이고 내 삶에서 가장 소중한 것이 무엇인지 되돌아보게 되는 계기가 되었다.항상 엄마 껌딱지였던 민이에게도 아빠가 들어갈 수 있는 자리가 생길 수 있었던 시간이었고 더디게 크는 예니도 눈의 띄게 자란 시간이다.다시 시작하라고 해도 즐거운 마음으로 시작할 수 있을거 같은 시간이다.많은 추억을 쌓았고 많은 사진과 동영상을 찍어 아이들과 공유할 수 있는 추억이 생겼다.방송도 여러번 나와서 아이들에게 많은 추억이 되었을 것이다.아이들에게도 소중하고 특별한 시간..

육아휴직 D+183, 복직 D-2 - 일상(2018.1.22)

민이 생후 1589일, 예니 생후 349일.복직을 준비하며 수원으로 이사 후 열흘 정도의 시간이 흘렀다.우리는 빠르게 일상에 적응해가며 두 집의 합가한 생활에 익숙해져가고 있다.아침이면 아내와 장인어른의 출근 준비로 하루를 시작하여 민이 등원까지 마무리하면 바쁜 일정은 끝난다.예니가 일어나면 예니 아침 이유식을 먹이고 조금 놀아주다가 집안일을 하고나면 어느새 점심 시간이 다가온다.간단하게 점심을 먹고 예니 분유를 먹이고 나면 다시 민이 하원 시간이 다가온다.이사해서 적응하는 동안은 종일반을 안해서 하원시간이 비교적 이른 시간이다.민이가 집에 와서 예니랑 같이 놀기도 하고 혼자 놀기도 하고 텔레비전을 보기도 하면서 시간을 보내다보면 어느새 저녁시간이 된다.저녁 먹을 시간이 되면 아내가 퇴근하고 집에 오고 ..

728x90
반응형