dev

PHP 생성자 오버로딩

PHP에서는 기본적으로 생성자 오버로딩이 되지 않는다.다른 방법으로는 func_get_args()를 이용한 방법과 팩토리 패턴을 이용한 방법이 있는데,func_get_args()를 이용하게 되면 인수를 검사기 위해 코드가 지저분해 질 수 있다.때문에 팩토리 패턴을 이용하는 방법을 추천한다. 팩토리 패턴을 이용

드라이퍼스 모델(Dreyfus Model)

드라이퍼스 모델(Dreyfus Model) 1 단계 : Novice 경험이 없기 때문에, 상황에 상관 없이 적용할 수 있는, 다시 말하면, 상황에 따라 적절하지 않을 수 있는, 조리법(recipes) 즉, context-free 한 규칙이 주어졌을 때 효과적으로 과업을 수행할 수 있다. 디버깅 기술 부족하다. 동일한 유형의 결함을 자주 반복한다. 계획을 따르지 않고 프로그램을 우연히 디버그한다. 디버깅에 상당한 시간을 소비합니다. 쉽게 …

드라이퍼스 모델(Dreyfus Model) 더 보기 »

도커 명령어

Containers docker build -t friendlyhello . # Create image using this directory’s Dockerfile docker run -p 4000:80 friendlyhello # Run “friendlyname” mapping port 4000 to 80 docker run -d -p 4000:80 friendlyhello # Same thing, but in detached mode docker container ls # List all running containers docker container ls -a # List all containers, …

도커 명령어 더 보기 »

[django-channels] 채널 요약

채널이란 무엇입니까?   채널은 Django를 확장하여 두가지 중요한 기능을 허용하는 새로운 레이어를 추가합니다. 일반 뷰와 매우 유사한 방식으로 웹소켓 처리 Django와 동일한 서버에서 실행되는 백그라운드 작업 It allows other things too, but these are the ones you’ll use to start with. 어떻게? Django는 두 가지 프로세스 유형으로 구분됩니다.: HTTP 및 웹 소켓을 처리 뷰, 웹소캣 …

[django-channels] 채널 요약 더 보기 »

php에서 암호화 mcrypt_encrypt를 사용하지 말고 Libsodium 또는 openssl_encrypt를 사용.

mcrypt_encrypt를 사용하여 암호화 할 때, pkcs7 패딩 처리를 안해주면, openssl_decrypt나, 다른 언어 복호화에서 복호화가 불가능하다. 때문에 되도록 사용을 자제하고, 만약에 레거시 시스템에서 사용하게 되면, pkcs7 처리를 해줘야한다. https://ko.wikipedia.org/wiki/%EA%B3%B5%EA%B0%9C_%ED%82%A4_%EC%95%94%ED%98%B8_%ED%91%9C%EC%A4%80   예제 소스 <?php function pkcs7_pad($str) { $len = mb_strlen($str, ‘8bit’); $c = 16 – ($len % 16); $str .= str_repeat(chr($c), $c); return $str; } $message = …

php에서 암호화 mcrypt_encrypt를 사용하지 말고 Libsodium 또는 openssl_encrypt를 사용. 더 보기 »

ubuntu에서 mysql 5.7 또는 mariadb 10 이상 root password reset

# Stop MySQL sudo service mysql stop # Make MySQL service directory. sudo mkdir /var/run/mysqld # Give MySQL user permission to write to the service directory. sudo chown mysql: /var/run/mysqld # Start MySQL manually, without permission checks or networking. sudo mysqld_safe –skip-grant-tables –skip-networking & # Log in without a password. mysql -uroot mysql Update the …

ubuntu에서 mysql 5.7 또는 mariadb 10 이상 root password reset 더 보기 »

keystone 설치 시 keystone-manage bootstrap 명령어 잘못 입력하였을 경우 이슈 해결 방법.

keystone-manage bootstrap –bootstrap-password ADMIN_PASS \ –bootstrap-admin-url http://controller:35357/v3/ \ –bootstrap-internal-url http://controller:35357/v3/ \ –bootstrap-public-url http://controller:5000/v3/ \ –bootstrap-region-id RegionOne   위와 같이 명령어를 호출하여 설정한 endpoint url 변경해야 할 경우 아래와 같은 방법으로 처리 해주면 된다. > endpoint 조회 openstack endpoint list > endpint 삭제 openstack endpint [endpoint-id]