본문 바로가기

손쉽게 PHP 네이티브 확장 개발하기 (Zephir) 들어가며 PHP 네이티브 확장 개발해보신 분들은 알 것이다. 마이너 버전 (예: 7.3->7.4 올라갈 때마다 BC Break가 나타나는 것은 물론이요, Zend API (PHP 네이티브 확장 개발시 사용하는 API) 가 어떻게 변경됐는지 제대로 알려주지도 않는다. (당장 최신 버전 Zend API에 대한 문서도 없다. 찾아봐도 PHP 5.3 시절 문서가 끝, 마이너 버전 업데이트할 때마다 커밋 찾아가며 수정해야한다) 진짜 더럽게 만들기 힘들고, 관리도 매우 귀찮다. 본론 손쉽게 PHP 네이티브 확장을 개발하게 해주는 언어가 있다. Zephir라는 언어인데, 문법도 PHP와 유사하고, 무엇보다 호환성이 뛰어나다. PHP 버전 올라갈 때마다 커밋 뒤져가며 확장을 다시 개발할 필요가 없는 것이다. 심지어 P.. 더보기
JVM을 교체하면서 GraalVM은 뭐고, OpenJ9, AdoptOpenJDK, Azul JDK는 뭐지? GraalVM GraalVM은 Hotspot의 낡디낡은 C2 컴파일러를 대체하기 위해, Oracle Labs를 중심으로 개발중인 차세대 JIT 컴파일러입니다. 매우 빠른 것이 특징입니다. OpenJ9 OpenJ9은 IBM의 J9 JVM을 이클립스 재단에서 인수하여, 개발 및 배포중인 JVM입니다. (IBM도 개발에 참여 중) 매우 적은 메모리 사용량이 특징입니다. AdoptOpenJDK AdoptOpenJDK는, 커뮤니티에서 빌드하여 배포하는 OpenJDK입니다. Hotspot, OpenJ9 VM을 빌드하여 배포하고 있습니다. (보안 패치 또한 커뮤니티에서 제공합니다. 따라서 기존 OpenJDK보다 보안 패치가 빠르게.. 더보기
최근 노래하는하리보 봇이 자주 고장나는 이유에 관하여 최근 하리보 봇이 노래를 재생하지 않고 나간다는 신고가 많아졌습니다. 이는 최근 유튜브에서 트래픽을 많이 사용하는 회선에 리캡차(사람인지 봇인지 검사하는 프로그램)를 요구하여 발생한 문제입니다. (따라서 대부분의 노래 봇에 리캡차가 걸린 상태입니다) 현재까지는 이를 우회할 수 있는 방법이 없습니다. 여러 방법을 사용하여 리캡차를 해제해도, 다시 차단당하기까지 3시간~2시간 밖에 걸리지 않는 것으로 보입니다. 물론 캡차를 자동으로 해제하는 프로그램이 있는 것으로 보입니다만, 이는 하리보 서버에 적용하기에, 현실적으로 무리가 있어보입니다. 위 사진과 같은 아이디어도 나왔지만, 아직 Draft에 머물러 있는 상태입니다. 결론 제가 리캡차를 해제할 때까지 기다리셔야 합니다. 방법이 없습니다. 마지막 방법으로는,.. 더보기