요즘 프로그래머들 사이에서 가장 뜨거운 이슈 하나를 꼽자면, 난 함수형 프로그래밍(Functional Programming)을 꼽을 것이다. 특히 요새 들어 함수형 프로그래밍 열풍이라는 것을 많이 느낀다. Java, C++, C#, JavaScript 등 사용자 층이 두텁고 각각의 철학이 있는 언어에서 함수형 패러다임을 앞다투어 차용하고 있는 현상은 ...
웹서버를 두대로 늘리려면?
웹 서버를 두 대로 늘리려면? 로드 밸런싱! 고가용성! -> L4 스위치 -> HAProxy L4 스위치? 다나와 검색결과.. 아주 아주 매우 비싼 장비.. IP 와 TCP/UDP 포트를 보고 적절한 서버로 패킷을 전송하는 장비 L4가 적절한 서버 고르는 방법 (로드 밸런싱 알고리즘) Lea...
서블릿과 JDBC
데이터베이스를 사용하려면 필요한 것 데이터베이스에 요청을 전달하고 결과를 받을 때 사용할 도구 (JDBC) 데이터베이스에 명령을 내릴 때 사용할 언어 (SQL) Type4 JDBC 드라이버는 MySQL 통신 프로토콜에 맞추어 데이터베이스와 직접 통신하기 때문에 ODBC 드라이버를 필요로하지 않아. 그래서 실무에서 Type4 JDBC 드...
서블릿 프로그래밍
CGI (Common Gateway Interface) 웹 서버와 프로그램 사이의 데이터를 주고 받는 규칙. 웹 브라우저 <-> 웹 서버 <-> 프로그램 CGI 프로그램은 C나 C+, Java와 같은 컴파일 언어로 작성할 수 있으며, Perl, PHP, Python 등 스크립트 언어로도 작성 가능. 컴파일...
Java 8 파헤치기
Java 8 소개 들어가기전에.. 2014년, Java의 새로운 버전(1.8)이 공개되었다. Java의 버전 업은 Evolution (기능적인 부분의 개선)과 Revoultion(언어 자체 형태의 변화)으로 나뉘는데, 이번 Java 8 버전 업은 Revolution에 속한다고 한다. Java 8에서 어떠한 기능들이 추가되었는지, 잘 정리된 여러 블...
Oauth 2.0 Protocol 소개
Oauth 2.0 Protocol 인증 방식 (Grant types) 들어가기전에.. Garden Platform Oauth 2.0 Protocol은 나에게 아주 조금은 친숙한 주제이다. 과거 삼성소프트웨어 멤버십 활동 중에 멤버십 내에서 활용할 목적으로, 3개월 동안 팀원들과 직접 Oauth 2.0 Provider Garden Platform을 ...
NHN Toast Rookie 3기 1주차 기술 교육 회고
1주차 기술 교육 회고 숨 가쁜 일주일이었다. 필수 구현 기능과 ‘투표 서비스’ 라는 주제만을 가지고 팀원들과 자유롭게 아이디어를 develop 시켰고, 드디어 지난 금요일 기획안 초안을 완성하였다. 이제 팀원들과 협업하며 기술로 구현하는 일만 남았는데, 기술 구현에 앞서 지난 일주일의 나를 회고하려 한다. 내가 잘한 점 팀워크를 다...
웹 프로그래밍 기초 다지기
HTTP 웹 브라우저와 웹 서버 사이의 데이터 통신 규칙 HTTP 모니터링 웹 브라우저와 웹 서버 사이에 주고받는 데이터를 들여다보려면 HTTP 프록시 프로그램이 필요함. 웹 브라우저 <-> HTTP 프록시 <-> 웹서버 프록시 서버는 클라이언트와 서버 사이에서 통신을 중계...
웹 애플리케이션 이해
클라우드 웹을 기반으로 하여 서버 또는 앱, 콘텐츠 등을 제공하는 것 데스크탑 앱의 문제점 배포가 번거롭 다 보안에 취약하다 전통적인 클라이언트/서버 아키택처 클라이언트 : UI, 비즈니스 로직 서버 : 데이터처리(DBMS) 단점 프로그래임이 변경딜 때마다 PC에 다시 설치해야 해. 클라이언트가 DBMS로 ...