PHP 애플리케이션을 운영하다 보면 갑자기 'Fatal error: Allowed memory size of X bytes exhausted' 에러가 터진다. 서버는 멀쩡한데, 갑자기 메모리가 부족하다는 것. 대부분의 개발자는 단순히 php.ini의 memory_limit을 올리고 문제를 덮어버린다. 하지만 이건 근본 해결이 아니다. 이번에는 왜 메모리가 ···
JavaScript로 개발하다 보면 일정 시간 후에 코드를 실행하거나 반복적으로 작업을 수행해야 할 때가 많다. 대부분의 개발자들은 setTimeout과 setInterval을 사용하면서도 타이머가 예상대로 작동하지 않거나 메모리가 계속 증가하는 문제를 겪게 된다. 다만 이 둘의 정확한 동작 원리와 제대로 정리하는 방법을 모르는 경우가 대부분이다. 이번에는···
웹 애플리케이션을 개발하다 보면 외부 3rd-party 라이브러리가 생성한 DOM 요소나, 사용자 동작에 따라 동적으로 추가·변경되는 HTML 구조를 실시간으로 감지해야 하는 상황을 경험해봤을 것이다.다만 대부분의 개발자들은 setInterval을 돌려 주기적으로 DOM을 검색하거나, 이미 구시대 유물이 된 MutationEvents(DOMNodeInser···