Skip to content

week3 멘토링

jsl0149 edited this page Nov 10, 2021 · 1 revision

3주차 멘토링 질문 사항

  • 오브젝트 스토리지에 저장된 음악을 스트리밍하는 방식에 대하여..

    • 현재 음악 업로드 구현까지 해놓은 상태이며, 업로드 시 서버의 메모리를 임시로 거쳐서 오브젝트 스토리지에 업로드 하는 방식입니다. 그런데, 현재 방식에서 오브젝트 스토리지의 음악을 재생하려면 그 음악파일을 업로드할 때 처럼 임시로 서버에 다운을 받아 스트리밍해주고 재생이 끝나면 지워주는 방식밖에는 떠오르지 않습니다.. 이게 접속자 수가 적으면 상관이 없지만 접속자 수가 많아지면 서버의 read / write 작업이 너무 빈번하게 일어나게 될거같아 걱정됩니다. 혹시 이 부분에 대해 조언을 해주실 수 있을까요..??

    • A: 일단, 디스크에 한번 다운로드 받은 캐시메모리에 적재되기 때문에 하드디스크 자체에 여러번 접근하는 것 때문에 성능저하가 일어날 걱정은 크게 하지 않아도 괜찮다. 그리고 다운로드 받은 파일을 지우는 시점은, 조회 데이터를 따로 관리하여 해결해볼 수 있다. 만약 A랑 B방장이 같은 노래를 다른 시점에 요청했을때, A가 먼저 재생이 끝나서 그 파일을 지우려한다면 조회 데이터를 검색하여 해당 파일을 재생하고 있는 다른 방장이 있는지 확인한다. 만약 있다면 파일 삭제를 보류하고, 아무도 이 파일을 조회하지 않았다면 그냥 지워버린다.

    • 박기범 추가 의견 : 이런 방식을 사용한다면, 마찬가지로 파일을 다운로드 받을때에도 저 정보를 조회하여 파일 다운로드 과정을 생략할수도 있겠다.

  • UI/UX

    • HCI (인간-컴퓨터 상호작용을 연구하는 학문)
  • 관리하는 상태가 여러개 일때 여러번 렌더링 되는 것은 어쩔 수 없나

    • 객체 형태로 여러 상태를 하나의 useState로 관리하는 것과, 각각의 useState로 여럿 렌더링하는 방법 중 어느 것이 더 나은 방법일지?

      const [a, setA] = useState()
      const [b, setB] = useState()
      
      const onClick = () => {
          setA(a => a + 1)
          setB(b => b + 1)
      }
      
      return (
          <div onClick={onClick}>{a} {b}</div>
      )
      
      • 객체관리 추천! 추천! 추천! 추천! 추천!
  • 동료의 브랜치와 합칠 때 rebase vs merge

    • 멘토님께서는 merge를 권장하심. 하지만 rebase도 당연히 할 줄 알아야한다.

    • 정말 모든 발언의 중심은 진선님이 아닐 수 없습니다..

  • 프로그레스 바

    • input tag range로 하는게 react로 계속 관여하는 것보다 성능이 더 좋을 것 같음
  • DOM 직접 접근

    • React를 쓰고 있다면 DOM에 직접 접근하는 방식은 최대한 지양하는게 제일 좋다.
  • html에 color 프로퍼티는 없다.

    • 프로페셔널한 웹 개발자가 되려면 웹 표준을 잘 지켜주는게 좋다.
    • mdn html attribute

모든 논란의 중심은 이진선 캠퍼님입니다. 논란이 있을만한 발언은 이진선 캠퍼님의 단독 발언임을 소신껏 밝히는 바입니다.

Clone this wiki locally