묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
IOCP 워커 스레드 순서 보장 질문 드립니다.
루키스님 안녕하세요?C#서버 강에서 넘어와서 C++서버 공부하고 있습니다. C# 서버와 비교하면서 공부하다 워커 스레드 순서 보장이 궁금해서 질문 드리게 되었습니다. C# 서버에서는 Room.Flush()따위를 메인 함수의 와일루프에서 호출해서 단일 스레드로 처리하기 때문에 순서보장이 되는 것을 직관적으로 이해했습니다. 여기 예시에서는 워커스레드를 5개를 배분해주셨습니다. C# GameRoom으로 빗대면, 긴~~ 작업 Job A와, 짧은 B가 있는데 A->B 순서로 진행이 되어야 한다고 하면, 1번 워커 스레드는 먼저 들어온 A를 처리중..2번 워커 스레드가 이어서 들어온 B 작업을 처리.. A보다 먼저 처리 완료.1번 워커 스레드가 처리중인 A 처리 완료..이렇게 B->A 순서로 처리가 될 것 같다는 생각이 들었습니다. Q1. IOCP 워커 스레드가 순서 보장이 되는지?Q2. 그럼에도 불구하고 워커스레드를 N개 하신 이유가 있을 것 같은데 C#도 그렇게 할 수 있을지? 예를 들어 Room의 처리를 1, 2, 3, 4, 5번 스레드를 파서 동시에 처리 할 수 있을지?Q3. C# 서버에서는 Room에 1개의 스레드를 배분한 특별한 이유가 있는지?궁금합니다.
-
미해결
member 부분 깃허브 업로드 요청
회원 목록을 한눈에! 리액트로 만드는 효율적인 사용자 리스트 << 동영상 board 제목, 내용 작성하는 부분이 갑자기 튀어나왔는데, 어떻게 렌더링 됐는지 모르겠어요깃허브 올려주신 내용은 전체적인 부분이라서 (board1~6까지 ) 중간에 내용을 따라가는데 계속 버벅거리네요...그리고 member 부분은 갑자기 튀어나와서 혼란스럽습니다.리액트 처음 접해봐서. 설명해주시는 내용 코드 같이 치면서 따라가고 싶었는데 참 답답하네요...ㅠㅠ member부분은 올려주신 깃허브에도 내용이 없어요이거라도 올려주세요....
-
해결됨개발자를 위한 쉬운 도커
Docker leafy-backend 실행오류
https://www.inflearn.com/community/questions/1532164/docker-%EB%B0%B1%EC%95%A4%EB%93%9C-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-%EC%8B%A4%ED%96%89%EC%8B%9C-%EC%98%A4%EB%A5%98이 글처럼 똑같이 안되고있습니다.Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processorMetrics' defined in class path resource [org/springframework/boot/actuate/autoconfigure/metrics/SystemMetricsAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.instrument.binder.system.ProcessorMetrics]: Factory method 'processorMetrics' threw exception; nested exception is java.lang.NullPointerExceptionat org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1616) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1573) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1417) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1349) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultListableBeanFactory$DependencyObjectProvider.resolveStream(DefaultListableBeanFactory.java:2119) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.DefaultListableBeanFactory$DependencyObjectProvider.orderedStream(DefaultListableBeanFactory.java:2113) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryConfigurer.addBinders(MeterRegistryConfigurer.java:87) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]at org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryConfigurer.configure(MeterRegistryConfigurer.java:68) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]at org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryPostProcessor.postProcessAfterInitialization(MeterRegistryPostProcessor.java:64) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:455) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1808) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.26.jar!/:5.3.26]... 71 common frames omittedCaused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.instrument.binder.system.ProcessorMetrics]: Factory method 'processorMetrics' threw exception; nested exception is java.lang.NullPointerExceptionat org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.26.jar!/:5.3.26]at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.26.jar!/:5.3.26]... 93 common frames omittedCaused by: java.lang.NullPointerException: nullat java.base/jdk.internal.platform.cgroupv2.CgroupV2Subsystem.getInstance(Unknown Source) ~[na:na]at java.base/jdk.internal.platform.CgroupSubsystemFactory.create(Unknown Source) ~[na:na]at java.base/jdk.internal.platform.CgroupMetrics.getInstance(Unknown Source) ~[na:na]at java.base/jdk.internal.platform.SystemMetrics.instance(Unknown Source) ~[na:na]at java.base/jdk.internal.platform.Metrics.systemMetrics(Unknown Source) ~[na:na]at java.base/jdk.internal.platform.Container.metrics(Unknown Source) ~[na:na]at jdk.management/com.sun.management.internal.OperatingSystemImpl.<init>(Unknown Source) ~[na:na]at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl.getOperatingSystemMXBean(Unknown Source) ~[na:na]at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl$3.nameToMBeanMap(Unknown Source) ~[na:na]at java.management/sun.management.spi.PlatformMBeanProvider$PlatformComponent.getMBeans(Unknown Source) ~[na:na]at java.management/java.lang.management.ManagementFactory.getPlatformMXBean(Unknown Source) ~[na:na]at java.management/java.lang.management.ManagementFactory.getOperatingSystemMXBean(Unknown Source) ~[na:na]at io.micrometer.core.instrument.binder.system.ProcessorMetrics.<init>(ProcessorMetrics.java:81) ~[micrometer-core-1.9.9.jar!/:1.9.9]at io.micrometer.core.instrument.binder.system.ProcessorMetrics.<init>(ProcessorMetrics.java:76) ~[micrometer-core-1.9.9.jar!/:1.9.9]at org.springframework.boot.actuate.autoconfigure.metrics.SystemMetricsAutoConfiguration.processorMetrics(SystemMetricsAutoConfiguration.java:59) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.26.jar!/:5.3.26]... 94 common frames omitted docker logs -f leafy 했을 때 이렇게 나와요..커뮤니티에 나와있는대로 삭제했다가 다시 깔아봤고, name을 잘못적었는지도 확인해보았는데 전혀 잘못된게 없었습니다.leafy-postgres도 'Leafy 애플리케이션 구성' 강의에서 말씀하신것처럼 정상작동하는 것도 확인했습니다.docker inspect leafy-postgres | grep -A 2 "Networks" 를 치면 "Networks": { "leafy-network": { "IPAMConfig": null, 이렇게 나오고 있습니다.어떻게 해야할까요 빠른답변 부탁드리겠습니다.
-
미해결[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
소스코드 관련 문의드립니다.
안녕하세요.프로젝트를 진행하면서 문제 발생했을 때 git 소스 코드만 보고 찾기 어려움이 있습니다.. 커리큘럼을 보니 콘텐츠 개발은 완료된 것 같고 출시 준비만 남은 것같은데 혹시 전체 프로젝트 소스에 대해서 받을 수 있을까요?? 가능하시다면 링크를 주셔도 가능하고 이메일로 첨부해주셔도 됩니다!이메일:guddn1234k@naver.com
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
API KEY 숨기기
API KEY를 숨겨서 github에 올리고 싶은데 플러터에서는 어떻게 하면 좋을까요?
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "실전편"
json-server 관련 질문입니다.
db.json 파일 수정시npx json-server db.json바로 적용이 안되고, 위 명령어로 재기동 해줘야 적용되는거져?영상에서는 바로바로 적용되는거 같던데.. 뭐가 문제일까요?
-
해결됨고도 엔진(Godot Engine)을 통한 게임 개발 박치기!! - 기본 개념부터 실전 게임 제작까지 한방에!
섹션2 규칙의 필요성 부분에서 Godot 4 Function Chaining 이란?
get_tree().get_root() 이렇게 코드 작성하는데,get_tree().root 와 결과는 같은지요?? 같다면 어떤차이가 있는지?? 유니티 엔진에서도 닷 (.) 를 이용한 " 객체. 메서드 " 형식은 사용되는데.. 메서드 ().메서드 ().메서드 () godot 4에서는 자주 사용되는거 같아서 검색해서 찾아본결과 Function Chaining 이라고 하는데.. 좀 자세한 설명 부탁드립니다..^^
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
좋은 설계
소형 테스트를 추구하며 테스트를 더욱 쉽게 바꿔보니 헥사고날 아키텍처가 되었고 이것이 테스트 코드를 쉽게 바꾸다보면 좋은 설계가 된다. 라는 것의 예시라고 봐도 될까요?
-
해결됨프론트 개발자를 위한 백엔드 101 (NestJS, TypeORM)
터미널에서 자동완성 되는건 어떤 프로그램인가요?
터미널에서 자동완성 되는건 어떤 프로그램인가요?맥유저입니다
-
미해결쉽게 설명하는 AWS 기초 강의
interface endpoin 질문
안녕하세요 aws 입문자입니다 질문이하나있습니다.! 29:21 보시면 그림을private subnet 에서 public subnet 의interface endpoint를 이용해서 sqs 를 통신하는 그림인데선생님이 설정하신건 private subnet에 interface endpoint 만드신거 아닌가요 ?? (27:52)햇갈립니다!
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
RISS사이트 링크 에러
RISS사이트 크롤링 연습중입니다.링크 관련 부분 가져와서 클릭시 다음의 에러가 나오는데 원인이 어떻게 될까요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨친절한 블렌더 - [LV.3] 캐릭터 애니메이션
귀까지 Generate Rig 되지 않습니다~
28:07, 영상에서는 귀까지 Generate Rig 되었는데 저는 아래 스크린샷과 같이 되지 않습니다ㅠㅠ 해결 방법이 궁금합니다.
-
미해결한 장의 CheatSheet로 살펴보는 C#
수업자료
올려주신 노션 수업자료를 프린터해서 읽고 싶은데인쇄 가능하게 설정해주시면 안될까요?
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "실전편"
짐코딩님 질문 드립니다.
짐코딩님 안녕하세요. 강의듣는 프리랜서 개발자입니다. 질문) 이런 프론트엔드 Vue, React 이런것들 처음 공부하실때 공부방법을 어떻게 가져가시나요? 강의영상 보다보니 이렇게 개념을 하나씩 알려주려면 생각보다 많은 양의 공부가 필요해 보이는데요.프리랜서로 활동중이라 쉬는 기간에 한 개씩만 언어 익히고 있습니다만.. 개인적인 질문이긴 하나 처음 공부하실때 어떤순서로 공부하시는지 공부방법 여쭤봅니다. 꾸벅~
-
해결됨350개의 개인 앱을 만들어 월급의 7배 수익을 달성한 방법
보상형 광고 첫 로드 타이밍을 언제로 하시나요?
안녕하세요. 저는 앱 시작 후 보상형 광고를 로드하고 캐싱해서 사용중입니다. 이렇게 하는 이유는 미리 광고를 로드해놓고 유저가 광고 요청을 할 경우 바로바로 보여주기 위해서 입니다. 구글 애드몹 데이터를 유심히 보지 않았었는데 강의를 듣고 유심히 데이터를 보다보니 요청, 노출수, 일치율에 비율이 많이 차이가 나서 질문드려봅니다. 질문1) 혹시 강사님께서는 만약 보상형 광고를 쓰고 계신다면 언제쯤 광고 요청을 하시는지 궁금합니다. 질문2) 광고 요청에 관한 노하우가 있으신지 궁금합니다. 그리고 eCPM 을 이제까지 한번도 변경하지 않고 사용했었는데 강의 듣고 eCPM 을 높은 최솟값으로 변경하여 테스트를 해보았습니다. eCPM 은 높게 올랐었지만 일치율이 상당히 낮아졌고 수익 변환에는 크게 변동이 없었던것 같습니다. 몇일간 테스트를 해보았지만 낮아진 일치율 수치가 불안하여 다시 모든가격으로 원상복구 해놓은 상태입니다. 질문 3) eCPM 변경 후 얼마정도 지나가 효과가 발생했는지 판단을 내려야 하는지 궁금합니다. 질문 3) eCPM을 높은 최솟값으로 변경하였더니 일치율이 급격하게 줄어들었습니다. 일치율이 낮으면 문제가 많이 발생한것으로 봐야 하는지 궁금합니다. 이상입니다~ 감사합니다!
-
해결됨350개의 개인 앱을 만들어 월급의 7배 수익을 달성한 방법
개발 방법론의 개발 범위
안녕하세요. 강의 너무 알차게 듣고 있습니다. 아직 첫주행중이라서 말씀하시고자하는 바를 흡수하지 못해 십여차례들을 예정인데요. 중간에 궁금한게 있어서 질문을 남기게 되었습니다.소중한 배움에 기회를 주셔서 감사합니다. 개발 방법론으로 FE, DB 등 테이블 structure을 공유해주셨는데요. 혹시 만드시는 어플리케이션은 댓글, 커멘트, 게시물 수정과 같은 기능도 다 포함이 되어있나요? 혹시 맞다면, 모든 2~300여개의 어플리케션 중 comment, post등이 필요한 application이 30개 있다고 가정 하였을때, 이 어플리케이션의 모든 post나 comment는 각각 하나의 테이블에 다 저장되어 있고, appId를 통해서 query로 불러오게 되는건가요?
-
해결됨350개의 개인 앱을 만들어 월급의 7배 수익을 달성한 방법
안녕하세요 계정, 서버, 언어 질문 드립니다.
안녕하세요 프로그래밍 좀비님열심히 준비해주신 강의 잘 듣고 있습니다^^듣는 중 몇 가지 궁금한데 강의 내에는 없는 내용이 있어서 별도로 질문 드리고자 합니다.계정 정지 시에, 동일한 핸드폰 번호, 이메일 등 연관 된 계정이 함께 삭제 된다고 강의 중 말씀하셨는데, 그럼 계정 생성 시에 모두 다른 핸드폰 번호, 이메일 등 다른 개인 정보를 사용해야만 하는 건가요?애드몹관련 궁금한게 많은데, 앱에 애드몹을 달때, 애드몹 심사를 앱마다 받아야 하는건가요? 계정 하나에 무제한으로 애드몹을 생성(?) 할 수 있는건지도 궁금합니다. 보통 앱에 애드몹을 달때 어떤 과정을 거치실까요? 서버와 디비 관련 궁금한 게 있습니다.아직 앱 수익에 대한 확신이 없어서 비용이 발생하는 서버와 디비에는 소극적으로 접근하고 있습니다.무료로 제공하는 AWS의 경우 조금만 트래픽이 발생해도 엄청난 과금이 발생한다는 카더라를 듣고 시작을 못하고 있는데,좀비님의 경우 처음 앱 작업부터 서버와 디비 함께 작업하셨는지 궁금합니다.사용하셨다면 AWS 무료 플랜으로 사용하셨을까요?강의 내에는 코드 내용은 전혀 나오지 않아서 이것도 궁금해 졌는데 개발 하실 때 어떤 언어 사용해서 개발 하시는지도 궁금합니다.현재 OpenAPI를 사용해서 리액트네이티브로 프론트만 작성해서 서버 없이 앱을 개발하고 있습니다. DB는 SQLite를 사용합니다. 일단 이번 앱의 목표는 출시에 의의를 두자는 마음으로 작업하고 있는데요. 좀비님도 이런 식으로 앱을 출시 한 적 있으실까요? 아니면 모든 앱에 서버가 사용되고 있나요?귀한 시간 내어 답변 주시는 것에 미리 감사드립니다.
-
미해결그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
터미널 설정
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.vs code에서 터미널 설정할 때 mac은 어떤 걸로 설정을 하며 되나요?
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
MVVM 예시 파일에서 파싱에러
안녕하세요.MVVM 예시 파일에서 파싱에러가 뜨는데, 해결이 안되어서 문의 남깁니다. MVVM 개념 - BasicMusic-MVVM (Better) 에서 apple music api에서 가져온 데이터가 파싱에러가 뜹니다. 감사합니다 !
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
메모리 크기
JVM 관련프로그램인데 micro인 1GB로 메모리를 설정하면 프로그램이 뻗을 일은 없을까요?(1번과 연계해서) 현재 SSR로 화면 그려주고 있는데, api처리 + 빈 컨테이너(Springboot) + Kotlin + 템플릿엔진(타임리프) 까지 했을때 1GB를 초과하지는 않으셧는지도 궁금합니다!만약에 화면을 다른 언어/라이브러리(Vue, React)로 개발하게 된다면 CORS라던지 건드려야 될게 많아지고, 추가로 node 환경을 또 띄워야 되서 메모리가 부족하게 될 수도 있을까요?