디지털포렌식 입문자를 위한 디지털포렌식 전문가 2급 실기 시험대비 강의(Encase/Autopsy)
안녕하세요, 디지털포렌식 2급 실기 준비하고 있는 수강생입니다. 강의 잘 듣고 있고요, Autopsy관련 기초적인 질문 드립니다. 시험에서 시간 관계상 Keyword Search를 빼고 먼저 분석 진행하는 것은 알겠는데요, 혹시라도 시간이 남아서 ingest에 Keyword Search만 추가해서 돌리고 싶을 때는 Autopsy에서 어떻게 해야 하나요? 이번 시험을 준비하면서 Autopsy를 처음 써봐서 중간에 ingest를 항목을 추가할 때 어떻게 해야 하는지 궁금합니다. 답변해 주시면 감사하겠습니다. 감사합니다~
예전에 유튜브영상에서는 인증서버를 GW를 두거나 Oauth 서버를 따로 두는 방식을 선호한다고 하셨는다. 현재 서버 분리를 하지 않기에, GW 나 Oauth도 사용하지 않기에 security 를 현재 사용중입니다. 1. web:security 모듈로 빼두었습니다. storage,domain 모듈이 web모듈을 알지못합니다. 강의 에서도 인증이 없기에 어떻게 구성하실지 궁금합니다 security를 지양하시는거는 알지만 써야하는 상황이고 구성한다면 어디에 빼두시는지 궁금합니다 2. security는 presentation layer 에 속한다고 판단을 했는데, 그럼 user의 role에 따라 조회시 비즈니스레이어를 건너뛰고 filter 에서 userid 만 사용해서 security context 를 생성하고 있는데, 이거는 레이어간 건너뛰기가 되어서 레이어 규칙 위반인데 예외적 허용을 하는게 맞는지 잘모르겠습니다. 깊이 있는 질문을 하고 싶었는데, 얇은 질문이지만 남겨봅니다!!
5.5 실습진행하면서 오류가 발생해서 문의 드립니다. 주피터 노트북 진행 환경 입니다. 오류는 203 페이지 진행중에 발생 settings, params = download_and_load_gpt2(model_size="124M", models_dir="gpt2") file download 이후 오류로 그림과 같습니다. 혹시 해결가능한 방법이 있을까요? 여기서 막히면 다음 진행이 어려울 까요? 확인 부탁드립니다.
안녕하세요. 57. 소멸자 가상화 강의 보고 질문드립니다. 가상함수에서 virtual 예약어를 붙인 메서드는 자기부정을 전제로 파생 클래스에 동일한 이름의 함수가 만들어진다면 기본 클래스에 virtual로 선언된 가상함수는 무시되는 걸로 이해했습니다. 그런데 소멸자에 virtual을 붙일 경우에는 왜 파생 소멸자만 불리는게 아니라 기본 클래스 소멸자도 불리는 걸까요?
안녕하세요. 세션 관련으로 문제가 있는게 아닌가 해서 질문드립니다. store = {} # ❌ 전역 변수 - 모든 사용자 공유 def get_ai_response(user_message): # ... config={ "configurable": {"session_id": "abc123"} # ❌ 고정된 ID } ❌ 모든 사용자가 "abc123" 세션 공유 ❌ 사용자 A, B, C의 대화 맥락이 섞임 ❌ 실제 배포하면 문제 발생 해결 방법으로 동적인 세션 ID를 부여하는 것을 클로드는 추천을 해주던데 클로드 말대로 해볼까요?
현재 팀 단위로 프로젝트를 진행중입니다. 역할 분담을 하게 되었지만 제가 꼭 원하던 역할을 맡지 못하게 되어 큰 아쉬움과 실망을 느끼게 되었습니다. 물론 협업의 경험도 매우 중요하지만 기술의 사용또한 매우 중요하다고 생각합니다. 따라서 현재는 제가 맡은 역할을 충실히 하고 추후에 이 프로젝트의 기획서를 바탕으로 다른 팀원들의 역할까지 즉 프로젝트 전체를 제가 다시 해봄으로써 기술역량을 키워보고자 합니다. 이러한 생각이 혹시 괜찮을까요? 나중에 포트폴리오에 작성을 할때 같은 주제로 팀으로도 해보았고 개인적으로도 해보게 된건데 작성을 그럼 어떻게 해야할까요?
안녕하세요. 섹션 3 퀴즈에서 5번 문제 관련 질문 드립니다. 질문: persist 미들웨어 사용 시, 액션 함수가 기본적으로 저장되지 않는 이유는 무엇일까요? 해설: persist 미들웨어는 상태를 JSON 형태로 저장하기 때문에, JSON으로 직렬화할 수 없는 함수는 저장하지 않아요. 따라서 serialize 옵션으로 상태만 저장하는 것이 좋습니다. 강의에서 serialize 가 아닌 partialize 로 설명해주셨는데, 이 부분 확인 부탁드립니다.
회원 조회 쿼리는 N+1 문제라고 하시고 넘어가셨는데 회원 이메일은 반정규화 대상에 포함이 안된 이유가 뭔가요? 주문 상품에 비해 간단해서 그런가요? 제 기존 프로젝트에 강의 내용을 적용하고 있는데 저는 dto 변환 메서드 때문에 회원, 주문상품, 상품 테이블까지 조회 쿼리가 나가고 있는데 3개다 그냥 주문 테이블에 컬럼을 추가해서 반정규화 하는게 좋을까요? 현재 주문은 한번 생성되면 status 빼고는 데이터가 변경될 일이 없습니다.
안녕하세요. 좋은 강의 잘 수강하고 있습니다! 다름이 아니라 포스트 삭제 후에 무한 스크롤이 작동하지 않는 문제가 발생했습니다. 문제 상황은 다음과 같습니다. 첫 페이지(다음 페이지의 데이터를 페칭하지 않은 상태)에서 작성한 포스트를 삭제 이후 페이지 최하단까지 스크롤 했지만 무한 스크롤 데이터 페칭이 이루어지지 않음 부족한 실력이라 AI의 도움을 받아 원인을 분석했을 때 다음과 같았습니다. 아래는 AI의 답변입니다. 무한 스크롤이 작동하지 않는 원인 분석: getNextPageParam 의 로직 useInfinitePostData 훅에서 다음 페이지를 불러올지 결정하는 로직은 다음과 같습니다: // src\hooks\queries\use-infinite-posts-data.ts // ... const PAGE_SIZE = 5; // ... getNextPageParam: (lastPage, allPages) => { if (lastPage.length < PAGE_SIZE) return undefined; // 🚫 문제의 원인 return allPages.length; }, 이 로직은 "마지막으로 불러온 페이지의 항목 개수가 PAGE_SIZE (5개)보다 적으면, 더 이상 데이터가 없으므로 undefined 를 반환하라 (즉, 다음 페이지를 불러오지 마라)"고 지시합니다. 삭제가 로직에 미치는 영향: 초기 상태: 0번 페이지에 5개의 게시글이 있습니다. ( lastPage.length = 5) 삭제 이벤트: 사용자가 0번 페이지의 게시글 1개를 삭제합니다. 캐시 업데이트: useDeletePost 의 onSuccess 에서 해당 게시글 ID를 0번 페이지의 캐시 데이터 에서 제거합니다. 결과: 0번 페이지의 항목 개수가 5개에서 4개 로 줄어듭니다. 무한 스크롤 시도: 사용자가 스크롤하여 ref ( inView )가 활성화됩니다. getNextPageParam 실행: React Query는 0번 페이지의 현재 캐시 데이터 를 확인합니다. lastPage.length 는 이제 4 입니다. 잘못된 판단: 4 < PAGE_SIZE (5) 이므로, getNextPageParam 은 즉시 undefined 를 반환 합니다. 따라서 1번 페이지(실제 서버에는 데이터가 있을 수 있음)를 불러오기도 전에, 캐시 데이터가 줄어든 것 때문에 다음 페이지 로딩이 차단 되어 무한 스크롤이 작동하지 않게 되는 것입니다. 마지막 페이지에 속한 포스트를 삭제했을 때, PAGE_SIZE보다 항상 작아지니 다음 페이지가 없다라고 판단하기에 무한 스크롤이 작동하지 않는다고 이해했습니다. 캐시를 무효화해 리페칭해서 해결하려고 하는데, 다른 대안이 있을까요? 혹여 제 실수로 잘못된 동작이 일어난 건지 GitHub Repo도 같이 첨부했습니다! https://github.com/scseong/onebite-sns