38
뭔뭔 뭔뭔뭔뭔 뭔뭔 ASP 뭔뭔 Django 뭔 뭔뭔뭔 뭔뭔 뭔뭔뭔뭔뭔뭔 뭔뭔뭔 뭔뭔 뭔뭔 뭔뭔뭔 뭔뭔

뭔지 모르지만 발표

Embed Size (px)

Citation preview

Page 1: 뭔지 모르지만 발표

뭔지 모르지만 발표

ASP 에서 Django 로 옮겨간 사연

페이스북에서 홧김에 정한 패기 넘치는 제목

Page 2: 뭔지 모르지만 발표

주의

이 문서는 수준이 참 낮습니다 . 미리 양해를 구합니다 .

만든 사람이 마감에 쫓겨 제 정신이 아닌 채 만들었습니다 .

진지합니다 . 궁서체입니다 .

Page 3: 뭔지 모르지만 발표

파이라고 합니다 .2013 년 1 월부터 지금까지 요새 Hot 한 SMARTSTUDY 에서소프트웨어 엔지니어 인척 하며월급과 경험치를 훔치고 있습니다 .

+ exp 100

+ gold 400

ㅋㅋㅋㅋㅋ

파이[ 월급루팡 ]

Page 4: 뭔지 모르지만 발표

뭘 할까 하다가 , IRC 에서 ...< 아침놀 > 2013.08.30 21:16:26 원래 남의 삽질은 좋은 구경거리 (....)

그렇다고 합니다 .

그래서 그냥 적당히 삽질한 썰 풉니다 .

적당히 삽질한 썰 풉니다 .되지도 않는 드립이나 쳐야지

Page 5: 뭔지 모르지만 발표

이것은 한 개발자의 성장기

라고 쓰고 삽질기 라고 읽습니다 .

Page 6: 뭔지 모르지만 발표

첫 직장

G 사에 입사 .취직 못하고 노는 것 보단 좋겠지 뭐 .( 안일 )하지만 날 기다리고 있던 건

Page 7: 뭔지 모르지만 발표

ASP!!!! 오 예 !!

그것도 Classic ASP. 망했어요 .

이때는 아직 ASP 가 좋은지 나쁜지도 몰랐다 .

Page 8: 뭔지 모르지만 발표

당시 할 줄 아는 거약간의 웹 디자인XHTML / CSS 학교 과제 수준의 C, Java게시판 겨우 짤 수준의 JSP

이글루스 스킨만들다가 ...

졸업작품 하느니라 ...

Page 9: 뭔지 모르지만 발표

취직이 된 게 신기하다 .

시작된 월급 루팡 전설… 투 비 컨티뉴

대표님 , 절 뭘 믿고 뽑았나요 ?

Page 10: 뭔지 모르지만 발표

최초 나모웹에디터로 제작5 년간 리뉴얼 없었음

놀랍게도여기에 있던 코드가 여기에도 또 있고…

수 십개의 게시판이 복붙 복붙

당시 G 웹진의 상황

혁신적인 iCode

Page 11: 뭔지 모르지만 발표

소스 코드가 2GB!

돌아가는 게 신기하다 .

게임 소스 아닙니다 . 웹페이지입니다 .

Page 12: 뭔지 모르지만 발표

ASP 로 뭘 했나요 ?모바일 게임 소개 페이지 제작이벤트 페이지 , 설문조사 페이지 제작다음 TV 팟 연동 코너 제작메인페이지 리뉴얼 등 등 .

Page 13: 뭔지 모르지만 발표

object.title 을 해보고 싶어서언제까지 SQL 노가다 할텐가 ..!직접 유사 ORM 제작 . Model 용 Class 는 Excel 을 활용하여 생성 (...)Top10, List 등 그때그때 필요한 함수 만듬

결론ASP 로 객체지향 프로그래밍 ,

몹쓸 짓이구나 .

Page 14: 뭔지 모르지만 발표

고통 받는 ASP관리할 수 없는 거대한 스파게티 소스해킹 취약 ( 망할 웹셀 )

캐슬 , 웹나이트 등 별짓을 다 해도 뚫린다 .크롬 : 이 사이트는 헤로운 사이트다 .

Page 15: 뭔지 모르지만 발표

나에게 떨어진 임무

I 웹진을 새로 만들고 G 웹진을 리뉴얼 하라 .

Page 16: 뭔지 모르지만 발표

단 , 너 혼자서

까라면 까야지 ...

할 수 있지 ? … / 네 ...

Page 17: 뭔지 모르지만 발표

ASP 는 안되겠어 , 어떻게든 ...

주변에 알만한 사람들에게 어떻게든날로 먹을 수 있는 프레임워크를 추천 받았다 .

후보는 ROR 과 Django.

Page 18: 뭔지 모르지만 발표

Django!< 아침놀 > 제가 이번에 책을 검수했는데요 ...

쉽고 빠른 웹개발 Django.

아침놀님의 강력 추천 .

더 이상 설명은 생략한다 .

Page 19: 뭔지 모르지만 발표

날로 먹을 수 있다 !ASP 로 수십 수백줄 짜야했던 것들이Django 에는 이미 다 있다 .

ORM, Model, Template, View,User, Auth, Admin, 등등등…

