본문 바로가기

V8 엔진 은 어떻게 자바스크립트 를 최적화 해주는가? #1 V8 엔진 은 자바스크립트 속도 향상을 위한 목적으로 설계되었다. 이런 속도를 최적화 한 방법에는 소스코드가 실행될 때 Ignition이라는 인터프리터로 한 줄씩 바이트 코드를 생성하여 캐싱 하였다가 다음번에 똑같은 구문을 반복 하였을때 최적화가 필요하다고 판단 되면 TurboFan 컴파일러 를 사용해서 머신 코드를 생성하여 매번 똑같은 작업을 방지하도록 속도 개선을 하였다. 이 두개 (인터프리터+ 컴파일러) 를 사용한 형태를 JIT(동적 컴파일러)이라고 하는데 인터프리터와 컴파일러의 장점을 취한 방식이다. V8 정의 V8 엔진 은 구글 개발팀에서 ECMAScript(ECMA - 262) 3rd 표준규격의 C++로 작성되었다. 오픈 소스 자바스크립트 컴파일러 혹은 엔진이라고 불리며 크롬 브라우저나 안드로..
문장을 분석하여 포스팅에 도움을 앱 소개 - 포스팅 도우미 https://www.fnv-dev.co.kr/ 포스팅 도우미 FnV www.fnv-dev.co.kr 위 사이트는 블로그 에 글을 포스팅 할때 제목이나 태그를 어떤 것을 넣어야 할지 고민 하는 분들에게 도움을 주기위해 개발된 앱이다. 각종SNS (인스타, 페이스북, 트위터) 등에도 사용이 가능 하므로 범용적으로 쓰시길 바란다. # 앱 사용 방법 왼쪽 텍스트 박스에 포스팅할 문장을 입력하고 문장 분석 버튼을 클릭 하면 오른쪽 문장결과에 주요 단어 및 구절, 문장 을 리스트업 해준다. 결과 내용을 보고 마음에 드는 키워드들을 선택 하면 끝. # 앱을 개발 하게 된 배경 한창 파이썬을 이용한 NLP(자연어처리) 와 딥러닝에 관심 있을때 이 알고리즘을 발견 하게 되었고 어떻게 사용 할 수 있을지 아이디어가 떠오..
Docker 를 처음 적용해보는 분들에게 도움을 드리는 글 (설정법 포함) # 개요 글이나 영상 포스팅시 요약 단어와 문장을 분석 해주는 웹앱을 만들게 되어 호스팅 할려고 이것저것 알아보던중 heroku 에 배포 하면 무료로 사용 할 수 있다는 것을 알고 기쁜 마음에 관련 문서들을 읽어 봤지만 내가 만든 앱 의 구성은 nginx+react+fastapi 로 이루어져있기 때문에 단순하게 heroku git 에 push 하면 바로 배포가 되지 않는다. 다른 방법은 없을가 방법을 찾던중 docker container 형식으로 배포할 수 있다는 것을 알게 되었고 혼자 사용 하는 서버에 배포 할 건데 굳이 docker 가 필요 할가? 라는 고민에 빠지게 되었는데 이내 필요하다는 결론에 이르게 된다. 이유는 한 서버에 (서버가 감당 할 수 있는) 여러 프로젝트를 올리게 될것이고 그곳에는 ..
개발자는 어떤 언어를 익혀야 할가요? 에 대한 개인적인 답 MTO 개발자가 되고 싶은 취준생 혹은 이미 현업에 있는 개발자 분들이 자주 하는 질문은 아마 어떤 언어를 익혀야 할까요? 일 것이다. 언어에 따라 취업할 수 있는 회사도 달라지고 그에 따른 연봉 차이가 나서 개발자들은 고민을 많이 하게 된다. 필자 또한 어떤 걸 익혀야 할지 에 대한 고민을 많이 했었다. (현재 유행하는 언어를 배워하나? 아니면 많은 사람들이 사용하는 언어를 배워야 하나? 등등) 새로운 언어 에 대해 흔히 하는 착각은 갑자기 없던 기술이 뿅(?) 하고 나왔다는 환상을 가지고 있다 사실은 원천 기술을 가지고 기존에 있던 문제에 대해 개선을 해서 나오는 형태 이므로 새로운 기술을 익힌다고 해서 근본이 되는 기술을 배제하고 익힐 순 없는 노릇이다. 도식화하자면 아래와 같은 형태가 될 것이다. * 원..
RPG 게임을 통해서 본 자기계발 하는 법 # RPG 게임 모니터링하다가 문득 든 생각 나는 한국산 MMORPG 게임을 하고 있다. 요즘 모바일 게임은 자동 게임이 대다수라 직장인 인 나는 거의 자동을 돌리고 있는데 두 파트로 나뉘어서 자동을 돌린다 한 파트는 소과금이 되어 있는 파티 케릭들로 이루어져 있고 다른 한 파트는 과금이 많이 되어 있는 중과금 이상인 케릭 하나가 있다. 소과금 파티 케릭들은 한정된 사냥터에서 한정된 아이템만 얻을 수 있다. 그리고 신규로 나오는 사냥터를 갈 수가 없다. 이유는 레벨도 낮고 아이템을 갖추고 있지 않아서 물약이 많이 든다. 효율이 나오지 않아서 갈 수가 없다 혹은 케릭이 죽기 때문에 갈수가 없다 그래서 사냥터 제한이 걸리고 거기서만 나오는 아이템만 얻을 수 있다. 중과금 한 캐릭터는 레벨과 아이템을 갖추고 ..
성능 개선에 성공한 Master-Slave Model (feat. Nginx,Docker) 파이썬 웹앱을 클라우드에 올리기 위해 Nginx, Docker 개념을 공부하다가 유사하다고 느껴졌는데 둘다 Master-Slave Model 형태를 띄는 것 같다. ㅇ 마스터(Master), 주국(Primary) - 하나의 일을 수행하는데에 있어 동작의 주체가 되는 역할을 하는 것 . 모든 다른 슬레이브(종국)들을 제어하고 명령하는 주체 ㅇ 슬레이브(Slave), 종국(Secondary) - 종속적인 역할을 하는 것 . 주로 마스터의 지시에 따라 행동 # Nginx Nginx는 C10K (10,000 이상 요청에 대한 커넥션 생성이 되지 않아 성능이슈 가 발생 하는 것) 문제를 해결 하기 위해 개발 되었는데 이 문제를 Event-Driven-Model 로 성능 이슈를 해결 하였다. 이벤트 기반의 모델로 ..
학습 효과를 높이기 위한 두뇌 강화 방법 주말에 뇌과학 관련하여 기사를 읽던 도중 뇌 최적화를 할려면 어떻게 해야 할가라는 의문이 들었다. 그리고 최적화가 되면 학습효율도 올릴수 있을거 같아 관련기사를 찾아보았다. # 장기 기억을 잘하기 위한 방법 아래 기사 내용은 요약을 하자면 두개의 방이 존재 하는데 실험쥐가 한방에 더 오래 머무는 방이 있다면 그 방을 더 행복함 (선호)을 느낀다는 내용이다. 실험쥐는 특정 한곳에 오래 머물던 방 반대 쪽 (비선호하는 곳)에 모르핀(마약성진통제) 성분을 주입하여 좋아함을 경험하도록 인위적으로 만들었더니 선호하지 않던 곳이 선호하던 곳으로 변해서 오랫동안 머무른다고 한다. https://blog.naver.com/ibs_official/221638665167 자꾸만 퇴근하고 싶은 뇌 과학적 변명 집에 끌리는 ..
탑건 메버릭 과 같은 사람과 일하고 싶다 간만에 영화 "탑건 메버릭" 편을 봤다. 감상평도 좋고 다들 영화 이상의 감동이라는 글들이 많아서 내심 기대하면서 봤는데 오프닝에 나오는 음악 하나로 큰 감동의 영화라고 느낄 수 있었다. 영화 보는 순간 순간 마다 가슴 벅차오르는 포인트들이 있어서 눈가엔 약간의 눈물도 맺혔다. 줄거리나 감상평 보다는 특정 장면(Scene)에 느끼는 나의 생각을 적어 보고자 한다. #Scene. 선체 한계를 뛰어넘어 마하10 도달하는 메버릭 마하10을 넘지 못하면 진행하고 있는 프로젝트가 종료되는 위기에 놓였고 이제는 파일럿이 필요하지 않은 무인 조정 시대가 오고 있어서 상부에서는 파일럿의 존재 가치가 없다고 생각하고 있다. 그런 상황에 프로젝트는 시작되었고 메버릭은 선체 한계까지 끌어올리면서 마하10을 넘기게 된다. 실..