coding
-
OkHttp VS Apache HttpClientcoding 2022. 2. 18. 17:21
새벽에 알림이 울렸다. 불길하다. 예감이 맞다. 장애가 발생했다. 허겁지겁 PC를 켜고 여기 저기 살펴봤다. 로그를 보고 깜짝 놀랐다. 예상과 달리 OkHttp에서 에러가 발생했다. 난 많이 쓰는 오픈소스라 안정성이 높을 거라 생각했다. 역시 버그는 나의 방심을 절묘하게 찾아 공격한다. 아~~ 머리 아프다!! 다시 도를 닦는 순간이다. 새로 개발하는 기능에 Okhttp를 도입했다. 기존 코드는 모두 Apache HttpClient로 개발했다. 내가 OkHttp를 도입한 이유는 이렇다. 사용법이 단순하다. 안드로이드에서 많이 쓰니 충분한 검증 왠지 대세를 안 따라가면 뒤쳐지는 느낌적 느낌 운영중 서비스는 고객사들의 상품을 크롤링하는 백엔드 시스템이다. 대용량 Http 요청이 기본이다. Apache Http..
-
Meta programmingcoding 2015. 7. 21. 18:25
메타프로그래밍은 코드로 코드를 생성하는 것이다. 코드를 데이터로 처리한다. 코드를 실행한 결과로 데이터 대신 코드가 리턴된다. 일명 Macro 라고도 한다. 이런 특성을 활용해 비슷한 코드를 줄일 수 있고 DSL(Domain specific language)를 만들 수 있다. 인공지능이나 분석에도 유리하다. 함수형 언어들이 대체적으로 메타프로그래밍을 지원한다. 메타프로그래밍은 두 가지가 있다. 첫 째는 코드로 코드를 생성하는 것이다. 둘 째는 코드로 코드를 생성하고 생성된 코드로 다시 코드를 생성한다. 첫 째는 한단계만 생성하는 것이고 둘 째는 몇 단계로 계속 생성하는 것이다. 보통 한단계 메타프로그래밍은 지원하는데 다중 메타프로그래밍을 지원하는 경우는 드물다. LISP, Clojure가 다중 메타프로그..