묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨대용랑 채팅 TPS에 대한 stateful 서비스 구축하기
컨트롤 서버가 다운되면 어떻게 되나요?
[이 강의에서 다룰 zero-downtime-deploy를 위한 아키텍처 구조도를 알려드릴게요] 강의를 들으면서 컨트롤 서버의 필요성에 대해 설명해주셨습니다. 채팅 서버 1,2,3 이 다운될 때를 고려해서 로드 밸런싱 용으로 컨트롤 서버를 따로 둔다고 이해했는데, 컨트롤 서버가 배포되거나 다운되는 경우는 없을까요? 컨트롤 서버도 이중화로 구성을 해야하는 것인지, 다른 방법은 무엇이 있는지 궁금합니당
-
미해결카프카 완벽 가이드 - 코어편
강의 질문
제가 EXCEL파일에 있는 데이터를 카프카를 통해 db에 저장을 해야하는데 이 강의를 들으면 할 수 있을까요?
-
해결됨카프카 완벽 가이드 - ksqlDB
debezium에서 ksqldb로
제가 구상하고있는 구조가 mysql에서 debezium source connector가 topic에 넘기고 ksqldb의 streams나 table로 재구성하여 다른 topic으로 넘긴 후mysql sink database에서 받는다. 라는걸 구상중인데요 ksqldb에서 직접 insert를 하면 json 형식이 아니라서 sink connector가 읽지 못하는거 같습니다.-- debezium.json --{ "name": "debezium", "config": { "connector.class": "io.debezium.connector.mysql.MySqlConnector", "tasks.max": "1", "database.hostname": "localhost", "database.port": "3306", "database.user": "root", "database.password": "1234", "database.allowPublicKeyRetrieval": "true", "database.server.id": "10777", "database.server.name": "debe01", "database.include.list": "debe", "table.include.list": "debe.user", "database.history.kafka.bootstrap.servers": "localhost:9092", "database.history.kafka.topic": "schema-changesde.mysql.oc", "key.converter": "org.apache.kafka.connect.json.JsonConverter", "value.converter": "org.apache.kafka.connect.json.JsonConverter", "key.converter.schemas.enable": "false", "value.converter.schemas.enable": "false", "database.connectionTimeZone": "Asia/Seoul", "time.precision.mode": "connect", "transforms": "unwrap", "transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState", "transforms.unwrap.drop.tombstones": "false" } } 그래서 debezium으로 mysql의 data를 읽어서 topic으로 가져왔는데ksqldb에서 그 data를 읽는 부분에서 막혔습니다강의에 나온거처럼 ksqldb와 debezium을 연동을 해야 가능한건가요?아니면 어떤 방법이 있을까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
너무 화가 나서 올립니다
신규 강의 업데이트 기다리다 너무 화가 나서 글을 올립니다.강사님께 질문드리고 싶습니다 확실히 답변 주세요도대체 강의 업데이트는 언제 됩니까?올해 초부터 강의가 업데이트 된다고 답변하신지 벌써 반년이 다 지나갑니다강사님은 강의를 업데이트 하실 생각이 진정으로 있으십니까? 저야 할인받고 구매하긴 했지만 강의가 한두푼 하는것도 아니고 8만8천원짜리 강의면 취준생들은 정말 고민의 고민 끝에 구매한 금액인데 이렇게 하시면 안되죠 물론 강의를 구입하기 전에 이전버전인걸 알고 구매했으니 제 잘못도 있는게 맞습니다.하지만 강의 이미 녹화 다 끝났다고, 6월 되기 전에 올려주신다고 하셨잖아요저는 강사님의 답변을 믿고 일단 기존 강의 다 들은 뒤에 업데이트 된 강의 들어야지 하는 생각으로 취준생의 입장에서 정말 거금을 들여 구매한건데 정말 화가 나네요. 이렇게 약속을 지키지 않으실걸 알았으면 굳이 이 강의 구매 안하고 타 사이트에 올라온 훨씬 더 저렴한 강의 구매했겠죠 저야 한달정도밖에 기다리지 않았지만 1월부터 기다린 수강생들은 뭐가 됩니까? 강의를 계속할 여력이 되지 않으시면 공지나 질문에 답변하실때 당분간은 좀 어려울 것 같다고 말씀하시거나 현재 진행사항을 솔직히 말씀하셔야하는것 아닌가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
강의를 신규버전에 맞춰 업데이트 한다고 되어있는거 같은데 언제 하실 예정인지 알 수 있을까요??
Spring Boot 3.2 + Spring Cloud 2023.0.0업데이트 예정 (2024-01)
-
미해결15일간의 빅데이터 파일럿 프로젝트
tail -f flume-cmf-flume-AGENT-server02.hadoop.com.log 오류
tail -f flume-cmf-flume-AGENT-server02.hadoop.com.log 했을때 Creating이나 강의에 말씀한 내용 나오지않고, 아래처럼 나오기만 하는데 Flume Config파일도 정상적이고 재시동도 해봤는데 안되는데 또 조치해야할게 있을까요?
-
해결됨카프카 완벽 가이드 - ksqlDB
CLI로 실행과 코드로 실행하면 결과가 다르게 나옵니다
CREATE STREAM add_stream WITH (KAFKA_TOPIC='column_stream_topic', VALUE_FORMAT='JSON') AS SELECT *, CAST(NULL AS INT) AS new_column FROM test_stream EMIT CHANGES;이렇게 기존 test_stream에서 column을 추가한 add_stream을 만들려고 CLI문을 실행시키면원래 test_stream에 담겨있는 data가 담아져서 나오는데package com.example.service; import io.confluent.ksql.api.client.Client; import io.confluent.ksql.api.client.ClientOptions; import io.confluent.ksql.api.client.ExecuteStatementResult; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; import java.util.concurrent.ExecutionException; @Service public class streamPracticeAdd { @Value("${ksqldb.server.host}") private String ksqlDbHost; private int ksqlDbPort; private Client client; @PostConstruct public void init() { ClientOptions options = ClientOptions.create() .setHost(ksqlDbHost) .setPort(ksqlDbPort); client = Client.create(options); } public void streamsAdd(String columnName, String dataType) { String createStreamKsql = "CREATE STREAM add_stream WITH (KAFKA_TOPIC='column_stream_topic', VALUE_FORMAT='JSON') AS SELECT *, CAST(NULL AS " + dataType + ") AS " + columnName + " FROM test_stream EMIT CHANGES;"; try { ExecuteStatementResult result = client.executeStatement(createStreamKsql).get(); System.out.println("Stream created and data inserted into new topic: " + result.queryId()); } catch (InterruptedException | ExecutionException e) { e.printStackTrace(); } } }/kafka/addColumn/new_column/INT 인 API 요청을 줘서 새 stream을 만드는 코드인데실행시키면 기존 column에 새 column까지 추가는 되는데 기존 data가 하나도 들어오지 않습니다.검색을 해봤는데도 잘 안나와서 질문 남깁니다 감사합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
RouteLocator class not found 해결법
dependencies에서implementation 'org.springframework.cloud:spring-cloud-starter-gateway-mvc' 부분을 implementation 'org.springframework.cloud:spring-cloud-starter-gateway'으로 바꾸시면 해결됩니다.
-
미해결카프카 완벽 가이드 - 코어편
컨슈머 리벨런싱 도중 에러시 session.timeout.ms 관련 질문
컨슈머 리벨런싱 도중에 cpu 과부하 같은 오류가 발생해서 리벨런싱이 완료되지 않은 경우heartbeat.interval.ms 설정은 컨슈머가 안붙었기 때문에 보내지 못하고 session.timeout.ms 설정 값을 통해서 그룹 코디네이터가 컨슈머가 죽었다고 판단해서 리벨런싱이 일어나야 할 것 같은데 --describe 컨슈머 그룹 상태를 확인했을 때 계속 Consumer group '그룹이름' has no active members. 같이 컨슈머가 안붙는다면 서버 재시작을 통해서 강제 리벨런싱을 일어나게 하면 다시 컨슈머가 붙어서 해결이 가능하지만 이 방법을 떠나서 session.timeout.ms 같은 값을 통해서 자동 리벨런싱이 일어나지 않을 수도 있는건지 궁금합니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
비대칭 암호화를 사용하는 이유
강의 내용에서는 통합된 키로 암호화와 복호화를 하고 있어, 사실상 대칭 키와 같은 방법이라고 느껴집니다. 강의 내용에서는 비대칭 암호화의 필요성을 못느끼는데 스프링 클라우드 컨피그서버에서 비대칭 암호화에 대한 필요성과 사용하는 이유는 무엇인가요?
-
미해결카프카 완벽 가이드 - 커넥트(Connect) 편
재설치 후 커넥트 실행 오류
안녕하세요. 저번에 카프카 재기동 오류에 관해 질문을 올렸던 수강생입니다. 카프카 실행에 관한 오류는 해결하였습니다만, 이번에는 connector가 실행되지 않는 오류가 발생하여 강사님 말씀대로 카프카 삭제 후 강의와 동일한 버전으로 재설치해보았습니다. 하지만 커넥터는 계속 똑같이 실행되지 않고 있습니다.. 아래는 connect_start_log.sh 입력 후 출력되는 로그 내용입니다.... 이 뒤로는 Retrying to fetch metadata만 반복적으로 출력됩니다. 끝없는 오류의 굴레에서 벗어나고 싶습니다.. 제발 도와주세요
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
카프카 스트림즈 관련해 질문있습니다.
안녕하세요 강의 막마지 수강중인대요topic에서 데이터를 가져와 가공을 한 뒤 다른 topic에(싱크프로세서) 데이터를 저장할 때 스트림즈를 사용하면 좋다고 강의를 통해 알게는 되었는대요 궁금한점은 topic 데이터를 가져와 처리후 다른 토픽이 아닌 db같은 곳에 데이터를 저장할 수도 있잖아요?그런경우는 스트림즈를 사용하지 않나요?위와 같은 흐름이 필요한대 그럴경우 어떻게 구성하는게 좋은가요? 스트림즈로 데이터를 처리해 다른 토픽에 넣고커넥트를 사용해 그 토픽에서 db로 저장하도록 구현하는게 좋을지 스트림을 통해 db까지 저장할 수 있는건지 궁금합니다 추가로, 데이터 가공시에 스트림즈에서 외부 db에서 데이터를 조회해서 가공하도록 해도 괜찮은가요?
-
미해결15일간의 빅데이터 파일럿 프로젝트
FileZilla 권한 거부
강사님하신대로 빠른연결하면 home/bigdata가 아닌 /로 들어가지고 home을 눌러서 bigdata로 들어가려해도 권한 수정되어있는데 제가 뭔가 빠뜨린건가요?bigdata 권한 수정해주면 될 것 같긴한데 추후에 문제가 생길까봐 문의드립니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
5. Cloudera Manager 구성 시 오류
강의와 똑같이 설정하고 돌렸는데 위와 같은 오류들이 발생하는데 해결 방법을 모르곗습니다 ㅠㅜ
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
로그인 후에도 403 에러가 뜹니다.
안녕하세요강의를 진행하던 도중 로그인 후에 jwt는 제대로 발급이 되는데 그 후 발급된 토큰을 사용하여 user-service에 접근을 시도하면 403오류가 뜹니다. 강의대로 제대로 잘 했는데 무엇이 문제인지 모르겠습니다.
-
미해결카프카 완벽 가이드 - 커넥트(Connect) 편
초기화 진행 후 카프카 구동이 안됩니다.
영상에 나온 설명대로 서버를 내려준 뒤 디렉토리 삭제 후 다시 생성- zookeeper 실행 --->여기까진 잘 됩니다.그런데 카프카 서버를 실행하려고 하면 이러한 로그가 나오면서 실행이 안되네요. 지금 계속 해결이 안돼서 여기서 진도를 못나가고 멈춰있습니다..
-
미해결15일간의 빅데이터 파일럿 프로젝트
클라우데라 접속 중 블루스크린 오류
안녕하세요. 아래 질문 글을 실수로 수정 대신 삭제를 눌러 다시 질문을 남깁니다.호스트 파일을 다음과 같이 구성하고 가상 머신을 작동시킨 후에 크롬을 통해 URL을 접속시도를 하면 블루스크린이 뜨며 컴퓨터가 다운됩니다. ㅠㅠ아래는 가상머신화면 과 호스트 파일을 첨부하여 올립니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
클라우데라 매니져 접속하기 오류
안녕하세요. 클라우데라 매니져 접속하기를 진행하는 도중 오류가 발생했습니다. server01.hadoop.com:7180 URL로 접속시 다음과 같이 접속이 되지 않고,IP 주소로 접속을 시도를 해보았는데, 블루스크린이 뜨며 컴퓨터가 종료됩니다.hosts 파일은 다음과 같이 수정하였습니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
스프링 부트 종료 시 오류
안녕하세요 강의를 수강하던 도중 Eureka에 연결해 놓은 프로젝트를 종료하면 모든 프로젝트에서 아래와 같은 에러가 발생합니다해결방안이 있을까요? 2024-05-28T23:22:04.304+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] o.s.c.n.e.s.EurekaServiceRegistry : Unregistering application APIGATEWAY-SERVICE with eureka with status DOWN2024-05-28T23:22:04.304+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] com.netflix.discovery.DiscoveryClient : Saw local status change event StatusChangeEvent [timestamp=1716906124304, current=DOWN, previous=UP]2024-05-28T23:22:04.304+09:00 DEBUG 42143 --- [apigateway-service] [nfoReplicator-0] c.n.discovery.InstanceInfoReplicator : Executing on-demand update of local InstanceInfo2024-05-28T23:22:04.304+09:00 DEBUG 42143 --- [apigateway-service] [nfoReplicator-0] c.n.discovery.InstanceInfoReplicator : Canceling the latest scheduled update, it will be rescheduled at the end of on demand update2024-05-28T23:22:04.304+09:00 INFO 42143 --- [apigateway-service] [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_APIGATEWAY-SERVICE/192.168.75.30:apigateway-service:8000: registering service...2024-05-28T23:22:04.309+09:00 INFO 42143 --- [apigateway-service] [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_APIGATEWAY-SERVICE/192.168.75.30:apigateway-service:8000 - registration status: 2042024-05-28T23:22:06.396+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] com.netflix.discovery.DiscoveryClient : Shutting down DiscoveryClient ...2024-05-28T23:22:09.402+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] com.netflix.discovery.DiscoveryClient : Unregistering ...2024-05-28T23:22:09.410+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] c.n.d.s.t.d.RedirectingEurekaHttpClient : Request execution error. endpoint=DefaultEndpoint{ serviceUrl='http://localhost:8761/eureka/} exception=Connection pool shut down stacktrace=java.lang.IllegalStateException: Connection pool shut down 중략... 2024-05-28T23:22:09.413+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] c.n.d.s.t.d.RedirectingEurekaHttpClient : Request execution error. endpoint=DefaultEndpoint{ serviceUrl='http://localhost:8761/eureka/}, exception=Connection pool shut down stacktrace=java.lang.IllegalStateException: Connection pool shut down 중략... 2024-05-28T23:22:09.413+09:00 WARN 42143 --- [apigateway-service] [ionShutdownHook] c.n.d.s.t.d.RetryableEurekaHttpClient : Request execution failed with message: Connection pool shut down2024-05-28T23:22:09.413+09:00 ERROR 42143 --- [apigateway-service] [ionShutdownHook] com.netflix.discovery.DiscoveryClient : DiscoveryClient_APIGATEWAY-SERVICE/192.168.75.30:apigateway-service:8000 - de-registration failedCannot execute request on any known servercom.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server 중략... 2024-05-28T23:22:09.420+09:00 INFO 42143 --- [apigateway-service] [ionShutdownHook] com.netflix.discovery.DiscoveryClient : Completed shut down of DiscoveryClientProcess finished with exit code 130 (interrupted by signal 2:SIGINT)
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
kafka 멀티 파티션 관련해 질문드립니다.
안녕하세요. 회사에 카프카 도입을 위해 강의를 수강중에 궁금한 사항이 있어 질문드립니다. 파티션을 여러개 만들어 사용하게 되면 같은 파티션 내에서는 순서를 보장할 수 있지만 멀티 파티션의 경우 파티션간의 순서는 보장하지 못하는걸로 아는대요 병렬처리가 되어야 처리량이 어느정도 확보가 될 것 같아 멀티파티션을 고려해야할 것 같은대 이러한 경우 멀티파티션에서도 순서를 보장할 수 있는 방법이 있을까요? 검색을 좀 해보니 스트림즈 사용시에 멀티파티션이어도 순서를 보장할 수 있다고 하는거 같기도한대 어떻게 하면 되는지 궁금합니다.