Index
Date
의 회의록 마스터 : 고주형
Participants
TEAM FIRE (고주형 윤영기 이하령) + WonYong Jeong
Discussion topics
기능을 보여주는 것과
제품을 보여주는 것은 다르다
어떤 상황
-> 이 기능
-> 적절
== 심사위원 공감
심사위원 아 이런 상황 있을 수 있지
이런 상황일 때 이게 유용하겠구나!
기능이 아닌 제품의 관점
그 자리에 준비 안하면
이거 됩니다. 이거 됩니다.
= 노잼
홍보 영상
담주에 보고서
수
발표
기말 자료
일단 우리 제품 릴리즈 됨
새로운 태스크 안 만듦
제품 릴리즈는 마무리
남은 것
이 시점부터 데모 준비 = 기말
데모 준비
애초에 기말 자료 + 데모를 위한 준비 = 이번주 담주
=> 다음주 멘토링할 때 발표 자료 초안으로 공유
시연 방 목록 그대로?
지금으로
지표를 넣자 !
여러가지 관점
과연 될까?
초기 유입의 리텐션은 이루어질까?
유입하면 어떤 동기를 가져갈 수 있을까?
해소는 못해도 (심사위원에게 너희가 맞아!)
누구나 공감하고 있는 방향의 고도화
실제 릴리즈 사용자 데이터 모임!
= 홈페이지 정보 = 내부 생산이 아닌 직접적으로 만든 데이타야!어떤어떤 지표
부하는 어땠구
사람들이 생각보다 리텐션 유발 엑스 = 문제 이거다!
-> 심사위원
-> 강의자
Next에 대한 것이 짐작이 아니라 데이타 기반이다!
공유자원을 관리하기 위함
두 패턴을 ㅇ
===
플라이웨잇 = 레이지 이벨류에이션
Caching = Flyweight, Proxy는 아니다
[중요]
플라이웨잇 캐시다
프록시는 캐시가 아니다
우리 책예시가 혼란을 주고 있다... 조심하자
프록시 패턴
저기 필요한 객체 하나줄래?
어떤 차이야?
Flyweight: 클라이언트가 팩토리 통해서 써
Proxy: 클라이언트가 프록시를 통해서 써
Flyweight
성능 관점
원본을 본다
대리자가 중요한 것이 아니라 성능 고도화를 하는 것이 목표
프록시
대리자다
대리자 != 성능
대리자는 원본을 못 본다
질문
플라이웨잇이 릴리즈는 언제할까?
풀
릴리즈
헤비 릴리즈는 언제해?
HTTP Proxy는 언제 릴리즈?
Purge 요청 = 요청 휘발
Purge는 지금 한다는 것
API를 하나 파주자.
꼭 API가 호출되어야 해제 돼..?
ㄴㄴ. 운영 가능하려면 어떤 룰 필요시간 (가장 쉬워)
캐시 만료 keep alive = 3600시간 딱 정하면 변조 안 됨
명시적 aPI
카운팅
100쓰면 날려
상태를 가지게 됨
계속 카운트 올려야 해
게임의 캐시는
보통 게임은 점검 시간 있음.
이때 날림.
그 다음 에이징 작업을 한다.
에이징 = Preload한다
운영 서비스는 점검 시간을 두고 한다.
그렇지 않으면 운영자가 날려주는 시간을 수동으로 가진다
쇼핑몰에 이미지 올림. 잘 못 됨.
수정한 게 안 바뀜
=> CS요청 폭주어디는 Purge 개발팀, 어디는 직접 직원이
다 정책 다름.
HTTP Proxy
HTTP Proxy를 해석할 수 있어야 한다
[Forward Proxy]
Client -> Proxy -> Internet -> Server
원본 서버보다 앞
클라이언트 입장에서 앞으로 간다
클라 요청이 많아.
동일 요청은 프록시가 보내지 않을 수도 있다
포워드 프록시가 분산시켜줄 수 있다
클라 입장
프록시가 분산이든 캐시든
뒷단에서 실제 요청이 갔는지 안 갔는지 클라가 몰라도 됨
= 로드 밸런싱로드 밸런싱은 캐쉬는 아니다
고도화되면 얘기 캐시역할을 하기도 한다.
[Reverse Proxy]
내가 가져온 것
클라이언트 입장에서 뒤로
목적이 캐쉬이다.
원본에서 가져온 것을 캐쉬하다가 준다.
네트워크 상에서 흔히 사용가능한 도구 중 프록시 많음
VPN
암호화의 책임은 없음
사설 네트워크를 구축하는 것.
허용된 사람끼리 통신하도록 하는 것
내 IP를 속일 수 있음
ex. 내가 회사망 접속
회사망 접속 후 네이버 가면 내 IP가 속여짐
Virtual Private망
내의 네트워크 활동을 완벽히 대리 = 프록시이다.
프록시 = 캐시는 아니다.
대리자이다.
만약 리버스 프록시입장에서 캐쉬 Hit
=> HTTP 응답: 3백번대: 304 Not Modified
304가 오면?
클라이언트는
200 OK
Content Length : 40000
304Content Length : 0
= 클라야 넌 이미 가지고 있어
= 클라입장에서 서버한테
GET /index.html
accept: *
If-Modified-Since: 시간
=> 서버가 If-Modified-Since보면서 변경 너 IMS있어? 그럼 304줄게
- 어? 구버전임? 그럼 Last-Modified랑 200줄게
CPU 하이
=> 서버가 에어컨으로부터 멈
동기화 = 락임
inner static class initer
해결 방안 1.
double checked locking
해결 방안 2.
Hash Table을 쓴다
HashMap
빠름
스레드 safe하지 않음
Thread Safe한 HashTable을 쓰자
대신 좀 느림
다음주
한 부하 테스트
1000개 메인 페이지
정적 말 S3
요청 수 = TPS은 아님
부하테스트 한번 하고 같이 해석 해보자
서버의 스케일 아웃까지 고려했다는 데이터로 삼으려 하는 것이다.
=> 심사위원 어필: 너희들이 잘 만드는 것은 했다.발표 자료 초안 보자
목차라도 보자!
가장 먼저 데모를 만들자!
홍보 영상
영상 Flow - 패캠 광고 방식을 따라가자
#인트로 : “훅 포인트 몇 개 편집해서 짧게 앞에 넣는 것”
#1 : 질문 - 답변
#2 : 질문 - 답변
#3 : 질문 - 답변
#4 : …
#마지막 : 더 자세한 내용은 링크를 남겨두었으니 유튜브 설명을 참고해주세요.
영상 대본
인트로: “Hook 포인트 몇 개 편집해서 짧게 앞에 넣자”
기간: “질문:답변” → 1분치 - 짧게
질문1: 모도코는 어떤 프로젝트인가요?
요즘 개발자들 사이에서 모여서 각자 코딩하는 모각코 활동이 유행합니다. 이런 활동을 온라인 상에서 즐길 수 있게 도와주는 프로젝트입니다.
질문2: 모도코를 왜 만드셨나요? ← (간단하게 스크롤 내리면서 둘러보는)
요새 개발자 붐이라고 하잖아요.(이게 앞의 hook 포인트로 사용됨)
다른 개발자들은 무엇을 하고 있는지
혹은 내가 짠 코드가 맞는지
서로 리뷰해주는 공간이 필요하다고 생각했어요.
질문3: 근데 이름이 왜 모도코죠? ← (랜딩 페이지 스크롤 내리기)
모도코는 모여서 도란도란 코딩하다의 준말인데요. 정적이고 재미없는 분위기 말고 도란도란한 분위기 속에서 모각코를 진행하자! 라는 의미로 지은 이름입니다.
질문3: 모도코를 어떻게 활용하고 계시나요? ← (여기서 실제 프로덕트 영상)
(하령님) ← (스터디한 영상 주말 주심)
다들 스터디 많이 하시잖아요. 취업 스터디, 면접 스터디, cs 스터디 등등.. 저희도 모도코에서 이런 스터디를 하고 있어요. 아주 만족하며 사용하고 있습니다ㅎㅎ(영기님) 실제로 제가 모도코에서 개발을 혼자 하고있었는데, IT 현직자분께서 들어오셔서 코드 리뷰를 해주신 경험도 있습니다. ← (실제로 한 영상 보여주며)
마지막 질문: 앞으로 방향성은 어떻게 되시나요?
실제로 많은 사람들이 여러 개발자를 만나며 도움을 많이 얻어 갔으면 좋겠습니다.
FADE OUT
링크 추천
영상 추천
가능한 답변지
[답변 예시]
요새 개발자붐이라고 그러죠~ 그만큼 코드리뷰도 많이하고, 네트워킹이 중요해졌는데 다들 멘토링이라하면서 엄청나게 돈을 받더라구요.
- 근데 충고나 간단히 봐주는 것 뿐인데 그렇게 돈이 많이 필요한 서비스인가?
- 한시간정도 안걸리는데 도와줄수 아닌가 싶었어요
다른 개발자들은 어떤걸 준비할까?
면접 같이 준비하실 분?
요즘 핫한 개발자들은 어떤 기술을 쓰지?
나랑 같이 스터디 하실 분?
내 코드 한번 봐주실 분?
간단한 C 정도는 나도 가르쳐줄 수 있을 것 같은데..
1컷 : 모도코를 왜 만드셨나요?
혹시 모각코라는 단어를 아시나요? 모여서 각자 코딩하다의 준말인데요. 개발자들 사이에서 흔히 유행하는 단어에요.
보통 모각코를 하려면 다른 커뮤니티 사이트에서 모집을 하고 줌이나 디스코드에서 진행하거든요. 저희는 이러한 과정이 번거롭다고 생각했어요. 다른 사람들과 함께 코딩하고 싶을 때 그냥 모도코 사이트에 들어와서 다른 사람들과 자유롭게 모각코를 진행하면 어떨까? 이런 생각으로 만들었어요.
2컷: modoco 간단 사용서, flow (모도코 사용 방법)
3컷:
마무리 멘트
링크 가리키기
Attachments:









