안녕하세요? 강의 정말로 잘듣고 있습니다. 인프런에서 여러 강의를 수강했지만, 정말 질 좋은 강의라고 생각합니다 ㅎㅎ.. 인기글 설계에 대해 궁금한 부분이 있습니다. 1)저는 레디스의 sorted_set을 사용한다고 하셨을 때, 처음 떠올린 구조는 모든 게시글에 대한 점수를 기록하면서 자연스럽게 sorted_set에 의해 정렬되는 형태를 생각했었습니다. 예를 들어 20250713에 게시글이 십만개가 생성되었다고 하면, 20250713 sorted_set에 십만개의 게시글에 대한 점수가 들어있고, 필요할 떄 상위 10개의 데이터를 추출하여 인기글로 선정하는 형태입니다. 이렇게 하면 게시글과 연관된 데이터의 개수를 적재할 필요도 없다고 생각했고, sorted_set을 자연스럽게 활용하는 형태라고 생각했습니다. 이벤트를 수신하고나면, 적절하게 점수만 올려주면 된다고 생각하구요. 이렇게 하면 게시글과 관련된 데이터를 적재할 필요도 없을 것 같아서 나쁘지 않은 방법 같은데, 이 방법에 대해서 어떻게 생각하시는지 궁금합니다 2) 비슷한 맥락으로, 강의에서 보여주신 방향을 선택하신 이유도 좀 궁금합니다. 1)에서 제가 말씀드린 방안보다 선생님이 강의에서 말씀해주신 방향이 어떤 장점이 있는걸까요? 3) 마지막으로.. 강의가 너무 좋아서 다음강의가 기대가 되는데요, 혹시 비슷한 사이즈에 비슷한 볼륨일까요? 또 이미 강의를 제작중이실 것 같은데, 캐싱과 관련된 부분이라고는 알고 있지만 조금 더 상세한 커리큘럼이나 개강일자가 궁금합니다 ㅎㅎ 좋은 강의 감사합니다
내 업무를 대신 할 파이썬(Python) 웹크롤링 & 자동화 (feat. 주식, 부동산 데이터 / 인스타그램)
수업 잘들으면서 6.1 까지 왔는데 marketwatch에서 막혔네요. 제가한 방법은 : "headers=" 를 추가 --> 안됨. selenium으로 접근 --> 로봇 아님을 확인하기 위한 퍼즐 나타남. 아무리 천천히 퍼즐을 풀어도 차단됨.이미 IP 주소를 의심받아서 그런 걸수 도 있을꺼 같아요. 우회법이 있을까요?
안녕하세요, 아래에서 Add 0이 출력되는 부분 관련 여쭙습니다. 아래 부모 코드 블록에서 n이 0인 경우에는, 0을 return하는데 class Sum { int sum(int n) { // 5 if (n <= 0) { return 0; } else { return n + sum(n - 1); } } } n = 1 일 때, 1 + sum(0)에서 sum(0)이 재정의된 자식의 메서드를 호출하여, "Add 0"이 출력되는 것인지, 왜 부모의 sum(0)의 값인 0을 return하는지, 헷갈려서 질문을 드립니다...!
1페이지에 있는 지식인 글 입니다. 보시면 삼성전자 전문기사 폭행 이라는 제목의 글이 있는 것을 확인 할 수 있는데 크롤링하여 확인해보면 아래 사진처럼 출력이 안됩니다. 코드는 제대로 입력한 것 같은데 왜 이러는걸까요? 그리고 한 페이지마다 10개의 글을 읽어오는 방식인 것 같은데 저 글을 못 읽어들여서 다음 페이지에 있는 첫 번째 글을 가져오는 걸까요?
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 강의 3회차를 복습하면서 궁금한 점이 생겨 질문드립니다. 인기글 섹션 마지막에, 모든 서버와 컨테이너를 실행 해둔 상태에서 테스트 코드로 직접 호출해 기능을 검증하셨는데요. 실무에서도 E2E 테스트나 시나리오 테스트 를 이러한 방식으로 진행하는지 궁금합니다. 개인적으로는 서버와 컨테이너를 매번 띄우고 테스트하는 과정에서 실수할 여지도 있고, 관리도 어려워 보인다는 생각이 들었습니다. 모듈 내부의 단위 테스트나 통합 테스트는 직접 작성해봤지만, 인기글처럼 여러 모듈 간의 상호작용을 테스트해 본 적은 없어 실제 현업에서는 어떤 식으로 검증하는지 궁금해 질문드립니다. 미리 답변 감사드립니다!
강의와는 관련이 없는데, 개인적인 질문이 있습니다. 저는 자바 스프링 신입 개발자를 준비하고 있는 학생입니다. 지금까지는 MVC 패턴만 사용하고, 모놀리틱 아키텍처를 사용해서 배포를 진행하고 프로젝트를 해왔습니다. 제가 알기로는 학습적으로나 포트폴리오적으로나 필요성을 느껴서 하는 공부가 제일 좋다고 들었습니다. 근데, 최근에는 어떤 필요성을 느끼지 못하면서 대규모 시스템 강의,헥사고날 아키텍처가 중요하다고 하니 강의 등을 듣고 있습니다. 왜냐하면, 본격적인 취업은 내년이고 시간이 좀 남았습니다. 그래서 해당 강의들을 들어두면 언젠가 개인 프로젝트나 현업에서 사용할 수 있지 않을까하고 듣고있습니다만, 제가 사용했던 MVC 패턴의 장단점 등 기본적인 것들도 알지 못하는 상태에서 계속 진도 나가듯이 이런 저런 강의를 듣고 하는게 괜찮을까요? 즉, 아직 기본도 잘 모르면서 계속 새로운 걸 배우는 과정들이 괜찮을까하는 걱정이 드네요. 하지만, 한편으로는 CS지식이 너무 방대해서 기초를 다 잡아두고 다음 단계로 넘어간다는 것도 솔직히 엄두가 안납니다. 그래서 우선은 쭉 이것저것 배워두고 나중에 필요하면 다시 찾아보면서 공부하면 되지 않을까 싶은데, 토비님은 어떤 방향이 더 괜찮다고 생각하시나요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 아직 끝까지 듣지 않았는데 궁금해서 질문 드립니다. volatile을 사용한 뒤에 메인에서 t1.start() 바로 뒤에 t1.join()이 오게 위치를 변경해주면 t1.start() 가 끝난뒤에 t2.start()가 시작이 되서 balance 값이 변경된 상태로 t2 스레드가 검증에서 false값이 걸리는줄 알았는데.. 이렇게 해도 문제가 발생하는데 그 이유가 궁금합니다.
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 강의 잘 보고 있습니다. 복습하던 중에 궁금한 부분이 있어 질문을 남깁니다. 현업에서 대규모 시스템을 만드는 경우에 헥사고날 아키텍처 + MSA를 사용한다는 것으로 알고 있는데, MVC 패턴이 아니라,헥사고날 아키텍처를 대규모 시스템에서 더 선호하고 사용하는 이유가 무엇인가요?? 추가적으로 이건 강의와는 관련이 없는데, 개인적인 질문이 있습니다. 저는 자바 스프링 신입 개발자를 준비하고 있는 학생입니다. 지금까지는 MVC 패턴만 사용하고, 모놀리틱 아키텍처를 사용해서 배포를 진행하고 프로젝트를 해왔습니다. 제가 알기로는 학습적으로나 포트폴리오적으로나 필요성을 느껴서 하는 공부가 제일 좋다고 들었습니다. 근데, 최근에는 어떤 필요성을 느끼지 못하면서 대규모 시스템 강의,헥사고날 아키텍처가 중요하다고 하니 강의 등을 듣고 있습니다. 왜냐하면, 본격적인 취업은 내년이고 시간이 좀 남았습니다. 그래서 해당 강의들을 들어두면 언젠가 개인 프로젝트나 현업에서 사용할 수 있지 않을까하고 듣고있습니다만, 제가 사용했던 MVC 패턴의 장단점 등 기본적인 것들도 알지 못하는 상태에서 계속 진도 나가듯이 이런 저런 강의를 듣고 하는게 괜찮을까요? 즉, 아직 기본도 잘 모르면서 계속 새로운 걸 배우는 과정들이 괜찮을까하는 걱정이 드네요. 하지만, 한편으로는 CS지식이 너무 방대해서 기초를 다 잡아두고 다음 단계로 넘어간다는 것도 솔직히 엄두가 안납니다. 그래서 우선은 쭉 이것저것 배워두고 나중에 필요하면 다시 찾아보면서 공부하면 되지 않을까 싶은데, 쿠케님은 어떤 방향이 더 괜찮다고 생각하시나요??
안녕하세요 손절 전략에 대해서는 어떻게 생각하고 계시는지 궁금하여 여쭤봅니다. signal_calculation()함수를 보면 zscore가 zscore_threshold(=2) 초과, 5 미만일 때는 signal을 -1로 채워서 stock1/stock2를 각각 매도/매수 하는 전략으로 진행되는데요, 그 밑에 ffill() 코드로 인해 한번 signal이 -1로 채워지면 zscore가 1미만으로 내려가지 않는 한, signal이 계속 -1로 유지되게 됩니다. 이 경우에 만약 zscore가 한 번 2~5 영역에 들어간 이후에 갑자기 zscore가 6, 10, 20, 100까지 혹은 그 이상 벌어지는 현상도 현실세계에서 가끔 발생할 수 있다고 생각합니다. (해당 기업에 예상치 못한 이슈가 발생 한다던가, 재해가 발생할 수 도 있겠죠) 물론 이런 경우가 자주 발생하지는 않겠지만, 한 번 발생했을 때 큰 손실이 발생할 것으로 예상되어, 그 이전 수익을 모두 잃을 수 있다고 생각합니다. 때문에 zscore가 일정 값 이상으로 벌어진다면 (예를 들면 20 이상?) 손절하는 전략을 취하는 코드도 추가하면 어떨까요? 이 부분에 대한 생각을 여쭤보고 싶네요.
'섹션2. Cursor 기능 설명' 4:02 에서 Add new rule 을 누르시면 룰을 입력할 수 있게 창이 나오는데 제꺼에서는 아무 반응이 없어서 프로젝트 룰을 입력할 수 없습니다. (맨 아래 사진 있습니다. 빨간색 표시 해놨습니다.) 저는 1.2.4 버전을 사용하는데 버전이 달라서 그런가요? 어떻게 해야 하나요? 그리고 영상에서 사용하신 User Rules과 노션에 있는 룰이 다르던데 둘 중 어느걸 따라해야 하나요?
안녕하세요, 14분 47경에 df_pair에 대해서 signal_calculation()을 진행하고 난 후의 df_pair를 보면 마지막 5행의 데이터가 zscore가 2를 넘지 않음에도 불구하고 signal이 계속 -1이네요. 강의에서는 그 사이에 signal을 변경하는 신호를 못 받아서 그렇다고 넘어가셨는데, 저는 이해가 잘 안돼서요. mother class의 signal_calculation()메서드를 확인해도 ffill()함수가 1번만 적용되고, 그 다음줄에 fillna(0)함수로 signal을 0으로 채우기 때문에 signal이 계속 -1로 유지되는 현상이 왜 발생하는지 이해가 안됩니다. (시그널이 2이하로 떨어진다면, 1번만 -1로 유지되고 그 이후에는 0으로 채워져야 하는 것 아닌가요? 더 자세히 설명해주실 수 있나요? (AI봇의 설명은 부정확한 부분이 많네요...ㅠ)
안녕하세요 영한쌤! 질문드립니다! 쓰레드별로 공유 자원에 대해 효율적인 연산 처리를 위해 캐시 메모리를 사용한다고 하셨습니다! 이러한 문제가 메모리 가시성 문제를 일으킬 수 있어 volatile 키워드로 캐시가 아닌 메인 메모리에 직접 접근할 수 있었습니다. 이번 예제의 경우, volatile이 없었던 가장 기본 BasicInteger는 volatile을 사용하지 않았어도 어느정도 값 수정이 되었는데 이는 캐시 메모리를 사용하지만 컨텍스트 스위칭이 발생하면서 캐시메모리가 메인메모리로 반영하고 다시 이를 읽어오니 반영이 된건가요? (이전에 interrupt를 boolean flag + volatile로 해결하던 예제에서는 컨텍스트 스위칭이 발생할 시기가 확정적이지 않다고 하셨는데 그거에 비해 꽤 많이 연산이 이뤄진것같습니다...)
4:20 이부분에서 for문을 이용해서 modelName1[]에 있던 문자열을 myCar.model[i] 배열로 복사하는것인데 for문 실행으로는 NULL문자를 제외한 문자열들만 복사가 되기 때문에 for문 바깥에서 myCar.model[i] = '\0'; 이라는 코드로 NULL 문자를 마저 복사해주는 게 맞나요?? 제가 이해한 것이 맞는지 질문드립니다