Skip to content

3주차 수요일 그룹 2

CodingLuizy edited this page Jul 10, 2024 · 1 revision

김승수

피드백

  • Request 객체에서 쿠키를 사용할 때 Map<name, value>으로 관리할 것인지, Cookie array로 관리할 것인지
  • checkedException을 uncheckedException으로 감싸서 예외를 던지는건 어떤지?
    • checkedException을 사용해서 throw만 해버리면 메인 함수까지 예외가 던져져서 보기도 안좋음
  • 중복 로그인을 체크할 수 있는 로직(Manager, Session 에서)이 있었으면 좋겠다.
  • 인터페이스의 default 메서드를 만들면 좋을 것 같다

김현수

중요하게 생각한 점

  • router, handler 구조
  • 멀티 스레드 환경에서 DB 동시성 문제 고려

피드백

  • HTML을 불러와서 필요한 부분은 replace를해서 사용자 이름을 추가하는 부분이 인상적이었습니다.
  • Jconsole을 이용해 메모리 사용량을 확인하고 CachedThreadPool 을 도입해서 더 효율적으로 메모리를 사용한 부분이 좋았습니다.
  • context 라는 클래스를 만드는 부분이 새로웠습니다.

윤중진

피드백

  • RuntimeException을 상속받은 custom exception class를 활용하는 부분이 인상적이었습니다.
  • 악의적인 요청을 고려하고 처리해 준 부분이 좋았습니다.
    • PAYLOAD_TOO_LARGE
    • REQUEST_HEADER_FIELDS_TOO_LARGE
  • 동기화를 고려해서 ConcurrentHashMap의 메소드를 잘 활용한 부분이 좋았습니다.
  • compute 와 lock 중 compute 를 사용하신 이유??
    • blocking되면 context switching 오버헤드가 발생하고, compute를 사용하면 synchronized, CAS를 사용하면 CPU 오버헤드가 발생한다.
    • 둘다 장단점이 있지만, 여기서는 CPU에 부담을 더 주는 방식으로 사용했다.

홍은기

피드백

  • 고정된 개수의 thread를 생성하지 않고 자원 상황에 따라 thread 생성하는 cachedThreadPool()

    메서드를 알게 되었습니다. 하지만 사용에 따른 side effect도 고려를 해봐야 할 것 같습니다.

  • context 클래스를 이용하여 request, response를 묶어 관리하는 것 좋은 방법인 것 같습니다.

  • concurrentHashMap의 compute 메서드에 대해 알 수 있었습니다.

  • BufferedInputStream 말고 BufferedReader를 사용한 이유

  • 설정 클래스(configure)를 따로 두어 Configurable 한 테스트를 만들 수 있음을 알게 되었습니다.

박정제

E2E 테스트를 하기 위해 했던 고민을 공유했습니다.

서로 다른 고민점을 가지고 리뷰에 임할 수 있어서 좋았습니다

피드백

  • Indexhtmlhandle를 구분하 점이 좋았습니다.
  • I/O가 많아서 테스트하기 어려웠는데 E2E 테스트를 한 부분이 인상깊었습니다. x2
    • 특히, Server Configuration을 추상화해서 테스트에서 활용하는 부분이 좋았습니다.
  • Configuration 클래스를 Server 시작할 때 넘겨주어 설정에 따라 테스트 하기 유용한 구조 좋습니다 !!

최세민

피드백

  • executorService.submit() 을 왜 사용했나요?
    • executesubmit의 차이를 모를 때 사용하고 아직 고치지 않았습니다!
  • TestSocket inputStreamoutputStream만 사용해도 되는 거 아닌가요 ?
    • Socket 을 인자로 받는 부분을 테스트 하려고!

배운점

  • 다른 분들이 공유 자원 동기화, 쓰레드 관리를 신경써서 하신 것 같아서 좋았습니다.

👼 개인 활동을 기록합시다.

개인 활동 페이지

🧑‍🧑‍🧒‍🧒 그룹 활동을 기록합시다.

그룹 활동 페이지

🎤 미니 세미나

미니 세미나

🤔 기술 블로그 활동

기술 블로그 활동

📚 도서를 추천해주세요

추천 도서 목록

🎸 기타

기타 유용한 학습 링크

Clone this wiki locally