안녕하세요 영한님 항상 좋은 강의 감사드립니다 Accept-Language를 적용하게되면 요청시 서버가 클라이언트가 요청한 언어에 최대한 맞는 언어로 응답을 보낸다고 말씀하셨는데 이 때, 다중 언어 지원 서버라고 하는 것은 HTML Language가 EN, KO로 모두 작성되어있어서 백엔드(웹프레임워크)단에서 언어에 따른 HTML 취사선택이 가능하도록 구현되어있을 경우를 이야기하는 것인지 궁금합니다. 연말이 다가오고 있습니다 코로나 확진자도 많아지는데 질문 답변해주시는 서포터님들께 항상 감사드리고 코로나 조심하시고 연말 따뜻하고 건강하게 보내시길 바라겠습니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. docker-compose.yml 에 이전강의로 인해 dockerfile: Dockerfile.dev 로 설정이 되어있는데요. ports 도 개발환경으로 인해 3000:3000 이구요. 이번 강의에서는 docker build -> docker run 으로 하셨는데 운영환경에서는 굳이 docekr-compose 를 쓸 이유가 없는건가요?
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part9: MMO 컨텐츠 구현 (DB연동 + 대형 구조 + 라이브 준비)
안녕하세요. 강의에서 대기열 기능에 대해 언급해 주셨는데 대기열 기능의 경우 최근에 생긴 개념으로 보이고 저마다 구현 방법도 공통점도 있지만 조금씩 다를 것이라 생각합니다. 혹시 대기열이 발생하는 조건과 빠져나가는 조건등은 일반적으로 AccountServer <-> GameServer 간에 어떻게 판단되고 통신되는지 궁금합니다. 이후 AccountServer 강의에서 다루어 주실 지 모르지만 일단 질문을 남겨봅니다. 그리고 이전에 경험해 보셨던 실 서비스에서 AccountServer와 DB의 경우 1대였고 1:N으로 GameServer들과 통신했었는지 궁금합니다.
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part9: MMO 컨텐츠 구현 (DB연동 + 대형 구조 + 라이브 준비)
안녕하세요. 강의에서 실제 서버 부하 테스트에서는 클라이언트들이 똑똑한 AI를 갖는게 아니라 서버에 부하만 줄 수 있을 정도의 AI를 갖는 것이 대부분이라고 말씀해 주셨는데요. 요즘 나오는 게임들을 보면 Auto기능이 있어서 클라이언트가 알아서 성장하고 퀘스트를 깨고 그럽니다. 그렇다면 자동 성장 MMO 에서는 부하 테스트의 방식이 조금 달라졌다고 볼 수도 있을까요? 그리고 다른 분이 질문해주신 Q/A를 읽다보니 테라나 WOW같은 게임에서는 간헐적으로 발생하는 미해결의 버그들이 많다고 말씀하셨는데 몇 년 정도 오래 서비스 한 게임들은 대부분의 버그들은 다 잡히는 것이 아닌지 궁금합니다.
** 답글에 해당 현상에 대한 해결법 남겨두었습니다.** 안녕하세요, 제로초님. 강의를 들으며 따라 하고있는데 같은 부분에서 1시간째 막혀 있어서 질문 남겨봅니다. 프론트 코드에 withCredentials 옵션을 추가한 후부터 하단의 그림과 같이 CORS 에러가 나기 시작했습니다. 강의와 똑같이 백엔드에 cors 옵션을 추가했습니다. 하다하다 안되어 제로초님 깃헙의 코드를 그대로 복붙했는데도 똑같이 cors에러는 계속 나는데 왜이럴까요..? [backend > app.js 파일] 프론트에서 옵션을 withCredentials 추가한 후로 계속 나네요. 저 옵션을 빼면 로그인이 잘 됩니다. 프론트에 쿠키를 전달하려면 이 옵션을 사용해야 한다고 하여서 해보는 중입니다만 막막하네요.. 혹시 왜이런지 아실까요? [frontend > store > users.js 파일] withCredentials : true , 위 옵션을 로그인에서 제거를 한다고해도, 로그아웃 할 때도 추가하면 똑같이 cors에러떠서 로그아웃이 pending이 걸려버리더라구요..
안녕하십니까 영한님 복습하면서 강사님 책을 보다가 임베디드 타입은 기본 생성자가 필수다 라는 말씀을 하셨습니다. 그래서 임베디드 클래스도 persistent class인가 생각해보았습니다. 제 생각에는 persistent class는 db 테이블에 객체를 저장하는 클래스? 라고 생각하고 있었습니다. 그래서 임베디드 타입도 persistent class라고 생각이 들었고(엔티티 클래스가 저장이 될 때 임베디드 타입도 결국 같이 저장되므로), 이 생각이 맞다면 persistent class의 조건인 기본 생성자가 있어야해서 임베디드 타입에 기본 생성자가 필수라고 말씀하신건가요? 그리고 JPA에 관한 공식 문서는 hibernate를 보면 되는건가요,,?? 해당 부분을 공식문서로 찾아보고 싶습니다..
선생님 6강 수강중 http://localhost:8081/web/index.html을 쳐도 이렇게만 계속 뜨네요. 이런건 도데체 어떻게 원인을 찾아가야할지 몰라서 너무 답답하고 아무리 해도 해결 되지가 않네요 톰캣 서버를 다시 restart해도 안되고 뭐가 문제인지 모르겠어서 미치겠습니다ㅠ 도와주시면 감사하겠습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. def calc (): a = 3 b = 5 def mul_add ( x ): return a * x + b # 함수 바깥쪽에 있는 지역 변수 a, b를 사용하여 계산 return mul_add # mul_add 함수를 반환 c = calc () print ( c ( 1 ), c ( 2 ), c ( 3 ), c ( 4 ), c ( 5 )) 요렇게 쓸때 mul_add함수에서 a,b를 return할때는 또 nonlocal 설정이 불필요하더라구요 이 부분이 좀 이해가 안됩니다!
안녕하세요!! 강의 잘 듣고 있습니당 강의를 듣다보니까 궁금한 점이 생겨서 질문드립니당 결국 spof를 막기 위해서 master salve db를 나눠서 하는 것도 이유가 있지 않겠습니까?? 그런데 만약에 proxy sql이.. 죽는다면..?? 그때는 어떤 방법이 있는지 궁금해서 질문하게되었습니당 혹시 proxy sql도 이중화를 하나영 현업에서?? 제가 아직 학생이라 현업에서 어떻게 하는지 궁금해서 질문합니당
강의와 똑같이 했는데 안드로이드 버전 때문인지 저는 chat_lsit.xml의 design에서 recyclerview 끌어다 놔도 디펜던시 추가하는ㅇㄹ 화면안떳구요 그냥 수동으로 implmentation 코드 입력해서 넣어도 안됩니다. layoutManager 코드 삽입해도 해결안됩니다. 부탁드립니다. app :layoutManager ="androidx.recyclerview.widget.LinearLayoutManager"
쉽게 처음하는 파이썬 고급 크롤링 [Scrapy, Selenium, Headless Chrome]
아래 내용과 같이 from ecommerce.items import EcommerceItem itemps.py 안에 작성한 EcommerceItem 클래스를 인지를 못는데 vscode 환경설정을 문의 드립니다. 오류 내용은 아래와 같습니다. ModuleNotFoundError: No module named 'ecommerce'
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] server.servlet.session.timeout 를 공부하다가 궁금증이 생겼습니다. 제가 자주 다니는 사이트들은 로그인을 한 번 하면 제가 브라우저를 껐다고 켜도, 며칠이 지나도 로그인 상태를 유지합니다. 단순히 server.servlet.session.timeout 또는 server.servlet.session.cookie.max-age 를 길게 잡는다고 이렇게 장기간 로그인 상태를 유지할 수 있을 거 같지는 않다고 생각합니다. 대체 어떤 방식을 사용하면 이런 장기간 로그인 상태 유지가 가능한 걸까요?
강의에선요 포맷터 사용할때 Assertions.assertThat(conversionService.convert(1000, String.class)).isEqualTo("1,000"); 이렇게 사용했잖아요. 근데 제 이클립스에선 저렇게 사용하면 테스트 에러가 나서 곰곰히 생각해보다가 그 밑에 있는 Assertions.assertThat(conversionService.convert("1,000", Long.class)).isEqualTo(1000L); 문자 "1,000"을 1000L로 바꿔주는 코드를 참고해서 이게 반대로 생각해보면 Long형을 파라미터로 넣어줘야 에러가 안나나? 해서 Assertions.assertThat(conversionService.convert(1000L, String.class)).isEqualTo("1,000"); 이렇게 파라미터를 LONG형으로 바꿔주닌까 에러가 안나거든요. 이게 일반 int형은 DefaultFormattingConversionService 여기서 변환을 못시켜주는게 맞나요?
제가 회원가입한 계정 입니다. id 2번 계정으로 로그인을 한 뒤, id 1번 계정을 팔로우 하면 follow 테이블에 followingId : 2 ,followerId : 1 저장되는 것이 아닌 followingId : 1, followerId : 1이 저장됩니다. 혹시나 req.user.id 값이나 req.params.id 값이 잘못된건 아닌지, console로 찍어보았습니다. console로 찍어본 결과 현재 로그인 유저를 나타내는 req,user.id 2가 맞게 나오고, 팔로우 요청한 유저의 아이디를 나타내는 req.params.id 값도 1로 맞게 나오는 것을 확인했습니다. 혹시 Models의 User의 db관계 부분이 잘못 되었나 확인을 해보았는데, 제로초님께서 알려주신 코드랑 비교해서 다른 부분이 없는 것 같습니다. 혹시 제가 친 코드에 문제가 있는 것일까요... 참고로, id 1번계정을 로그인해서 2번계정을 팔로우하는 경우 팔로우가 이상없이 잘 됩니다.. 답변 부탁드리겠습니다!
import sys sys.stdin = open('2_9.txt', 'rt') def findDupValue(value): n_counter = {} for n in value: if n not in n_counter : n_counter[n] = 1 else : n_counter[n] += 1 if n_counter[n] == 2: return n N = int(input()) dice = [] cnt_dice = [] prize = [] for i in range(N): dice.append(list(map(int, input().split()))) cnt_dice.append(len(set(dice[i]))) for value, cnt in zip(dice, cnt_dice): if cnt == 1 : prize.append(10000 + (value[0]) * 1000) elif cnt == 2 : prize.append(1000 + (findDupValue(value)) * 100) else : prize.append(max(value) * 100) print(max(prize)) for문을 2개 쓴게 걸리는데 이런 코드는 어떤가요? 입력받을 때 주사위 값을 묶어서 배열로 저장하는 dice 리스트와 set으로 받아서 길이를 저장하는 cnt_dice 리스트를 사용했고 cnt 리스트가 2이면 findDupValue 함수에서 dictionary를 사용해서 다시 카운팅해 중복되는 숫자를 찾아 계산하는 코드입니다.