serverless 배포할 AWS S3 버킷 지정

TL;DR serverless 배포할 S3 버킷 생성 Lambda 와 같은 리전으로 버킷명은 S3 전 영역에서 충돌 없는 유니크한 이름으로 설정 3. Set permissions 단계에서 Public access settings for this bucket 의 모든 체크상...

AWS lambda serverless

serverless 로컬 디버깅 방법

1. handler.js callback() 필드 중 body 의 값 Type은 String 이어야만 함. 만약 다른 형식을 지정하면 postman 같은 툴에서 502 Internal Server Error 를 만나게 됨. module.export.run = (event, context, callb...

NodeJS aws lambda Debug debugging serverless webstorm

Laravel Collection 메소드 중 concat과 push의 차이

push는 하나의 아이템을 컬렉션의 마지막에 추가하는 거고, concat은 push 메소드를 이용해서 여러 아이템을 한 번에 추가하는 거임.

라라벨 야매 개발 collection concat Laravel PHP Push 컬렉션 이상한모임

Upsource IntelliJ에 연동하는 방법

우산, Upsource는 Jetbrains 에서 개발한 Code Review Tool 이다.Jetbrains 계일인 IntelliJ 에 호환도 잘돼서 Code Review 할때 굉장히 편하다.1. [Prefereneces] - Plugins 로 들어간다음 Upsource 로 검색 해서...

Helloworld! codereview IntelliJ jetbrain Review tool upsoruce 리뷰 업소스 인텔리제이 코드리뷰

PHP로 원격 호스트에 CLI 커맨드 실행법

원격 호스트에 명령을 실행하기 위해서는 우선 SSH 키를 통한 연결이 필요합니다. SSH 키를 연결하는 방법은 오픈튜토리얼스의 강좌 참고하시면 됩니다. 우선 SSH 라이브러리를 좀 더 편리하기 쓰기 위해 랩퍼를 하...

비분류 PHP SSH

Laravel Collection 메소드 중 concat과 push의 차이

push는 하나의 아이템을 컬렉션의 마지막에 추가하는 거고, concat은 push 메소드를 이용해서 여러 아이템을 한 번에 추가하는 거임.

라라벨 야매 개발 collection concat Laravel PHP Push 컬렉션 이상한모임

PHP로 원격 호스트에 CLI 커맨드 실행법

원격 호스트에 명령을 실행하기 위해서는 우선 SSH 키를 통한 연결이 필요합니다. SSH 키를 연결하는 방법은 오픈튜토리얼스의 강좌 참고하시면 됩니다. 우선 SSH 라이브러리를 좀 더 편리하기 쓰기 위해 랩퍼를 하...

비분류 PHP SSH

[번역] 아무도 말하지 않는 PHP의 좋은 점

원문은 Good thing in PHP nobody talks about이다. 번역에 대해 저자 허락을 구했다. (gnoownow10님이 번역을 감수해 줬다.) [ ] 안의 말은 이해에 도움이 되라고 내가 넣은 것이다. PHP에서 내가 좋아하는 점...

PHP

macOS에서 MailHog로 PHP mail() SMTP 개발환경 설정

설치 방법macOS Host 에 설정mac 터미널에서 mailhog 를 brew 로 설치:brew install mailhog설치를 완료하였다면 mac 시작시 실행되도록 서비스 시작 명령:brew services start mailhogmailhog 가 제대로 실행되었는...

PHP Mac mailhog sendmail SMTP 개발환경

Lavavel Valet 개별 사용자 환경설정 디렉토리

Web server~/.config/valetvalet 의 github 의 issue 문서들에는~/.valet/Caddy/ 이라고 알려주는데 낚이지 마시길.주요 디렉토리Log웹페이지에 뜨는 오류가 웹서버 오류 500 과 같으면 이 디렉토리 내의 log 파일...

PHP Laravel Valet

Laravel Collection 메소드 중 concat과 push의 차이

push는 하나의 아이템을 컬렉션의 마지막에 추가하는 거고, concat은 push 메소드를 이용해서 여러 아이템을 한 번에 추가하는 거임.

라라벨 야매 개발 collection concat Laravel PHP Push 컬렉션 이상한모임

라라벨 5.8.9 – 이벤트 발견 기능 추가

5.8.9 부터 이벤트 발견 기능이 추가되어 이벤트와 리스너의 관계를 직접 등록하는 수고를 덜게 됐습니다.

라라벨 야매 개발 5.8.9 event Laravel 이벤트 이상한모임

Lavavel Valet 개별 사용자 환경설정 디렉토리

Web server~/.config/valetvalet 의 github 의 issue 문서들에는~/.valet/Caddy/ 이라고 알려주는데 낚이지 마시길.주요 디렉토리Log웹페이지에 뜨는 오류가 웹서버 오류 500 과 같으면 이 디렉토리 내의 log 파일...

PHP Laravel Valet

Laravel, 로그 기록 레벨 설정하기

개발시엔 debug 레벨로 메시지를 봐야겠지만, 제품으로 내보냈을 때는 warning 레벨 정도로 로그를 기록하는 편이 좋을 것이다. var_dump() 안 쓰고 Log::debug() 쓰는 큰 이유중 하나 아닌가. 라라벨은 PSR-31 표...

PHP Laravel

라라벨의 의존성 주입 컨테이너

Laravel 의 제어의 역전(Inversion of Control) / 의존성 주입 (Dependency Injection) 컨테이너는 매우 강력한 기능입니다. 안타깝게도, 라라벨의 공식 문서는 이 기능의 모든 면을 설명하고 있지 않습니다. 그런...

PHP Laravel

serverless 로컬 디버깅 방법

1. handler.js callback() 필드 중 body 의 값 Type은 String 이어야만 함. 만약 다른 형식을 지정하면 postman 같은 툴에서 502 Internal Server Error 를 만나게 됨. module.export.run = (event, context, callb...

NodeJS aws lambda Debug debugging serverless webstorm

[JavaScript] 16진수와 10진수, 8진수, 2진수 변환하기 - toString, parseInt

정수 9(10진수)를 2진수로 변환하면 1001 이다. 이렇게 10진수를 2진수로 변환할 땐 다음과 같다. let dec = 9; let hex = dec.toString(2); 이처럼 10진수를 2진수로 변환할 땐 toString 함수를 사용하면 된다. 10...

Javascript & jQuery 10진수 16진수 2진수 8진수 javascript js PARSEINT tostring 변환

[JavaScript] 배열 요수 중 최대값, 최소값 구하기 - reduce 함수 활용

다음과 같이 배열 안에 여러 숫자 요소가 있을 때, const array = [1, 6, , 7, 16, 22, 32, 34]; 최대값과 최소값을 구할 때 reduce 함수를 사용하면 쉽다. // 최대값 구하기 var max = array.reduce((previous, c...

Javascript & jQuery array javascript js MAX MIN PURE reduce 배열 최대값 최소값

EMQ (Mqtt broker)에 웹소켓 접속 실시간 차트 연습

관련글: Mqtt broker - Kafka - ELK 스택 셋팅 WebSocket Chart scratch

js Chart graph WebSocket

[Vue.js] vue-cli

vue-cli 는 커맨드라인 인터페이스 기반의 스캐폴딩 도구.  scaffolding: 원래는 '공사장 등에서 사용하는 임시 가설물'이라는 뜻. 개발할 때 처음부터 개발하는 것이 아니라 기본적인 인터페이스와 틀을 제공. 개발...

Vue.js browserify browserify-simple CLI PWA template vue vue list vue-cli vueify vuejs webpack webpack-simple

serverless 배포할 AWS S3 버킷 지정

TL;DR serverless 배포할 S3 버킷 생성 Lambda 와 같은 리전으로 버킷명은 S3 전 영역에서 충돌 없는 유니크한 이름으로 설정 3. Set permissions 단계에서 Public access settings for this bucket 의 모든 체크상...

AWS lambda serverless

[IoT] Mqtt broker - Kafka - ELK 스택 셋팅

구조도구성품IoT devices: 라즈베리파이 등 MQTT ClientMQTT Broker: EMQ (https://www.emqx.io)Kafka producer: Kafka Junction (https://github.com/brycemcd/MQTT-to-Kafka)Kafka consumer: Logstash + kafka inp...

IoT Elasticsearch emq Kafka Kibana

Running PHP Service on AWS ElasticBeanstalk

이 슬라이드는 Modern PHP User Group 2019년 3월 정기 모임 발표 자료입니다. open_in_browser 브라우저에서 슬라이드 열기

AWS DevOps work-n-play

macOS에서 MailHog로 PHP mail() SMTP 개발환경 설정

설치 방법macOS Host 에 설정mac 터미널에서 mailhog 를 brew 로 설치:brew install mailhog설치를 완료하였다면 mac 시작시 실행되도록 서비스 시작 명령:brew services start mailhogmailhog 가 제대로 실행되었는...

PHP Mac mailhog sendmail SMTP 개발환경

AWS EC2/EBS 상의 MariaDB master/slave Replication

Master server$ mysql -uroot -pmysql> GRANT REPLICATION SLAVE ON *.* to 'repl'@'172.%' IDENTIFIED BY 'repl-password-here';mysql> flush tables with read lock;mysql> reset master;# Make note of the file...

MySql AWS EC2 replication 복제

Laravel Collection 메소드 중 concat과 push의 차이

push는 하나의 아이템을 컬렉션의 마지막에 추가하는 거고, concat은 push 메소드를 이용해서 여러 아이템을 한 번에 추가하는 거임.

라라벨 야매 개발 collection concat Laravel PHP Push 컬렉션 이상한모임

macOS에서 MailHog로 PHP mail() SMTP 개발환경 설정

설치 방법macOS Host 에 설정mac 터미널에서 mailhog 를 brew 로 설치:brew install mailhog설치를 완료하였다면 mac 시작시 실행되도록 서비스 시작 명령:brew services start mailhogmailhog 가 제대로 실행되었는...

PHP Mac mailhog sendmail SMTP 개발환경

Lavavel Valet 개별 사용자 환경설정 디렉토리

Web server~/.config/valetvalet 의 github 의 issue 문서들에는~/.valet/Caddy/ 이라고 알려주는데 낚이지 마시길.주요 디렉토리Log웹페이지에 뜨는 오류가 웹서버 오류 500 과 같으면 이 디렉토리 내의 log 파일...

PHP Laravel Valet

라라벨 제작자가 추천한 라라벨 코드 깔끔하게 짜는 방법 초간단 요약

얼마전에 테일러 오트웰이 더 깔끔한 코드를 짜고 싶으면 참고하라며 링크 두개를 던져줬습니다. 두 자료를 초간단 요약해봤습니다. Methods Are Affordances, Not Abilities 첫번째 자료는 Adam Wathan의 블로그 글...

라라벨 야매 개발 PHP 야매개발 이상한모임

PHP로 원격 호스트에 CLI 커맨드 실행법

원격 호스트에 명령을 실행하기 위해서는 우선 SSH 키를 통한 연결이 필요합니다. SSH 키를 연결하는 방법은 오픈튜토리얼스의 강좌 참고하시면 됩니다. 우선 SSH 라이브러리를 좀 더 편리하기 쓰기 위해 랩퍼를 하...

비분류 PHP SSH

라라벨 5.8.9 – 이벤트 발견 기능 추가

5.8.9 부터 이벤트 발견 기능이 추가되어 이벤트와 리스너의 관계를 직접 등록하는 수고를 덜게 됐습니다.

라라벨 야매 개발 5.8.9 event Laravel 이벤트 이상한모임

Laravel Collection 메소드 중 concat과 push의 차이

push는 하나의 아이템을 컬렉션의 마지막에 추가하는 거고, concat은 push 메소드를 이용해서 여러 아이템을 한 번에 추가하는 거임.

라라벨 야매 개발 collection concat Laravel PHP Push 컬렉션 이상한모임

Lavavel Valet 개별 사용자 환경설정 디렉토리

Web server~/.config/valetvalet 의 github 의 issue 문서들에는~/.valet/Caddy/ 이라고 알려주는데 낚이지 마시길.주요 디렉토리Log웹페이지에 뜨는 오류가 웹서버 오류 500 과 같으면 이 디렉토리 내의 log 파일...

PHP Laravel Valet

라라벨의 엘로퀀트 ORM에서 값 객체 사용하기 2부

지난 포스트에 이어서, 이번 포스트에서 두번째 세번째 방법을 설명합니다. 변경자와 접근자(Attribute Mutator & Accessor)를 이용하는 방법 LOB(Large Object)를 이용하는 방법 참조(외래키)를 이용하는...

Laravel OOP DDD work-n-play

Laravel, 로그 기록 레벨 설정하기

개발시엔 debug 레벨로 메시지를 봐야겠지만, 제품으로 내보냈을 때는 warning 레벨 정도로 로그를 기록하는 편이 좋을 것이다. var_dump() 안 쓰고 Log::debug() 쓰는 큰 이유중 하나 아닌가. 라라벨은 PSR-31 표...

PHP Laravel

npm install 시 .npm/_cacache/tmp/git-clone permission denied 문제 발생

아래 명령들을 각각 시도해보았다.$ chown -R $(whoami) ~/.npm$ npm install --cache /tmp/empty-cache$ npm i --unsafe-perm$ npm i --unsafe-perm --cache /tmp/empty-cache위 명령들로도 해결이 안되는 경우가...

NodeJS NPM yarn

yarn global 설정하기

요즘 Node.js 쪽 패키지 관리자는 Yarn을 사용하고 있습니다. 메모리나 속도면에서 npm보다 우수하기 떄문입니다. 전에 npm을 사용할 때는 global 설치가 크게 어렵지 않았습니다. 기본적으로 node를 설치할 때 같...

yarn node

코드이그나이터 - 데이터베이스 쿼리의 값을 이스케이프 시키기

☞ 이스케이프 문자와 인젝션 우리가 알고 있는 이스케이프 문자는 \(백슬래시) 로 시작되는 문자이며, 이스케이프는 PHP 나 기타 프로그래밍시 문자열에 대한 제어를 할 수 있는데 이러한 이스케이프 문자열중 자주...

코드이그나이터 CI Codeiginter Database db dreamload escape 데이터베이스 이스케이프

코드이그나이터 - Encryption (암호화) 클래스

☞ 암호화 클래스란? 암호화 클래스란, PHP 에서 처리되는 데이터를 암호화시켜주는 클래스이다. PHP 에서 제공되는 MD5 또는 SHA1 처럼 생각할 수 있으나, CI에서 암호화클래스는 이런 암호화 뿐만 아니라 이보다 더...

코드이그나이터 CI Codeiginter dreamload Encryption 암호화

코드이그나이터 - Email 클래스의 이해와 환경설정

☞ Email 클래스란? CI 에서 Email 클래스란 말그대로 이메일을 보낼 수 있도록 이메일에 대한 함수들이 담긴 클래스 이다. 여기서 중요한점은 CI 에서는 정말 간단한 설정과 코딩으로 보낼 수 있다는 점이다. 나같은...

코드이그나이터 CI CodeIgniter dreamload email 환경설정

Upsource IntelliJ에 연동하는 방법

우산, Upsource는 Jetbrains 에서 개발한 Code Review Tool 이다.Jetbrains 계일인 IntelliJ 에 호환도 잘돼서 Code Review 할때 굉장히 편하다.1. [Prefereneces] - Plugins 로 들어간다음 Upsource 로 검색 해서...

Helloworld! codereview IntelliJ jetbrain Review tool upsoruce 리뷰 업소스 인텔리제이 코드리뷰

IntelliJ 에서 저장할 때마다 eslint 적용하는 방법

1. 매크로 설정을 IntelliJ 에 적용한다.복사할 경로 : ~/Library/Preferences/IntelliJIdea2018.2(사용중인 IntelliJ 버전에 따라 다름)/options/ 파일명 : macros.xml 2. 완료후...

Helloworld! Auto Save eslint IntelliJ lint fix lunt macro Save 매크로

[ Jetbrains ] WebStorm / PHPStorm / Intellij 버벅거릴때 성능(속도) 향상 시키기

최근 사무PC를 변경하여 PhpStorm을 새로 설치하였는데, Docker 컨테이너를 띄우니 버벅거리는 현상이 발생하였습니다.?? PC 사양이 안좋나? 하고 생각하던 찰나 Jetbrains IDE가 JVM에서 작동하다보니 JVM 관련 설...

개발이야기 IntelliJ PhpStorm webstorm

PHPStorm Terminal 을 git bash 로 교체하기

Windows 에서 PHPStorm 의 터미널은 당연한 얘기겠지만, 명령프롬프트가 실행됩니다. 이를 git 설치시 함께 배포되는 bash로 변경해봅니다. 설정(Ctrl + Alt + S) 에서 Tools > Terminal 로 들어갑니다. 그리고 아래...

언어 - PHP bash Git PhpStorm terminal

serverless 로컬 디버깅 방법

1. handler.js callback() 필드 중 body 의 값 Type은 String 이어야만 함. 만약 다른 형식을 지정하면 postman 같은 툴에서 502 Internal Server Error 를 만나게 됨. module.export.run = (event, context, callb...

NodeJS aws lambda Debug debugging serverless webstorm

EMQ (Mqtt broker)에 웹소켓 접속 실시간 차트 연습

관련글: Mqtt broker - Kafka - ELK 스택 셋팅 WebSocket Chart scratch

js Chart graph WebSocket

[JavaScript] 16진수와 10진수, 8진수, 2진수 변환하기 - toString, parseInt

정수 9(10진수)를 2진수로 변환하면 1001 이다. 이렇게 10진수를 2진수로 변환할 땐 다음과 같다. let dec = 9; let hex = dec.toString(2); 이처럼 10진수를 2진수로 변환할 땐 toString 함수를 사용하면 된다. 10...

Javascript & jQuery 10진수 16진수 2진수 8진수 javascript js PARSEINT tostring 변환

[JavaScript] 배열 요수 중 최대값, 최소값 구하기 - reduce 함수 활용

다음과 같이 배열 안에 여러 숫자 요소가 있을 때, const array = [1, 6, , 7, 16, 22, 32, 34]; 최대값과 최소값을 구할 때 reduce 함수를 사용하면 쉽다. // 최대값 구하기 var max = array.reduce((previous, c...

Javascript & jQuery array javascript js MAX MIN PURE reduce 배열 최대값 최소값

[Vue.js] Vue 인스턴스 라이프 사이클

Vue 인스턴스는 객체로 생성되고, 데이터에 대한 watch 기능을 설정하는 등 작업을 위해 초기화를 수행한다. 그리고 이 과정에서 다양한 라이프 사이클 훅 메서드를 적용할 수 있다. 라이프 사이클 훅 설명   befor...

Vue.js beforeCreate beforeDestory beforeMount beforeUpdate create destory LifeCycle Mounted Update vue vuejs 라이프사이클