소식을 전합니다.

  • 라라벨에서 배열 유효성 검증하다가 타임아웃이 났다

    라라벨에서 배열 유효성 검증하다가 타임아웃이 났다

    Maximum execution time of 60 seconds exceeded 센트리 알림이 울려 내용을 살펴보니 요청 처리에 60초가 초과되어 에러가 났습니다. 엔드포인트를 보니 매우 단순한 기능인데 왜 60초 씩이나 걸렸을까 의문이 들었어요. 에러가 발생한 위치를 살펴보았습니다. Validator 에서 걸렸다는 점에 착안해 검색해보니 큰 배열을 유효성 검증할 때 시간이 오래 걸린다는 이야기가 있더군요. (관련 링크: https://github.com/laravel/ideas/issues/2212) 실험을 해보니 느린 […]

  • PHP 화살표 함수(arrow function) 이용시 주의사항

    한 줄 짜리 익명함수는 화살표 함수로 대체하면 코드가 깨끗해지는 느낌이라 요즘 자주 사용하고 있습니다. 특히 클로저를 쓰지 않고도 외부 변수를 사용할 수 있는게 편리하더라고요. 하지만 컬렉션의 아이템을 하나씩 처리하면서 외부 변수를 조작하려고 아래와 같은 스타일의 코드를 작성했더니 $someCollection가 변하지 않더군요. 알고보니 원래부터 안되는 것이었습니다. (매뉴얼 참고) Example #4 Values from the outer scope cannot be […]

  • 라라벨, Artisan::output()이 빈 문자열을 반환한다면

    아티즌 커맨드를 테스트하기 위해 Artisan::output() 을 호출하여 출력 내용을 확인하는 방식을 사용했었는데요. 라라벨 버전을 올리니 갑자기 테스트가 깨졌습니다. 디버깅을 해보니 Artisan::output()이 빈 문자열을 반환하더군요. 원인은 라라벨 5.7부터 콘솔 테스트 기능이 강화되면서 기본으로 콘솔 출력을 모킹하도록 변경되었기 때문이었습니다. 기존 처럼 콘솔 출력을 확인하고 싶으면 아티즌 커맨드를 호출하기 전에 $this->withoutMockingConsoleOutput() 를 호출해주면 됩니다. 참고: Artisan::output() returns empty […]

  • 블로그 백업 설정

    일전에 이 블로그를 한 번 날려먹은 적이 있다. 다행히 DB는 남아있어서 새로운 서버에 워드프레스를 설치하고 글을 복구하긴 했는데, 이미지 파일이 모두 유실되어 반쪽짜리 글이 되어버렸다. 하 너무 아까운거… 미루고 미루다가 오늘 드디어 블로그를 주기적으로 백업하는 설정을 했다. 방법은 간단했다. UpdraftPlus 플러그인을 설치하고 어느 주기로 어디로 백업할 건지만 정해주면 끝. 블로그가 설치된 서버에 백업하는 건 의미가 […]

  • 이더리움 심고 이자 농사 시작

    어차피 장기 보유할 이더리움. 디파이를 이용해서 17.5% 이자를 받는다.

  • unknown error: session deleted because of page crash

    라즈베리파이에서 잘 돌던 크롤러가 갑자기 동작하지 않아서 로그를 보니 unknown error: session deleted because of page crash 가 남아 있었다. 삽질을 좀 했는데 결론적으로 문제의 원인은 공유 메모리 공간(/dev/shm)이 부족한 것이었다. (참고: 크롤링 Selenium Chrome 에러) ps로 프로세스를 목록을 보니 chromedriver가 엄청 많이 떠 있었다. pkill chrome 으로 프로세스를 모두 죽이니 정상 동작했다. chromedriver가 많이 […]

  • 라라벨 인증 시험 통과했어요

    지난 주말에 시험을 쳤는데 결과가 빨리 나왔네요. 아리송한 문제들이 많아서 재수하겠다 싶었는데, 한 번에 통과해서 다행이에요. ㅎㅎ + 후기를 보고 싶단 코멘트가 있어서 추가로 남겨봅니다. 결제 결제는 작년 11월 말에 했어요. 2020년 내에 응시하자는 마음으로 미리 결제했어요. 결제하고 바로 보는건 아니고 3달 이내에 응시하면 되거든요. 돈을 내 놓으면 돈 아까워서라도 봐야하니까 ㅎㅎ 비용은 163.9 유로였습니다. […]

  • 라라벨 라우트 그룹 사용시 유의사항

    라라벨 코리아 페이스북 그룹에 질문이 하나 올라왔습니다. https://www.facebook.com/groups/laravelkorea/permalink/1862353923927678 처음부터 제대로 배우는 라라벨의 예제 코드 처럼 라우트 그룹을 작성하면 에러가 나는데, 책에 나온 코드 처럼 사용하는 방법은 없느냐 하는 것 입니다. 질문해주신 분이 언급한 예제는 79 페이지의 예제 3-10 이며 내용은 아래와 같습니다. 위의 코드를 실행하면 질문자분께서 말씀하신 것 처럼 에러가 납니다. “Illuminate\Routing\Router::group(): Argument #1 ($attributes) […]

  • 처음부터 제대로 배우는 라라벨을 번역 출간했습니다

    2020년 12월 초에 출간됐는데 블로그에 이제껏 출간 소식 조차 공유를 안했었네요. ㄷㄷ 이제 얼추 한 달이 다 되어 가는데, 걱정했던 것보다는 좋은 평이 남고 있어서 다행스러워요. 혼자 뚝딱뚝딱 전자책을 만들 때는 몰랐는데, 출판사와 일해보니 책을 책 답게 만들기 위해 정말 많은 분들의 노력이 들어가더군요. 초고는 원료 수준이랄까요? 원래는 출간하고나서 스터디파이를 통해 스터디를 운영할까 했는데, 이제 […]

  • 팩트풀니스

    팩트풀니스

    사내 독서 동아리 활동으로 읽은 첫 번째 책이다. 이 책에 왜 흥미가 생겼었는지는 기억이 잘 나지 않는다. SNS에서 지인이 추천을 했었고 오랜만에 인문 서적을 읽고 싶었다. 세상 사는데 도움이 1도 안되는 그런 책을 읽고 싶었는데, 결과는 그 반대였다. 위로를 받기도 하고 세상을 대하는 더 나은 방법을 얻기도 했다. 저자는 우리가 다양한 이유로 세상을 오해하고 있다고 […]

추천 예약이 있으신가요?