게이트웨이 서버 로그를 확인하던 중에 문득 이러한 생각이 들었습니다. 만약 이 프로젝트가 유저가 굉장히 많은 서비스라면 게이트웨이 자체에 부하가 생길 수 있을 것 같습니다. 요청의 수가 굉장히 많아 질 것 같은데, 이러한 경우에 부하분산을 어떻게 해야할까? 게이트웨이 하나에 모든 요청(각 서비스, 모니터링등등)이 많아지면 게이트웨이 서버에 문제가 생기지 않을까? 라는 생각이 들었습니다. 스케일업, 스케일아웃 이전에 부하분산할 수 있는 방법을 혹시 제시해주실 수 있으실까요? 현업에서는 어떻게 처리하는지 궁급합니다. 또 게이트웨이 서버를 하나 더 띄웠을때 시스템이 더 복잡해질 것 같은데, 어떤 방법들을 사용하고 어떤 점들이 고려되는지도 궁금합니다.
제가 강의를 따라하면서 설치를 잘 못하여서 sc delete RabbitMQ 명령어를 사용했고 이후 재설치하여 진행을 하는데 아래와 같이 실패를 하고 있습니다. 그래서 호환이 문제이가 싶어서 github에서 버전호환으로 다시 시도를 해도 같은 문제가 발생합니다. RabbitMQ 커멘드로 삭제 다운 실행 관련 명령어를 사용해도 권한 문제가 발생을 했고, 관리자 모드로 명령어를 날려도 권한 문제가 발생했습니다. 혹시 몰라서 cmd 관리자 권한으로 날려도, RabbitMQ-server에 sbin이라는 위치로 들어가서 명령어를 날려도 같습니다. https://stackoverflow.com/questions/16001047/rabbitmq-fails-to-start 위 stackoverflow에서 관련 정보를 찾아서 진행을 했는데 같은 문제가 발생 됩니다. 지금 한 3시간 정도 삽질을 하니 진이 빠지네요.. 도와주세욥...
어제 주키퍼 서버, 카프카 서버, 카프카 커넥트까지 정상적으로 동작했고 DB에서 데이터 등록 시 토픽 생성이 안되어 모두 삭제하고 재설치, 그리고 강사님이 올려주신 파일로도 해봤는데 주키퍼 서버 기동하면 포트 중복 오류가 뜹니다. 사용중인 포트도 없고 기본 포트번호를 바꿔봐도 똑같은 오류가 나오고 있습니다.. [2024-09-01 22:44:51,121] INFO Server environment:java.io.tmpdir=C:\Users\PC\AppData\Local\Temp\ (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,122] INFO Server environment:java.compiler=<NA> (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,122] INFO Server environment:os.name=Windows 10 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,123] INFO Server environment:os.arch=amd64 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,127] INFO Server environment:os.version=10.0 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,128] INFO Server environment:user.name=PC (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,128] INFO Server environment:user.home=C:\Users\PC (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,129] INFO Server environment:user.dir=C:\Work\kafka_2.12-3.4.0 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,130] INFO Server environment:os.memory.free=494MB (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,131] INFO Server environment:os.memory.max=512MB (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,131] INFO Server environment:os.memory.total=512MB (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,132] INFO zookeeper.enableEagerACLCheck = false (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,132] INFO zookeeper.digest.enabled = true (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,133] INFO zookeeper.closeSessionTxn.enabled = true (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,134] INFO zookeeper.flushDelay=0 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,135] INFO zookeeper.maxWriteQueuePollTime=0 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,135] INFO zookeeper.maxBatchSize=1000 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,136] INFO zookeeper.intBufferStartingSizeBytes = 1024 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,138] INFO Weighed connection throttling is disabled (org.apache.zookeeper.server.BlueThrottle) [2024-09-01 22:44:51,140] INFO minSessionTimeout set to 6000 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,140] INFO maxSessionTimeout set to 60000 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,143] INFO Response cache size is initialized with value 400. (org.apache.zookeeper.server.ResponseCache) [2024-09-01 22:44:51,143] INFO Response cache size is initialized with value 400. (org.apache.zookeeper.server.ResponseCache) [2024-09-01 22:44:51,145] INFO zookeeper.pathStats.slotCapacity = 60 (org.apache.zookeeper.server.util.RequestPathMetricsCollector) [2024-09-01 22:44:51,145] INFO zookeeper.pathStats.slotDuration = 15 (org.apache.zookeeper.server.util.RequestPathMetricsCollector) [2024-09-01 22:44:51,146] INFO zookeeper.pathStats.maxDepth = 6 (org.apache.zookeeper.server.util.RequestPathMetricsCollector) [2024-09-01 22:44:51,147] INFO zookeeper.pathStats.initialDelay = 5 (org.apache.zookeeper.server.util.RequestPathMetricsCollector) [2024-09-01 22:44:51,147] INFO zookeeper.pathStats.delay = 5 (org.apache.zookeeper.server.util.RequestPathMetricsCollector) [2024-09-01 22:44:51,148] INFO zookeeper.pathStats.enabled = false (org.apache.zookeeper.server.util.RequestPathMetricsCollector) [2024-09-01 22:44:51,151] INFO The max bytes for all large requests are set to 104857600 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,152] INFO The large request threshold is set to -1 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,153] INFO Created server with tickTime 3000 minSessionTimeout 6000 maxSessionTimeout 60000 clientPortListenBacklog -1 datadir \tmp\zookeeper\version-2 snapdir \tmp\zookeeper\version-2 (org.apache.zookeeper.server.ZooKeeperServer) [2024-09-01 22:44:51,197] INFO Using org.apache.zookeeper.server.NIOServerCnxnFactory as server connection factory (org.apache.zookeeper.server.ServerCnxnFactory) [2024-09-01 22:44:51,199] WARN maxCnxns is not configured, using default value 0. (org.apache.zookeeper.server.ServerCnxnFactory) [2024-09-01 22:44:51,201] INFO Configuring NIO connection handler with 10s sessionless connection timeout, 2 selector thread(s), 24 worker threads, and 64 kB direct buffers. (org.apache.zookeeper.server.NIOServerCnxnFactory) [2024-09-01 22:44:51,208] INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory) [2024-09-01 22:44:51,210] ERROR Unexpected exception, exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain) java.net.BindException: Address already in use: bind at java.base/sun.nio.ch.Net.bind0(Native Method) at java.base/sun.nio.ch.Net.bind(Net.java:555) at java.base/sun.nio.ch.ServerSocketChannelImpl.netBind(ServerSocketChannelImpl.java:337) at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:294) at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:89) at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:81) at org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:676) at org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:158) at org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.java:112) at org.apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.java:67) at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:140) at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:90) [2024-09-01 22:44:51,214] INFO ZooKeeper audit is disabled. (org.apache.zookeeper.audit.ZKAuditProvider) [2024-09-01 22:44:51,218] ERROR Exiting JVM with code 1 (org.apache.zookeeper.util.ServiceUtils)
강사님 강의 잘듣고 있습니다. 한가지 궁금점은 유레카 서버를 별도로 올리지 않아도 api-gate-way에서 first-service, secound-service 라우팅 및 필터가 가능한데 이떄 유레카의 용도가 무엇인기 궁금합니다. 유레카 서버로 부터 연결된 유레카 클라이언트 정보를 얻는다고 했는데... 유레카 서버를 off해도 routing은 정상적으로 이루어지더라구요 .. 제가 뭔가 잘못 이해하고 있는 부분이 있을까요?
Kafka, Kafka Connecet를 설치하기 부담스러우신 분들을 위해 제가 직접 이미지를 만들었습니다. https://hub.docker.com/r/didrkd684/inflearn-spring-cloud-kafka DB까지 docker compose로 사용하고 싶으신 분들은 아래 링크를 참고해 주시기 바랍니다. https://github.com/chocolaggibbiddori/spring-cloud/blob/main/kafka-docker/docker-compose.yml
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'scopedTarget.eurekaClient' defined in class path resource [org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration.class]: Unsatisfied dependency expressed through method 'eurekaClient' parameter 3: No qualifying bean of type ' com.netflix .discovery.shared.transport.jersey.TransportClientFactories<?>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} 해당 오류가 나는데 혹시 이유가 어떤건지 알 수 있을까요?
안녕하세요, 강의 잘 들었습니다. 기존에 로그인 후 발급한 토큰을 apigateway에서 검사했었는데 k8s 버전에서는 별도로 토큰을 검사하지 않는 것 같습니다. 로그인하는 의미가 없어질 것 같은데 이부분을 추가하려면 각 서비스에 따로 추가를 하는게 좋을까요? 아니면 중앙으로 처리하는 방법이 따로 있을까요?
먼저 좋은 강의 감사합니다. 현재 윈도우 환경에서 강의를 듣고 있습니다. 집킨 파트를 수강하는데 zipkin.jar 를 받을수 있는 방법이 없습니다. 윈도우에서는 강의에서 나온 curl 명령에서 bash 명령어가 먹지도 않고 해서 제대로 다운로드도 안됩니다. 해서 zipkin.jar 파일을 따로 올려주실수는 없으실지 문의 드립니다.
카프카 설치 시 오류가 납니다. 어떻게 해결 하나요? C:\SpringBoot\springcloud\kafka-demo\kafka_2.12-2.7.0\kafka_2.12-2.7.0>.\bin\windows\zookeeper-server-start.bat .\config/ zookeeper.properties \MySQL\Connector은(는) 예상되지 않았습니다.
#질문 배경# user-service , catalog-service , order-service 까지 실습을 하고 확인해보니 아래 사진들과 같이 각 서비스마다 다른 DB를 사용하는 것을 알게되었습니다. 마이크로 서비스들을 공통적으로 yml 파일에다 DB명을 msauser 라고 명명해 헷갈렸지만 말이죠. #질문#: 강의내용을 들어보고 생각해봤는데 실제로 마이크로 서비스를 배포할때 mysql같은 RDB를 각 마이크로 서비스들(3개라고 가정)이 사용한다고 가정하면 각 마이크로 서비스들이 사용할 DB 3개를 만들어줘야 한다고 이해하고 있습니다. 맞나요? (+ 다른 DB지만 메시징큐로 각 서비스들끼리 통신) 그런데 시스템에 DB의 양이 적다면 DB 1개만 만들고 각 마이크로 서비스들이 하나의 DB를 접근하게 구현하기도 하나요?
윈도우 사용자입니다. kafka-connect 설치 부분이 너무너무 어려워요 ㅠㅠ 목표는 kafka,zookeeper -> Docker 컨테이너로 관리 Kafka-Connect, JDBC connector 어떻게든 되기만 해보기, MySQL-jdbc connector 사용하기 입니다. 실제 사용할 때는 docker 를 이용하여 zookeeper 와 kafka 를 사용할 계획이라서 docker 를 사용 , zookeeper 와 kafka를 컨테이너로 관리할 계획입니다. 하지만 kafka-connect 부분 부터 JDBC 관련 부분까지 4~5일 동안 고생하고 있습니다. 시도했던 방법 1. -> 강의 내용 대로 해보기 저는 curl 명령어가 안되어서 curl.exe 로 진행해봤습니다. 강의에서 처럼 tar 명령어로 압축해제 할 떄 해제 중 아래와 같은 에러가 항상 발생하였습니다. 그래서 그냥 윈도우 마우스 우클릭으로 해제하면 가 발생하고 이 에러는 찾아도 안 나오더라고요 그냥 무시하고 진행하면 (건너 뛰기 ) 누르면 이런 에러가 발생하고 https://www.inflearn.com/questions/229060/%EC%95%88%EB%85%95%ED%95%98%EC%84%B8%EC%9A%94-connector-%EC%8B%A4%ED%96%89%EC%8B%9C-%EC%98%A4%EB%A5%98%EA%B0%80-%EC%83%9D%EA%B2%A8-%EC%A7%88%EB%AC%B8-%EB%93%9C%EB%A6%BD%EB%8B%88%EB%8B%A4 이 게시글의 답변을 참고하여도 여전히 변함없는 것을 확인한 이후에 도저히 설치는 못하겠다. 라고 생각해서 컨테이너로 올릴 수 있는 방법을 찾아보았습니다. 시도했던 방법 2-> https://velog.io/@ililil9482/kafka-db-%EC%97%B0%EB%8F%99-feat.-mysql 이 방식이 제가 생각한 워너비라서 그대로 따라 해도 오류가 발생합니다. Volume 설정이 제대로 안되는지 블로그 그대로 관리하고 해도 실제 jar 파일이 들어가지 않더라고요! 이외에도 정말 많은 방법을 시도했는데 번번히 실패하거나 저랑 실행 환경이 달라서 포기하였습니다. 검색도 많이하고 많이 읽어봤습니다. 이제는 진짜 죄송한데 혼자 해낼 자신이 없어요ㅠㅠ 윈도우 환경에서 kafka , zookeeper 컨테이너 관리 My-Sql jdbc connector 사용하기 Kafka-Connect, JDBC connector 어떻게든 되기만 해보기 이게 진짜 너무너무 하고 싶은데 방법이 없을까요?
User Service - 프로젝트 생성 강의 듣고 있는데요. 저는 yml에서 아래처럼 주었는데요. server: prot: 8761 http://localhost:8761/eureka/ 뜨다가 포트는 8080으로 시작한다는 메세지가 조회되는데요. 컴퓨터 내부에서 포트를 8761쓰다가 자동으로 8080으로 바꿨다는 얘기인가요? 2024-07-17T18:27:14.441+09:00 INFO 11100 --- [discover] [ main] c.n.eureka.cluster.PeerEurekaNodes : Adding new peer nodes [http://localhost:8761/eureka/] 2024-07-17T18:27:06.225+09:00 INFO 11100 --- [discover] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port 8080 (http) with context path '' 2024-07-17T18:52:42.764+09:00 INFO 10484 --- [discover] [ main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8080 2024-07-17T18:52:43.848+09:00 INFO 10484 --- [discover] [ main] c.e.d.DiscoveryApplication : Started DiscoveryApplication in 13.147 seconds (process running for 16.512)