개발하면서
-
구글 시트에서 원하는 대로 서식을 변경하기개발하면서/etc 2022. 1. 9. 09:34
구글시트에는 날짜와 화폐 그리고 숫자 서식을 설정할 수 있는데 기본으로 제공하는 서식이 아닌 내가 원하는 서식으로 바꾸고 싶을 때가 있다. 구글시트에서는 맞춤 서식을 어떻게 제공하는지 날짜, 화폐, 숫자 각각에 대해 알아본다. 날짜, 화폐는 간단한데 숫자 맞춤 서식이 꽤 복잡하다. 처음부터 형식 만들기 보다는 예제를 선택한 후 수정하면서 적용되는 예제를 보며 진행하는게 괜찮은것 같다. 서식 테스트를 위해 날짜, 화폐, 숫자 모두 존재하는 삼성전자의 최근 10일 치 데이터를 가지고 진행해보자. 날짜 처음에는 서식을 암만 바꿔도 변경이 되지 않았다... 버근가? 싶었는데 찾아보니 텍스트 형식이 YYYY-mm-dd, 시간까지 한다면 YYYY-mm-dd HH:MM:ss 여야 한다. 구글시트에 있는 문자열 함수로..
-
Uber에서 Kafka consumer 모니터링 하는 방법개발하면서/타인글보면서 2021. 10. 25. 22:46
"Kafka consumer monitoring"하면 어떤 게 떠오르나요? __consumer_offsets 토픽, lag, autocommit, consumer rebalance, Burrow ※ Burrow에 정리한 dol9 글 https://dol9.tistory.com/272 https://dol9.tistory.com/273 현재 우버는 대부분의 서비스에서 Kafka를 사용 중인데 Kafka consumer 모니터링을 위해 자체 개발한 얘기가 소개된게 있어 정리해보았습니다. ※ 규모의 경제로 여차하면 자체 개발하는 것 같다. -_-;; 자체 개발 -> 오픈 소스 -> 기술 회사 창업? ㅋㅋㅋ 그리고 정리하다보니 __consumer_offsets 토픽 데이터뿐만 아니라 어떠한 이유로 내려간 con..
-
Uber에서 Kafka를 MSA 큐로 사용하기 위해 고려한 것들개발하면서/타인글보면서 2021. 9. 19. 16:47
Kafka를 ETL이 아니라 서비스에 적용했다는 사례가 종종 들린다. 마지막 commit 이후 처리가 완료된 message가 연속적으로 있을 때 offset commit 돼야 하고 exactly-once, 그리고 consumer group 중 한 개 consumer만 재시작돼도 rebalance가 일어나면서 처리가 멈춰서 개인적으로 서비스에 Kafka를 도입에 부정적이다. 차라리 RabbitMQ처럼 온전히 Queue 목적으로 만들어진 제품을 쓰는 게 여러모로 좋다고 생각했다. 이런 나를 비웃듯이 우버에서 Kafka를 서비스에 어떻게 적용하는지 소개했다. 크흐~~~ https://eng.uber.com/kafka-async-queuing-with-consumer-proxy/ 결론부터 말하면 Kafka Co..
-
Elasticsearch의 개념 살펴보기..(2)아래에서 위로개발하면서/타인글보면서 2021. 8. 30. 08:59
이전 포스트에선 Elasticsearch 개념을 사용하는 측면으로 알아보았다. https://dol9.tistory.com/294 이번에는 반대로 Elasticsearch의 주 기능인 검색을 담당하는 Lucene 그리고 이를 관리하기 위한 Elasticsearch의 기능들을 알아본다. 바닥(?)을 알게 되면 Elasticsearch API들을 이해할 때나 문제 해결 시 도움이 될 것이다. 물론 모든 바닥을 알기에는 우리의 시간은 유한하니 나한테 필요한지 아닌지 고민하자 시작하자. https://www.elastic.co/blog/found-elasticsearch-from-the-bottom-up 역색인(Inverted Index) 검색엔진을 처음 배우면 듣는 자료구조다. 바로바로 역색인 입력한 문서에서..
-
Elasticsearch의 개념 살펴보기..(1)위에서 아래로개발하면서/타인글보면서 2021. 8. 21. 13:41
내 기준으로 Elasticsearch을 간단하게 운영하고 사용은 할 수 있지만 조금 복잡한 쿼리 작성이 필요할 때 바로 작성을 못하거나 예상치 못한 오류(Circuit breaker!!)를 보는 경우가 있어 필요한 부분을 하나하나 알아보려고 한다. 사실 가장 큰 이유는 그냥 궁금해서다. ㅎㅎ Elasticsearch에는 어떠한 기능들이 있고 역할이 무엇이며 왜 필요한지 알아가는 과정이 재밌을 것 같다. 알아가는 과정 중간중간 나의 업무나 삶에 적용하는 것도 재밌다. 먼저 Elasticsearch 사용자 입장에서 색인과 검색이 어떻게 이루어지는지 살펴본다. 위에서 아래로 https://www.elastic.co/blog/found-elasticsearch-top-down 2014년 글이지만 개념에 대한 설..
-
xstream + spring dev-tools 썼더니 문제가 발생했다.개발하면서/코드보면서 2021. 3. 27. 14:42
개인 프로젝트 중 이것저것 수정하다 보니 XStream 사용하는 부분에서 오류가 발생했다. 한꺼번에 많은 수정을 한 게 가장 큰 실수였고 문제의 원인을 gradle이나 XStream 설정이 잘못된 줄 알고 엄한 곳에서 삽질했다. 하지만 결국엔 찾지 못해 원복 했다.... JUnit Test 실행할 때는 정상 동작하는데 Application 실행하면 발생했다. 일주일 정도 지났을까? 다시 시도하였다. 이번에는 한 개 수정 -> 실행 -> 어 되네? 의 반복으로 진행했고 (당연히 그래야 하는데...ㅎ;;) spring-devtools 추가했을 때 오류가 나는 것을 발견하였다. 그래서 해결은 어떻게 했니? stackoverflow.com/questions/59176413/error-using-xstream-i..