SMALL

Study 441

서버 유형은 어떤 것이 있을까?

서버의 유형은 굉장히 다양하다. 무엇이 있을까? 만들려는 애플리케이션의 용도에 따라 필요한 서버 유형이 달라진다. 예를 들어 카카오톡이나 라인처럼 실시간 채팅 앱을 만들고 싶다면 실시간 채팅 기능을 지원하는 채팅 서버가 필요하다. 그리고 다양한 센서로부터 값을 전달받아 동작하는 사물인터넷(IOT, Internet AOf Things) 기능을 만들고 싶다면 여러 센서들과 데이터를 주고 받을 수 있는 서버가 있어야 한다. 요즘에는 모바일 앱을 많이 만들기 때문에 스마트폰 같은 모바일 단말에 필요한 기능을 제공하는 모바일 서버가 필요하다. ▲ 대표적인 서버 유형 웹 서버는 모든 서버의 기본이 된다. HTTP 프로토콜로 데이터를 주고받을 수 있는 웹 서버를 만들고 나면 그 위에 채팅 서버나 위치 기반 서비스 서..

Study/IT 이야기 2019.03.06

서버는 왜 필요할까?

최근에 안드로이드나 아이오에스(IOS) 기반의 모바일 앱을 만드는 개발자는 서버에 대한 지식이 전혀 없는 상태로 웹 서버나 채팅 서버를 만들기도 한다. 이런 경우라도 본 포스팅을 보고 서버에 대한 지식을 익힌다면 필요했던 서버 기능을 대부분 문제없이 만들 수 있을 것으로 예상한다. 물론 예상이다 ㅎㅎㅎㅎ 그렇다면 노드가 무엇인지 배우기 전에 서버가 무엇이며, 어떤 종류의 서버가 있는지 알고 보자. 우리는 PC나 스마트폰에서 여러 가지 프로그램(Program)을 사용한다. 이 프로그램을 애플리케이션(Applicastion)이라고 부르며, 스마트폰에서는 앱(App)이라고도 부른다. PC에서 동작하는 프로그램중 대표적인 것이 파워포인트, 워드, 엑셀과 같은 문서 프로그램인데이런 프로그램은 사용법만 익혀도 충분..

Study/IT 이야기 2019.03.06

노드란 무엇일까?

노드(Node.js)는 자바스크립트를 이용해서 서버를 만들 수 있는 개발 도구이다. 노드라고도 부르고 노드제이에스라고도 부른다. 서버를 만드는 개발 도구는 굉장히 만은데 왜 하필 노드를 사용하는지에 대해서부터 알아보자. 노드라는 개발 도구를 새로 만들게 된 이유는 아주 단순하다. 2009년에 라이언 달리(Ryan Dahl)로부터 만들어진 노드는 그 당시 웹 서버에 파일을 업로드할 때,업로드가 완료되기 전까지 웹 서버에서 데이터를 조회한다거나 하는 등의 다른 작업을 할 수 없었다고 한다. 이 문제를 해결하기 위해 새로운 방식의 서버 개발 도구를 만들기 시작했는데 그것이 노드이다. ▲ 웹 서버에 파일을 업로드하면서 다른 작업을 동시에 처리하기 힘든 문제가 있었다. 웹 브라우저를 통해 내 PC에 있는 문서 파..

Study/Node.js 2019.03.06

[AWS] S3 따라만 해도 할 수 있다!

정적 콘텐츠(Static Contents)를 제공할 S3 Bucket을 하나 만들고,해당 Bucket과 관련된 몇 가지 설정(Static Website Hosting 기능 활성화, 접근제어 정책)을 진행 할 것이다. 3-1 S3 Bucket 생성 먼저 블로그 서비스를 위한 S3 Bucket을 생성한다. Bucket의 이름은 모든 AWS 계정과 Region에 걸쳐 전 세계에서 유일해야 한다. [AWS Management Console] > [S3] > [Create Bucket] 생성한 Bucket에 대한 Access Log 설정을 한다. 여기서 잠깐 Q&A Q. S3의 Access Log는 언제 어디에 저장되나요?A. Access Log는 원하는 S3 Bucket과 경로를 지정하면 해당 위치에 객체 형태..

Study/Cloud 2019.03.04

[AWS] S3는 어떤 기능을 제공할까?

