게시글
질문&답변
2024.05.19
중간테이블에 대한 낙관적 락 적용법
한수현님 안녕하세요. 단순히 해결만을 위한 것이라면 Version 필드를 Appointment 에 넣고 updatedAt 을 넣어서 변경을 발생시킬 수 있을 것 같습니다. 다만 올바른 해결방법으로는 안보이며 근본적으로 updateAuthority 메소드에 중복으로 접근해서는 안되보입니다. 이를위해 별도의 테이블로 Lock 을 제어할 수도 있으며, redis 를 사용하여 락을 제어하여 updateAuthority 메소드에 접근자체를 막을수도 있을것 같습니다. 정확히 어떤프로젝트이며 어떤 특성을 가진것인지 100% 이해하지 못한 상황에서 남기는 답변이므로 더 나은 방법이 존재할 수 있습니다. 감사합니다.
- 0
- 2
- 23
질문&답변
2024.05.12
kafka 와 redis pub/sub 비교
tete 님 안녕하세요. 기능만으로 보았을 땐 redis 의 pub/sub 을 사용할수도 있을듯 합니다만, 이벤트가 소실될 가능성이 존재하여 안전하지는 않을듯합니다. redis 의 pub/sub 과 kafka 의 차이점을 공부해보시면 좋을것 같습니다. 감사합니다.
- 0
- 1
- 40
질문&답변
2024.05.12
ApplyService#apply 트랜잭션 문제
조D영래님 안녕하세요. 여러가지 방법이 있을듯합니다. applied user 에서 제거와 coupon count 1 감소하여 추후 동일한 유저가 다시 시도 가능하도록 함 유저의 id 를 기록한 후 별도의 저장소에 저장하여 추후 재시도를 통해 쿠폰발급 감사합니다.
- 0
- 1
- 35
질문&답변
2024.05.12
kafka Consumer
tete 님 안녕하세요. Kafka 를 사용할 때 큐에 보관을 해놓았고 이벤트를 순차적으로 처리할 수 있습니다. 이러한 특성을 이용하여 100개의 요청을 한번에 하는것이 아닌 100번에 나누어서 할 수 있게됩니다. 또는, 100개의 요청을 적재만 해두고 이벤트가 모두 종료된 후 트래픽이 낮아졌을 때 컨슈머를 실행시켜 이벤트를 처리할수도 있습니다. 시스템 부하가 적은 시기나 자원이 충분할 때는 시스템 모니터링을 통해서 알 수 있습니다. 감사합니다.
- 0
- 2
- 84
질문&답변
2024.05.12
PessimisticLock 관련
쇼콜라끼삐또리님 안녕하세요. thread-5 가 제일 먼저 쿼리를 날리게 된다는것을 어떻게 확인하셨는지 알 수 있을까요 ?
- 0
- 2
- 63
질문&답변
2024.05.09
docker compose up 실행 오류
John 님 안녕하세요. 답변이 늦어져서 죄송합니다. docker-compose 파일의 내용을 아래와 같이 변경해보실 수 있으실까요 ? version: '2' services: zookeeper: image: confluentinc/cp-zookeeper:latest container_name: zookeeper environment: ZOOKEEPER_SERVER_ID: 1 ZOOKEEPER_CLIENT_PORT: 2181 ZOOKEEPER_TICK_TIME: 2000 ZOOKEEPER_INIT_LIMIT: 5 ZOOKEEPER_SYNC_LIMIT: 2 ports: - "2181:2181" kafka: image: confluentinc/cp-kafka:latest container_name: kafka depends_on: - zookeeper ports: - "9092:9092" environment: KAFKA_BROKER_ID: 1 KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181' KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:29092,PLAINTEXT_HOST://localhost:9092 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0 그리고 이후 시간에 나올 명령어 실습에서는 아래와 같이 .sh 를 제외하고 실행하면 될 것 같습니다. docker exec -it kafka kafka-topics --bootstrap-server localhost:9092 --create --topic testTopic docker exec -it kafka kafka-console-producer --topic testTopic --broker-list 0.0.0.0:9092 docker exec -it kafka kafka-console-consumer --topic testTopic --bootstrap-server localhost:9092 혹시나 문제가 있다면 말씀 부탁드리겠습니다!
- 0
- 2
- 181
질문&답변
2024.05.07
consumer 셋팅 숫자 출력이 안됩니다.
SJ 님 안녕하세요. 해당 코드만 보고 문제를 파악하기는 어려울 것 같습니다. 전체 코드를 깃헙에 올려주신 후 주소를 공유해주실 수 있으실까요 ?
- 0
- 2
- 78
질문&답변
2024.05.07
멀티 모듈
SJ 님 안녕하세요. 최상단 경로에서 프로젝트를 하나 더 생성해준후에 setting 파일을 사용하여 설정하면 됩니다!
- 0
- 2
- 110
질문&답변
2024.04.27
kafka 사용 이유
윤지용님 안녕하세요. 이해하신것이 맞습니다. 처리량을 조절하는 것이 사용이유였습니다. 감사합니다.
- 0
- 2
- 134
질문&답변
2024.04.24
docker restart시에 java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
알함님 안녕하세요. use stock_example; 명령어를 사용해서 데이터베이스까지 접근이 되시나요 ?
- 0
- 1
- 115