320x100
728x90
리스트 예시: 게시물이 존재할 경우 3건을 노출합니다.
- 불공정거래위원회 (부제 : 쿠팡 과징금의 불합리성) 평화로운 나날을 보내던 중, 쿠팡이 1400억 원의 과징금을 내야 한다는 뉴스가 쏟아졌다. "쿠팡이 뭐 잘못했나?"하고 찾아보던 도중, 여러 자극적인 문구들이 등장했다 - "자사 PB상품 노출이 우선되도록 알고리즘 조작"- "임직원들의 리뷰개제"- "셀러들의 판매비중 감소"등등 하도 많은 주장이 있다. 읽는 순간부터 지금까지도 여전히 이해가 안가는 주장들이다. 일단 불공정거래위원회에서 했던 주장들을 살펴보면 다음과 같다. 1. 쿠팡이 알고리즘 조작이나 임직원 동원 구매 후기 등 비정상적 방법으로 자기 상품을 입점업체 중개상품보다 우대한 것이다.- 쿠팡은 전자상거래 플랫폼을 제공하는 기업이다.쿠팡에는 자체적으로 판매하는 상품들도 있고, 애플이나 다른 브랜드로부터 매입해서 판매하는 상품, 타 판매자가 쿠팡이.. 2024.06.20
- 외부 API호출하는 서버 개발시 주의할 점! [File Descriptor, Too Many Open Files] 오늘은 솔루션을 운영하다가 발생한 문제와 그 해결법을 공유하려고 한다. 일단 전제를 설명하자면 현재 내가 재직 중인 회사는 B2B를 하는 회사고 도메인 특성상 많은 트래픽을 받을 일이 없었다. 그래서 여느떄와 다름없이 비즈니스 로직 개발에 집중을 했고, 늘 같은 개발 -> 테스트 -> 배포 -> 모니터링을 했다. 그런데 내가 개발한 이 솔루션을 한 회사가 사용하기로 했는데, 이 솔루션은 서버에서 외부 API를 호출하는 로직이 포함되어 있다. 그리고, 그 회사는 수많은 회사들과 게약으로 엄청난 트래픽(내 경험 기준에선...)을 가진 업체였다. 업체가 라이브하는 날을 알려줘서 모니터링을 하고 있었는데, 갑자기 서버가 엄청난 수로 오토스케일링 되는 것을 확인했다. 처음에 2대였던 서버는 29대까지 늘었고, 분.. 2023.12.14
- AWS]ECS 사용시 로그 비용관련 주의점 ECS를 사용하면서 불필요한 로그를 줄이고 가능하다면 ERROR, WARN로그만 켜놓자. 우리 회사는 ECS Fargate를 굉장히 자주 사용한다. 아무래도 서버리스라는 장점이 있어서 관리의 편의성 때문인데, ECS 서비스를 생성할 때 무의식적으로 로그 설정을 켜놨다. 문제개 생겼을 때 CloudWatch에서 보기 위해서다. 일단 ECS는 TaskDefinition이라는 작업에 정의된 대로 컨테이너가 실행된다. 여기서 작업을 정의할 때, 기본설정으로 대부분을 설정하다 보니 기본적으로 로그 수집 사용에 체크가 되어있었다. 기본으로 로그 수집 사용이 체크되어 있다. 물론 로그 사용은 필요하지만 불필요한 INFO 로그는 안 봐도 된다. 그러다 인프라 관련 비용을 보던 도중, 어느 순간 매일 $10씩 추가적으로.. 2023.09.17
- LeetCode Valid Anagram https://leetcode.com/problems/valid-anagram/description/ Valid Anagram - LeetCode Can you solve this real interview question? Valid Anagram - Given two strings s and t, return true if t is an anagram of s, and false otherwise. An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using leetcode.com 이 문제는 애너그램에 관한 문제다. 애너그램이란 특정 문자를 재배치했을 때, 인풋으.. 2023.07.28
- 월급이 마약이라는 사람들에 대한 견해 요즘 유튜브 혹은 자기 계발 관련 미디어를 접하다 보면 월급이라는 건 마약이고 그거에 중독돼서 현실에 안주하게 된다 등등 정기적으로 돈 받으면서 일하는 직장인들을 폄하하거나 그러지 말라는 말들을 굉장히 많이 볼 수 있다. 처음에는 나도 "그런가?"라는 생각을 해봤지만 금세 그런 게 아니라는 반례를 생각할 수 있었다. 월급은 마약인가 과연 월급은 마약일까. 사람의 가치관에 따라 그럴 수 있고 아닐 수도 있다. 위 영상을 보면 마약에 대해 어느 정도 위험한지 알 수 있다. (링크) 물론 "월급은 마약"이라는 문장의 뉘앙스는 "위험하다"의 뉘앙스보다 "안주하게 된다"의 뉘앙스가 더 큰 것을 알지만 내가 하려는 말은 저 영상과 관계가 있다. 마약을 하면 도파민을 대체하는 극도의 행복감에 생기게 된다고 한다. 그.. 2023.07.21
- 내 코드 퀄리티를 올리는 개인적인 관점 연차가 찰 수록 회사에서 내가 작성했던 코드들의 수가 많아졌다. 그렇다 보니 그 코드를 인수인계받은 다른 팀원이 "이게 어떻게 동작하는 건가요?" 혹은 "이렇게 짠 이유가 뭔가요?"라는 질문을 가끔 듣는다. 그런데 실상 코드를 작성한 지 한 달만 지나도 내가 작성했던 코드의 의도를 까먹는 경우가 굉장히 많다. 이런 경우가 반복되다 보니 코드를 작성하면서 나만의 검증방법이 생겼다. 이 방법은 다수가 좋다고 해서 검증된 것이 아닌 그저 내가 코드를 작성할 때 나의 코드 퀄리티를 측정하는 방법입니다. (뇌피셜 주의...) 그냥 평범한 한 3년 차 개발자는 이런 생각하면서 코드 짜는구나... 하고 봐주시면 감사하겠습니다. 리팩토링은 코드를 작성하면서 한다 신입 때는 사실 코드를 다 작성하고 테스트 - 빌드 - .. 2023.07.21
- AWS]ECS Fargate X86에서 ARM으로 회사에서 EC2보다는 ECS를 더 사용하기로 했기 때문에 RI 준비를 하면서 기존에 EC2를 ECS로 전환하는 작업을 진행했다. 그중에서도 X86 아키텍처와 ARM 아키텍처 중, 선택지가 있었는데 아무래도 비용이나 성능면에서나 더 좋은 ARM 아키텍처 기반의 환경을 선택하기로 했다. Savings Plan을 적용했을 때의 요금표는 다음과 같다. * 기준 : 서울리전/리눅스/선결제 없음 두 요금 표는 소숫점으로 봐서 별 차이가 안 날 수 있지만 Fargate를 사용하는 vCPU와 RAM의 합산 요금을 기준으로 계산되기 때문에 실질적으로 큰 차이가 난다. ARM이 X86대비 시간당 RAM(GB)은 약 20%, CPU는 19.7% 둘 다 대략 약 20%가 저렴하다. 그렇다면 왜 더 싼걸까? 일단 몇 가지 이유.. 2023.05.09
- Spring boot에서 ControllerAdvice를 이용하여 Exception handling하기 코드를 작성하다 보면 코드에서 Exception(이하 오류)이 발생하는 일은 빈번하다. 제일 무서운 NullPointerException부터 NumberFormatException , ClassCastException 등등 많은 종류의 오류가 있다. 이런 오류들 중, Checked Exception으로 컴파일 이전에 코드 작성시에 try catch나 throw 등 에러를 핸들링하도록 강제하는 코드들이 있는 반면 SQL Exception, NullPointer, OutOfMemory 등의 오류들은 런타임에서 발생하기 때문에 개발 단계에서 확인하지 못하고 운영 단계나 사용자의 실 사용시에 발생하기 때문에 이는 곧 소프트웨어의 품질 문제로 이어진다. MVC 패턴을 채택하여 개발한다면 가장 첫 진입점이 되는 컨.. 2023.03.21
- MySQL의 Full-text index를 이용하여 검색 API 성능 개선하기 사내에서 테스트 커뮤니티 매체를 만들고 있는데, 테스트성으로 만든 매체다보니, 커뮤니티의 게시글을 검색하는 API에서 Like '%검색어%' 절로 간단하게 작성해 놨다. 그러다 보니 트래픽이 분당 500~700 사이었는데도 불구하고 RDS의 cpu가 항상 95~98%로 상당히 많은 부하가 있었다. 어찌 보면 당연한 결과다. like절은 인덱스를 타지 않고 기본적으로 풀스캔으로 동작을 하게 된다. 데이터는 약 16만 건의 row가 있었다. EXPLAIN SELECT * FROM contents c WHERE title LIKE '%검색어%'; explain으로 쿼리 전략을 살펴보면 모든 row를 스캔하고 그 대상은 약 13만 건의 데이터임을 알 수 있다. 사용자가 실제로 분당 30~40건의 검색 API를 .. 2023.01.16
- AWS Lambda 사용시 주의점 (동시성) AWS Lambda로 간단한 서버리스 API를 구성하다가 오늘 문제점을 만났다. What is AWS Lambda? - AWS Lambda What is AWS Lambda? AWS Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on a high-availability compute infrastructure and performs all of the administration of the compute resources, includ docs.aws.amazon.com 문제의 API는 간단한 캐싱 데이터를 가져가는 API인데, 갑자기 Respon.. 2022.12.22
- AWS LightSail 소개 및 적용기 회사에서 비용절감 작업의 일환으로 EC2의 비용을 줄일 방법을 찾던 중 AWS LightSail을 찾게 되었다. LightSail은 AWS에서 지원이 종료되거나 오래된 인스턴스들을 지원 종료하기 전에 가볍게 시작할 수 있는 용도로 만들어진 듯하다. 자세한 내용은 여기서 참고할 수 있다. EC2의 대체재로 찾긴 했지만 LightSail이라는 서비스의 범주안에 RDS, CDN, DNS 등등 AWS에서 사용할 수 있는 서비스는 모두 있었고, VPC를 피어링 해서 기존 AWS 서비스와 함께 사용할 수 있다. 이 글의 요점은 EC2와 같은 가상 서버이기 때문에 LightSail = EC2라고 봐주시면 글을 읽는데 도움이 될 것입니다. LightSail의 간단한 설명은 뒤로 하고, 우리 팀이 이를 선택한 이유는 다.. 2022.11.30
300x250
320x100