묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)
인사말안녕하세요. 질 높은 강의를 제공해주셔서 너무 감사하다는 말씀드립니다.아직 강의를 모두 본 것은 아니어서, 제가 질문드리고자 하는 내용이 강의에 포함이 되어있을지 모르겠습니다만.. 궁금한 내용을 질문드립니다. 질문많은 모놀리식 프로젝트에서는 Spring Web + Spring Data JPA를 의존성을 주입하고 개발을 하고 저 또한 이러한 방식의 개발을 경험해왔습니다. Spring Data JPA와 Spring Web은 동기방식으로 동작하게 되는데, MSA의 독립 모듈을 만들 때 해당 의존성들을 사용하는 것이 바람직한지 모르겠습니다.강의의 내용처럼 하나의 서비스는 독립적으로 구성된 수십개에서 수백개의 독립된 애플리케이션으로 동작을 하게 될 것인데요. 상황에 따라 다르기는 하겠지만 Spring Web과 Spring Data JPA를 사용하는 독립된 애플리케이션이 있게 된다면 이쪽에서 병목이 일어나 엄청난 성능 이슈가 발생할 것으로 생각이듭니다.이와 같은 고민을 갖고 GPT한테 물어보니 WebFlux와 R2DBC를 사용하여 모두 비동기적으로 만드는 것이 권장되는 사항이라고 하는데 이 답변이 맞을까요? MSA를 구성한다고 한들, 모놀리식보다 성능상 좋지가 않으면 MSA로 구축할 필요성이 없을 것인데, 제가 우려하는 성능상의 심각한 문제 / 병목현상을 예방하기 위한 설계를 어떻게 해야하는지 너무 궁금합니다. 추가적으로는 Speing web이나 Spring Data Jpa가 MSA에거 어느 점에 필요하게 됭까요? 성능 관점에서 도무지 필요성을 느끼지 못하고있습니다.질문이 너무 두서가 없는데... 질문 내용이 강사님께 잘 전달되었길 바랍니다..!
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
도커 쿠버네티스 기다림 오류 문제..
강사님 그 챗지피티한테 물어보고 했는데 이렇게 기다리는 시간이 많으면 어떻게 처리해야 하는 지 궁금합니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
쿠버네티스 고급편은 언제 나오나요?
.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
어떤 것이 업데이트 된 건가요?
강의를 한 번 수강했던 수강생입니다.반년전 듣고 실습을 안해서 까먹어서 다시 들어볼려고 하는데 어떤 게 업데이트 된 건지 알 수 있을까요? 기존에 커리큘럼별 강의 제목은 같은데 업데이트 된 건가요? 아니면 새로 찍으신 강의가 별도로 올라와있는건가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
spring_cloud_gateway_requests_seconds_count를 Execute시 다른 요청을 하지 않았음에도 오류 요청의 숫자가 계속 증가합니다.
spring_cloud_gateway_requests_seconds_count{httpMethod="GET", httpStatusCode="401", instance="localhost:8000", job="apigateway-service", outcome="CLIENT_ERROR", routeId="user-service", routeUri="lb://USER-SERVICE", status="UNAUTHORIZED"}22spring_cloud_gateway_requests_seconds_count{httpMethod="GET", httpStatusCode="404", instance="localhost:8000", job="apigateway-service", outcome="CLIENT_ERROR", routeId="order-service", routeUri="lb://ORDER-SERVICE", status="NOT_FOUND"}회원가입과 로그인만 하더라도 이러한 것들의 숫자가 올라가 총 요청 수 중 성공한 숫자가 매우 적습니다. chat gpt에서는 자동으로 health-check를 해서 그렇다라고는 하는데 정확히 어떤 것이 문제인지 잘 모르겠습니다.
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Sink Connect시 테이블 생성아 안됩니다
현재 my-sink-connect 등록도 잘되었고 아무 문제없이 작동을 잘 합니다. 또한 파워쉘을 통해서 데이터가 shema형태로 잘 통신되는 것도 확인 잘 되었습니다. 하지만 my_topic_users 테이블이 생성되지 않아 문제가 생겼습니다. 오류 메시지나 로그 또한 아무것도 나오지 않아 해결을 어떻게 할지 잘 모르겠습니다. PS C:\Work\kafka_2.12-3.4.0> .\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic my_topic_users --from-beginning{"schema":{"type":"struct","fields":[{"type":"int32","optional":false,"field":"id"},{"type":"string","optional":true,"field":"user_id"},{"type":"string","optional":true,"field":"pwd"},{"type":"string","optional":true,"field":"name"},{"type":"int64","optional":true,"name":"org.apache.kafka.connect.data.Timestamp","version":1,"field":"created_at"}],"optional":false,"name":"users"},"payload":{"id":1,"user_id":"user1","pwd":"1111","name":"userA","created_at":1753221466000}}{"schema":{"type":"struct","fields":[{"type":"int32","optional":false,"field":"id"},{"type":"string","optional":true,"field":"user_id"},{"type":"string","optional":true,"field":"pwd"},{"type":"string","optional":true,"field":"name"},{"type":"int64","optional":true,"name":"org.apache.kafka.connect.data.Timestamp","version":1,"field":"created_at"}],"optional":false,"name":"users"},"payload":{"id":2,"user_id":"user2","pwd":"2222","name":"userB","created_at":1753221589000}}mysql> use mydb;Database changedmysql> show tables;+----------------+| Tables_in_mydb |+----------------+| orders || users |+----------------+ { "name": "my-sink-connect", "config": { "connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector", "delete.enabled": "false", "connection.password": "test1357", "auto.evolve": "true", "connection.user": "root", "tasks.max": "1", "topics": "my_topic_users", "value.converter.schemas.enable": "true", "name": "my-sink-connect", "auto.create": "true", "connection.url": "jdbc:mysql://localhost:3306/mydb" }, "tasks": [ { "connector": "my-sink-connect", "task": 0 } ], "type": "sink" }
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
질문있습니다.
예를들어서 스프링부트,mysql,redis를 연동해서 파드로 띄으고싶으면 deployment안에서 생성해야하는걸로 알고있습니다. 그러면 mysql-deployment.yaml redis-deployment.yaml springboot-deployment.yaml 이런식으로 3개의 파일을 만들어야하나요?그러면 디플로이먼트가 3개 생성되는걸/가요?
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Kafka connect 연결시 Mysql Access Denied 문제해결법
java.sql.SQLException: No suitable driver found for jdbc:h2:mem:testdbjava.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)현재 kafak connect 연결시 이런 오류가 뜹니다. order-service를 mariadb Driver로 설정했는데 왜 h2메모리방식의 드라이버를 찾는지 이유를 잘 모르겠으며 해결방법이 절실합니다. Kafka의 zookeeper, Kafka server는 현재 작동이 잘됩니다. 윈도우 사용자입니다. 도움이 절실합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Kafka connect 실행시 No suitable driver 해결이 안됩니다
현재 zookeeper, kafka server는 다 실행되고 topic list도 잘 나오는 상황입니다. 하지만 현재Caused by: java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/mydb이 에러 때문에 진도를 못나가고 있는 상황입니다. 강의 그대로 했음에도 불구하고 어떤것이 문제인지 모르겠습니다. 제발 도와주세요
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
pdf 자료에 섹션3 누락
섹션 3 [예제] 백앤드 서버를 파드로 띄어보기가 없습니다..pdf 수정부타드립니다
-
미해결마이크로서비스 디자인 패턴 완벽 가이드
k8s 를 고려한 개발은 어떻게 진행하나요?
안녕하세요. 강의 흥미있게 듣고있습니다.궁금한 점이 있는데, 스프링 클라우드에서 제공하는 api-gateway 나 config server, discovery 등 k8s 로 배포하게 되면 각각 대체할 수 있는 서비스 들이 존재하는데,실제 실무에서 개발할때는 어떤식으로 진행하는지 궁금합니다.스프링 클라우드로 개발한 후 k8s에 맞게 변경하나요? 아니면 처음부터 k8s 에 겨냥해서 개발을 진행하나요?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
pvc CrashLoopBackOff 문제
/c/Users/User/Desktop/aws/mysql (main) $ kubectl logs -f mysql-deployment-dc94cbd74-pzjvm -c mysql-container 2025-07-15 12:40:56+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 9.3.0-1.el9 started. 2025-07-15 12:40:56+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' 2025-07-15 12:40:56+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 9.3.0-1.el9 started. '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock' 2025-07-15T12:40:56.554602Z 0 [System] [MY-015015] [Server] MySQL Server - start. 2025-07-15T12:40:56.757217Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 9.3.0) starting as process 1 2025-07-15T12:40:56.761789Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. 2025-07-15T12:40:56.765848Z 1 [ERROR] [MY-012592] [InnoDB] Operating system error number 22 in a file operation. 2025-07-15T12:40:56.765898Z 1 [ERROR] [MY-012596] [InnoDB] Error number 22 means 'Invalid argument' 2025-07-15T12:40:56.765913Z 1 [ERROR] [MY-012646] [InnoDB] File (unknown): 'close' returned OS error 122. Cannot continue operation 2025-07-15T12:40:56.765918Z 1 [ERROR] [MY-012981] [InnoDB] Cannot continue operation. 이런 에러가 반복적으로 뜹니다. 메뉴얼 대로 했는데 혹시 무엇이 문제일까요..?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
AMI 유형
강의 1:52 노드 그룹 컴퓨팅 구성할 때 이번에 올려준 강의랑 AWS EKS 컴퓨팅 구성 AMI 유형 리스트가 다른데 강의의 유형 Amazon Linux 2 Arm ( AL2_ARM_64 ) 이거랑 Amazon Linux 2023(arm64) Standard(AL2023_ARM_64_STANDARD)랑 같은건가요?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
마스터 노드 vs 워커 노드
[ EKS 생성 시 ]→ AWS가 마스터 노드(제어 플레인)를 자동 생성[ 노드 그룹 생성 시 ]→ 사용자가 EC2 기반 워커 노드 그룹(또는 Fargate)을 생성[ Pod 배포 시 ]→ 사용자가 kubectl 또는 Helm 등으로 명령 → 마스터 노드가 스케줄링 → 워커 노드에서 컨테이너 실행위의 FLOW로 이해하고 있는데워커 노드는 생성하는데 마스터 노드는 EKS 생성할 때 생성된다고 하는데 정확히 마스터 노드 역할이 뭔지 이해가 잘 안되네요 ㅠㅠ eks 생성할 때 설정해주는 값에 따라서 달라지게 되는건지 그냥 무조건 DEFAULT 생성인건지..
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
aws eks --region ap-northeast-2 update-kubeconfig --name kube-practice 권한 거부
C:\Users>aws eks --region ap-northeast-2 update-kubeconfig --name kube-practiceAn error occurred (AccessDeniedException) when calling the DescribeCluster operation: User: arn:aws:iam::149536462938:user/my-computer is not authorized to perform: eks:DescribeCluster on resource: arn:aws:eks:ap-northeast-2:149536462938:cluster/kube-practice클러스터 전환이 안되는데 왜 이럴까요?우선 루트 사용자로 전환하니까 되긴 했습니다AllowEKSDescribeCluster고객 인라인인라인AmazonEC2ContainerRegistryFullAccessAWS 관리형직접AmazonEKSClusterPolicyAWS 관리형기존 iam유저 권한은 이렇게 지정되어 있습니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
안녕하세요 라우트 과정에서 http프로토콜 -> lb 프로토콜 질문 있습니다.
기존에는 http://localhost:8081 과같이 보내줬는데, 이걸 lb:/MY-FIRST-SERVICE로 바꿨습니다.그렇다면, 원래 localhost:8081로 직접 http 프로토콜로 보내줬던건, 유레카를 거치지 않았고, 하드코딩으로 직접 보내줬던 것이고, 그리고 lb:/를 이용하는 것이 유레카에 저장되어 있는, 정보들을 통해 읽어와서 동적으로 보내주는 것으로 이해하였는데, 제가 이해한게 맞을까요?
-
해결됨RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기
Producer/Consumer 단위
학습중 궁금한 것은 언제든 문의 하세요.질문을 최대한 자세히 남겨주시면 반드시 답변 드리도록 하겠습니다.추가로 알고 싶은 내용도 요청해주시면 강의 자료를 업데이트 해서 제공할 예정입니다.저만 궁금한 걸 수 있는데, 예를들어 Producer가 두개일 때 이 경우는스프링 애플리케이션의 publish하는 두개의 스레드를 의미하는 건지...애플리케이션 두 개를 의미하는 건지...아니면 커넥션 두개를 의미하는 건지...무엇을 기준으로 Producer/Consumer 단위를 세는건지 아시나요 ?
-
해결됨RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기
안녕하세요 섹션2. 12번 강의에서 질문 있습니다.
안녕하세요 강의 잘 듣고 있습니다. 섹션2 12번 강의에서 (관심사기반의뉴스레터발행/구독모델) 에서 질문 있습니다.fanout exchange는 바인딩된 모든 큐에 메시지를 보내는 방식이므로 모든 큐에 메시지가 가는 것으로 알고 있습니다.예를 들어 제가 java 라는 특정 topic을 구독하면 java queue 에 있는 메시지만 계속 소비할텐데, 그러면 나머지 spring queue나 vue queue 에는 메시지가 계속 쌓여 문제가 되는 것 아닌가요 ?발행/구독 모델을 왜 fanout exchange로 구현하신 건지 궁금합니다.
-
해결됨RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기
안녕하세요 "섹션2 8. Consumer간 작업 분배" 에서 질문 있습니다.
안녕하세요. 강의 잘 듣고 있습니다.섹션2. 8번 강의 11분 13초 쯤에 하시는 말씀에 의문이 들어 질문글 남깁니다. 이 부분 설명하실때 ' 컨슈밍을 할때 파라미터로 받은 초를 슬립을 준 뒤에 소진을 하겠다' 라고 하셨는데, 메시지를 받은 순간 이미 소진이 시작 된 것이고 각각 2초 4초 5초뒤에 소진이 끝나는 것 아닌가요? 조금 헷갈려서 질문 드립니다.좋은 강의 감사드립니다.
-
미해결옆집 개발자와 같이 진짜 이해하며 만들어보는 첫 Spring Boot 프로젝트
향후 강의 일정에 대해 문의드립니다!
안녕하세요! 미리 1탄부터 1.5탄 구매했고요, 2탄도 구매해서 수강예정입니다, 강의가 넘 재밌고 이해가 쉽습니다! 강사님이 웃으실 때 저도 덩달아 따라 웃게되네요 ^___^;;앞으로 MSA 기반 Spring Cloud와 MSA 인프라 구현을 위한 도커 및 쿠버네티스도 강의 신청 드려도 되는 지 문의드립니다!현재 강사님의 현업 업무 경험으로 MSA 와 Spring Cloud가 백엔드 취업에 어떠한 도움이 되는 지 궁금합니다!그리고 JPA vs MyBatis 중에 현재 백엔드 취업 시장에서 강사님의 Pick이 어떠한 지 궁금합니다! 모든 기술을 통합하고 융합한 백엔드 취업용 초보 신입 개발자 포트폴리오용 프로젝트 강의를 언제쯤 출시해주시는 지 문의드립니다!