S3 서비스는 객체를 단순히 저장하는 기능 외에도 버킷 단위로 여러 가지 부가 기능을 설정하여 사용할 수가 있다! 2-1 Static Website Hosting S3는 주로 데이터를 백업하거나 2차 분석을 위한 로그 데이터를 저장하는 용도로 사용된다. 또한, S3에 저장된 객체는 인터넷을 통해 접근이 가능하므로특정 웹사이트의 정적 콘텐츠를 S3를 통해 제공하는 역할로도 사용할 수 있다. 이 부분을 보다 편리하게 제어할 수 있도록 만든 것이 "Staric Website Hosting" 기능이다. Static Website Hosting 기능을 활성화하면,기본적으로 해당 버킷으로 접근할 수 있는 전용 도메인 주소를 제공한다. Index 페이지, Error 페이지를 정의할 수 도 있고, 규칙에 따라 Redi..

Study/Cloud 2019.02.26

1, 2차원 배열로 위도, 경도 표현하기

Colored By Color Scripter™12345678910111213141516171819202122232425262728public class GeoPoint { public static void main(String[] args) { // 실수 변수 double latitude1 = 37.52127220511242; double longitude1 = 127.0074462890625; // 서울 double latitude2 = 35.137879119634185; double longitude2 = 129.04541015625; // 부산 System.out.println(latitude1 + "\t" + longitude1); // 실수 1차원 배열 double[] latIng1 = {la..

Study/JAVA 2019.02.24

멤버 메서드를 이용하여 신체 지수 구하기

Colored By Color Scripter™123456789101112131415161718192021public class BioCalendar3 { public static final int PHYSICAL = 23; //상수 (개발자 정의) int index = PHYSICAL; // 상수값을 변수에 대입 static int days = 1200; public static void main(String[] args) { BioCalendar3 bio = new BioCalendar3(); // 인스턴스 생성 double phyval = bio.getBioRhythm3(days, PHYSICAL, 100); System.out.printf("나의 신체 지수 %1$.2f입니다.\n", phyval)..

Study/JAVA 2019.02.24

Math 클래스를 사용하여 신체 지수 구하기

Colored By Color Scripter™12345678910111213public class BioCalendar2 { public static final int PHYSICAL = 23; //상수 (개발자 정의) public static void main(String[] args) { int index = PHYSICAL; // 상수값을 변수에 대입 int days = 1200; double phyval = 100*Math.sin((days % index) * 2 * Math.PI/index); System.out.printf("나의 신체 지수 %1$.2f입니다.\n", phyval); }} Math 클래스는 java.util 패키지에 있고, 이 클래스의 메서드는 대부분 static으로 객체 생..

Study/JAVA 2019.02.23

연산자를 이용하여 바이오리듬 값 구하기

Colored By Color Scripter™1234567891011121314151617package kr.cstudy.example; public class BioCalendar { public static final int PHYSICAL = 23; public static void main(String[] args) { int index = PHYSICAL; int days =1200; double vals = (days %index) *2 *Math.PI/index; System.out.println(Math.toDegrees(vals)+"도"); }} 연산할 때 double과 int 타입이 같이 있으면 결과값은 자동으로 double이 된다. 정수/정수는 몫을, 정수%정수는 나머지를 구한다. ..

Study/JAVA 2019.02.23

[AWS] S3란? 무제한으로 저장할 수 있는 스토리지!

한마디로 요약하면 S3는 "높은 내구성"과 "높은 가용성"을 "저렴한 가격"으로 제공하는 "인터넷 스토리지 서비스" 이다. 하나의 저장 공간을 구성하고 그 공간에 데이터를 업로드하면 인터넷을 통해 해당 파일을 자유롭게 다운로드할 수 가 있다. 물론 데이터를 업로드하고 다운로드하는 주체는 일반 인터넷 사용자가 될 수도 있고, 다른 AWS 서비스 또는 사용자의 어플리케이션이 될 수도 있다. 1-1 Object Storage, 그리고 S3S3의 가장 큰 특성, 다시 말해 높은 내구성과 가용성을 설명하기 위해서는 객체 스토리지(Object Strage)가 어떤 방식으로 설계되었는지부터 이해할 필요가 있다. 일반 Strage 예시 일반적인 스토리지부터 생각해보자. 한 사용자가 데이터를 새로 저장(업로드)하고, 또..

Study/Cloud 2019.02.23
반응형