목록분류 전체보기 (187)
번개애비의 라이프스톼일
ReactPHP와 같이 최근 php 진영에서도 node나 golang과 같이논블록킹 I/O를 지원할 수 있도록 하는 서드파티 익스텐션이 나오고 있다.그 중에서도 C++로 작성되어 php로 작성된 ReactPHP보다 성능이 좋다고 하는 swoole extension을 테스트 해봤다. 굉장히 단편적고 단순한 테스트임으로 참고만 하길... 일단 테스트서버는 구름 IDE에서 제공하는 가장 낮은 사양의 서버를 준비했다.0.5vCPU / 1GB Memory를 갖는 빈 컨테이너를 준비했고, 우분투 24.04, PHP 8.3.14에 openSwoole은 22.1.2버전을 사용했다.(참고로 Swoole과 Openswoole 은 엄연히 다르고 사용하는 방식도 다름!) cli로 구동되는 php openswoole의 경우,..
윈도우 키보드의 경우 Ctrl, Win, Alt 와 같은 조합의 키보드를 사용하지만macOS에서는 Fn, Control, Option, Command 조합의 키보드를 사용한다.macOS에서 윈도우용 키보드를 사용하게 되면 아래와 같이 동작된다. 따라서 Command키와 Option키의 배열을 바꿔야 그나마 써줄만한데, macOS Monterey 12 이후버전에서 어떻게 설정하면 되는지 간략하게 남긴다.(정말 급하게 윈도우 키보드를 써야되는 상황에서 꿀팁) 상단 작업표시줄에서 애플 아이콘을 누르고 "시스템 설정..." 을 누른다. 설정 항목리스트에서 "키보드"를 선택하고 "키보드 단축키..." 를 누른다. "보조 키"를 누르고 키보드를 선택해준다.참고로 맥북이라 Apple 내장 키보드 / 트랙패..
최근에 M4 Max가 출시되었다는 소식을 듣고 애플 공홈을 돌아다니다가기존에 잘 쓰고 있는 M1 Max 맥북의 파워가 얼마나 강력한지 와닿지가 않아과연 M4 Max가 정말 필요할까 생각하다가 아무도 하지않는 뻘짓이지만,갑자기 궁금해져서 벤츠마크를 돌려봤다.(의식의 흐름대로 그냥 바로 테스트 돌림) 비교대상의 사양은 다음과 같다.사실, 2개의 CPU가 사실 출시시기가 너무 다르지만,무지막지한 코어와 메모리용량을 갖추고 있는 제온서버에 힘을 실어본다. CPUM1 MaxE5-2630 v4 (2cpu)아키텍처Armx86코어수8성능코어 + 2효율코어40코어램용량64GB128GBPHP 버전8.2.6운영체제macOS Sonoma (14.6.1)Rocky Linux 9.2폼펙터14" Laptop1U Server..
본 방식의 CI/CD 자동화는 구름 IDE를 통해 다수의 사용자에게 개발환경을 공유하면서다수의 사용자가 실제 구름 IDE에 코드를 작성/수정을 하게 되면해당 사용자의 Github계정으로 공용 프로젝트에 커밋을 날릴 수 있도록 하는 배포방식이다. 이러한 배포방식은 Github의 main branch 자체를 백업용 저장소로 활용함으로써구름IDE에서 하나의 파일을 여러 개발자가 동시다발적으로 수정하면서main branch를 통해 누가 어떤 코드를 수정했는지 추적관리가 용이해진다. 본 방식을 활용하여 공용 개발환경을 구축하기 위해서는 사전에 아래와 같은 조치사항이 선행되어야 한다.1. 구름IDE에 컨테이너가 설치되어 있어야함.2. Github의 저장소가 해당 컨테이너에 클론되어 있어야 한다.3. 구름IDE..
우리넷에서 개발/공급하는 Cat.M1 관련 모듈들의 자료를 구하기가 너무 어려워서 이렇게 포스팅으로 남긴다.제조사 자료실에도 없고... 따로 단말기 개발신청을 통해서만 구할 수 있는듯. WD-N522S의 경우 UART(RS232)로 통신을 해야하는데 참고로 위 사진상의 UART to USB 칩은 CP2105 이다.컴퓨터의 USB로 AT Command 통신을 직접 날려서 테스트하기 위해서 CP2105 칩에 대한 드라이버를 필수적으로 설치해야함! 아래 운영체제에 맞춰서 설치하면 정상적으로 UART 디바이스가 인식이 가능하다.일부 해외포럼에서 애플실리콘기반의 MacOS에서는 CP2105 드라이버 인식이 불가하다고 하는데, 나는 왜 잘될까 ㅋㅋㅋ(아마 MacOS의 경우 설치과정에서 시스템설정 > 개인정보 보..
개발을 하다보면크롤링등을 위해 부득이하게 서버에 크롬브라우저를 설치하는 일이 있다.(특히 Golang 베이스의 크롤링 서비스에서는!) 도커를 쓰면 아주 간편하게 해결되기도 하고 이렇게 머리를 싸매는일이 없지만...도커를 쓰지 못하는 환경에서는 부득이하게 인프라에 직접 접근해야한다. 하지만, 구글크롬을 설치하는 과정에서과거 CentOS 7 기준에서 구글크롬의 Stable 버전을 설치할때 위와 같이 libc.so.6(GLIBC_2.25) 에러가 발생될 수 있다. --> Finished Dependency ResolutionError: Package: google-chrome-stable-126.0.6478.114-1.x86_64 (/google-chrome-stable_current_x86_64) ..
KC인증 제품 검색하는 방법모든 제품이 KC인증 마크를 달고 판매하는게 아니기 때문에 검색 시 주의사항이 있음.예를 들면 공급자적합성 또는 안전기준준수로 시험을 진행한 제품은 별도의 KC인증번호가 없음으로 조회가 불가능함. 1. 무선통신을 사용하는 제품이거나 인증번호가 "R"로 시작하는 제품 검색국립전파연구원 : https://www.rra.go.kr/ko/license/A_c_search.do 2. 그 외 다른 제품 검색 (검색이 매우매우 느림!)제품안전정보센터 : https://www.safetykorea.kr/release/certificationsearch 그렇다면 공급자적합성 또는 안전기준준수로 시험을 진행하여 KC인증마크를 붙이지 않아도 되는 제품은 다음과 같다.참고) KC인증마크를 붙..
아두이노나 ESP32, ATmega, STM32 와 같은 펌웨어를 개발할때 요즘은 PlatformIO 로 많이들 개발을 진행하게 된다. PIO(이하 PlatformIO)는 Visual Studio Code의 Extention 모듈로써 임베디드 개발자도 간지나게 VScode로 코드를 작성할 수 있도록 도와준다. 하지만, 최근 PIO가 업데이트되면서 아래와 같은 오류를 내뱉는 경우가 많다. 대부분 해결책들은 VSCode와 PIO를 다시 설치하라는등 의견이 다양하고 PIO측에서도 이 문제를 아직까지 속 쉬원하게 해결하지 못하고 있는듯 하다. PIO에서 MCU로 업로드하거나 코드를 빌드할때 아래의 /.pio/build/~ 를 자동으로 생성하면서 필요한 코드를 그때마다 가져와서 컴파일하게 된다. 즉, 컴파일과정에..
제주살이를 하게 되면서 여러 워킹스페이스를 다녔었다. 나와 같이 힘들게 워킹스페이스를 찾으러 다니는 사람들을 위해 다녀온 워킹스페이스를 공유하고, 결국 카페에 정착하게 된 이유를 써본다. 유목민마냥 이곳 저곳을 많이 돌아다니면서 정말 기억에 남는 3곳은 다음과 같다. 1. O-PEACE 조천점 (숙박+워킹스페이스 / 124,000) 공유오피스와 숙박을 모두 해결이 가능하다. 스위트룸 기준 1박에 약 124,000원임. 숙박을 할 경우, 1층 공유오피스를 무료로 이용할 수 있다. 가격이 좀 사악하기도 하고 오피스공간이 생각외로 좁다. 오래있기는 힘들고 공유오피스만 이용했었음. (하루에 16,000원) O-PEACE 조천점 더 알아보기 : https://o-peace.com/Jocheon 2. O-PEACE..
ZendOptimizer 나 IonCube, phpBolt 와 같이 서버에 별도의 Extention (.so, .dll) 을 설치하지 않고 간단하게 php소스코드를 읽지 못하도록 난독화하는 사이트를 개설하게 되어 공유합니다. https://php-obfuscator.burndogfather.com/ PHP 난독화 도구 php, PHP, 소스코드, 난독화, 암호화 php-obfuscator.burndogfather.com 원본소스코드와 난독화된 코드는 URL형태로 저장됨으로 URL을 공유하면 다른사람에게 손쉽게 원본소스와 난독화된 소스코드를 함께 전달할 수 있습니다. 이런식으로 단방향 해싱을 통해 복호화가 불가능하도록 URL을 함께 생성해줍니다. (URL을 모르면 소스코드를 열람할 수 없습니다) https..