Page 20: 뭔지 모르지만 발표

그러니 잘 찾아봐

쉽긴 X뿔 ...

세상의 모든 것을 그곳에 두고 왔다 .

docs.djangoproject.com

Page 21: 뭔지 모르지만 발표

모든 것을 새롭게

아파치나 IIS 로 다 되는거 아니였나요 ?!WSGI 가 뭐에요 ?파일 서빙을 위한 경량 웹서버를 따로 돌려야한다고요 ?Nginx 는 또 뭐하는 놈이죠 ?HTTP 가 뭐였죠 ?….웹이 뭐죠 ..?

Page 22: 뭔지 모르지만 발표

서버가 어찌 돌아가는거야 ?

소스코드웹서버클라이언트

ASPurl = path 요청

웹서버가 알아서 다 해요

소스코드웹서버(proxy)클라이언트

Django url != path 함수 실행 명령

Django(Python)WSGI

이게 다 뭐다냐 .

Page 23: 뭔지 모르지만 발표

하지만 해냈다 .I 웹진 개발❏최초 버전 약 4 개월 걸림 . 오픈 성공 .❏최적화 , 그거 먹는 거에요 ? -> 장애 발생

❏캐쉬 발라서 해결 .❏Django 는 캐쉬 설정도 참 쉽습니다 .

❏모듈을 나눌 줄 몰랐다 .(Python 초보 )❏천 단위 라인의 코드 발생 (.....)

Page 24: 뭔지 모르지만 발표

이어지는 G 웹진 리뉴얼

수십 개의 게시판 중에 고르고 골라서 보존해야 하는 데이터 약 6 만건마이그레이션 해야 한다 .

더불어 I 웹진의 교훈- 쓸대없이 만들지말고 Django Admin 을 활용하자- 캐쉬 등 미리 최적화 구조를 생각하자 .- 디자인 그냥 내가 하자 .

Page 25: 뭔지 모르지만 발표

목표 재정의

기사를 최대한 읽기 쉽게 합시다 . 기사 생산 및 배포가 쉽게 해주세요 .웹 표준 준수로 검색 잘되게 해주세요 .짧고 예쁜 URL 주세요 . ( 예전 URL 리다이렉트 )망한 커뮤니티는 완전 대폭 축소하죠 .배너는 밥줄이라 포인트 시스템 있어야 해요 .…..

Page 26: 뭔지 모르지만 발표

근데 , 저는 한 명입니다 .

공돌이를 갈아넣어봅시다 .

으아아아아아 ...

한번 해봤으니 이번엔 좀 쉬울꺼야… 쉽긴 X뿔 ...

Page 27: 뭔지 모르지만 발표

일단 마이그레이션

게시판 수만큼 있는 테이블컬럼으로 나뉜 페이지 구분(text1,text2,text3..)기사 내용엔 나모 강한 향기가 (....)….어쩌라고… .

Page 28: 뭔지 모르지만 발표

마이그레이션 계속

모든 것은 Django 안에서 .. (management cmd)1. 하나의 모델로 읽어온다 .2. 필요한 정보를 추출하여 분류 / 관계 생성3. 분류 / 관계 맞춰서 새 모델에 넣기4. 새 모델에서 잘못된 데이터 재 가공5. 위 단계 예상하지 못한 추가 작업

스크립트가 몇 개니 ...

Page 29: 뭔지 모르지만 발표

Backendmodule 분리를 의미 있게 열심히자주 쓰는 모델은 역정규화 save() 에서 캐쉬 초기화django admin 에서 모든 것을 관리

Page 30: 뭔지 모르지만 발표

Publishing각종 포탈 사이트로 기사 전송하는 많은 방법FTP, RSS, XML, JSON…

publish 앱에서 모두 해결관리는 모두 Django admin

Django admin 은 ( 알고 쓰면 ) 쉽고 강력하다 .

Page 31: 뭔지 모르지만 발표

기사 관리 및 배포 (출판 )

Page 32: 뭔지 모르지만 발표

기사 작성

Page 33: 뭔지 모르지만 발표

Frontend기사를 읽기 쉽게 하자 .디자인은 단순 (좀 심했나 .)배너는 밥줄이라 ...

HTML5 / CSS3 jQuery, Bootstrap customIE 6~7 포기 , 8 부분 지원

Page 34: 뭔지 모르지만 발표

허술한 모자이크

Page 35: 뭔지 모르지만 발표

어떻게든 했습니다 .

되던데요 .

더이상 PPT 를 만들다간 내가 지루해서 안되겠다 .

Page 36: 뭔지 모르지만 발표

다하고 보니 ...국내에 얼마 없는 Django 개발자 .( 요샌 많더라 .)얕지만 나름 풀 스택 개발자 .

가 .. 되어있더라… ?!

Page 37: 뭔지 모르지만 발표

정신 차려보니 ...많은 개발자들이 가고 싶어하는 HOT 한 스타트업 SMARTSTUDY 에 탑승해 있네요 .

SMARTSTUDY 는여러분을 환영합니다 .

기 승 전 광고

Page 38: 뭔지 모르지만 발표

들어주셔서 감사합니다 .

질문해주세요 .

과 .. 관심 좀…

치킨 치킨 치킨 ? 취킨 취킨 치킹 .