요즘 만들고 있는 사이드 프로젝트에서 필요한 API를 찾다가 MAP API를 간략하게나마 정리하게 되었습니다. 너프하게 찾은 자료지만 쉽게 보시기엔 편할거에요 :)

 

NAVER : MAP API (1day, 200000 call)

KAKAO : MAP API (1day, 300000 call, dev guide is perfect)

  • KAKAO MAP API는 상당히 여러가지 기능과 인터페이스를 제공한다. 심지어 30만콜이 무료이며 가이드가 상당히 잘 짜여져있다.
  • http://apis.map.kakao.com/web/guide/

Google : MAP API (payment required.. : 200,000won credit free when creating an account.)

NAVER : local API (1day, 25000 call)

  • 이건 맵 API가 아니라 Local 검색 API이다. 서비스를 만들 때 특정 매장 등과 같은 정보를 검색 할 수 있는 기능을 만들어야 하는데 이러한 상황에서 쓰면 유용하다 1일 25000콜 무료이다.
  • https://developers.naver.com/docs/search/local/

 

 

결론 : 저는 검색의 경우 NAVER API(한국 서비스를 만들거라면 아무래도 네이버가 제일 나은 플랫폼이라고 생각해요), 여기서 검색한 결과를 지도에 뿌려주는 것은 KAKAO API를 이용하려고 합니다.

'Develop Issue > Open Source, API' 카테고리의 다른 글

Google OTP 개발하기  (0) 2024.08.06
git merge 취소하기  (2) 2020.06.01
날짜별 지역별 날씨 API 제공 사이트 총정리  (2) 2016.01.19

AWS Free-tier는 이전에도 사용경험이 있고 상세한 설치 설명도 구글검색을 통해서 확인해 볼 수 있지만
이번 기회를 통해서 언제든 신속하게 환경구성을 할 수 있도록 저만의 가이드를 작성해보고자 합니다.

우선 가상서버 EC2를 구성해야하는데요, 어떤 OS를 선택할지에 대해서도 고민이 필요했습니다.
일반적으로 AMI와 Redhat, Unbuntu.. 등등 여러가지 시스템환경을 지원하는데요
이번 프로젝트의 경우 Redhat을 이용하여 환경을 구축하였습니다.
AMI는 AWS에서 지원하는 리눅스지만, 안정성 면에 있어서는 타 리눅스 계열과 비교적 취약하다는 의견들이 많이 보입니다.
Ubuntu는 제가 학생이었을 때 여러차례 다루어본 바 있고 이미 너무 유명한 제품이지만 상용에서 쓰는 것을 그리 많이 보진 못하였습니다.
엔터프라이즈급 서비스에서 많이 쓰는 리눅스 계열은 Redhat 데비안 쪽을 많이 이용한다고 하네요.
자세한 내용은 아래 링크를 확인해주세요.
https://serverfault.com/questions/275736/amazon-linux-vs-ubuntu-for-amazon-ec2
https://okky.kr/article/395579?note=1245081

Free-tier의 서버 스펙을 간략히 설명하자면 다음과 같습니다.
 - EC2 : 월 750시간의 Linux, RHEL 사용
 - CPU 1 core
 - Memory 1GiB
 - EBS : 30GB

EC2를 Free-tier에서 선택가능한 옵션으로 생성해줍니다.
EC2는 참고로 재부팅할때마다 공인IP가 변경되기 때문에
Elastic IP로 변경해주어야 합니다. Free-tier는 1개 EC2에 연결하는 것이 무료 입니다.
참고적으로 연결해둔 상태로 EC2를 끄고있으면 과금이 된다고하네요.(공인 IP는 한정적인 자원이므로 이러한 정책이 있다고 하니 주의가 필요합니다)
Elastic IP를 생성하고 아까 생성한 EC2에 릴리즈해주면, Elastic IP로 EC2 네트워크에 접속할 수 있습니다.

앞서 요약한것과 같이 Free-tier에서는 EBS가 30GB입니다. EBS는 가상 스토리지로써
하드디스크와 같은 역할을 합니다.
EC2의 SSD는 웹서버로 이용하고, EBS를 유저들의 데이터를 입출력하는 장치로 활용하면 좋을 것 같습니다.
그런데 기본적으로 맨처음 EC2를 만들면서 자동생성된 EBS는 10GB밖에 안됩니다.. 첨부터 30GB로 해주지 ㅡㅡ;;
저는 이걸 AWS콘솔에서 30GB로 변경해주었습니다.
하지만 실서버에서는 이미 파티션을 10GB로 잡고 있기때문에 직접 변경해주는 작업이 필요했습니다.
상세한 내용은 다음을 참고해주세요.
https://sfixer.tistory.com/entry/%EB%94%94%EC%8A%A4%ED%81%AC-%EB%B3%BC%EB%A5%A8-%EC%82%AC%EC%9D%B4%EC%A6%88-%EC%A6%9D%EA%B0%80%EC%8B%9C%ED%82%A4%EA%B8%B0
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html

이렇게 기본적인 서버 인프라는 갖추었으니 LAMP 환경을 구축하고 마무리 지었습니다.
LAMP에 대한 설치 프로세스는 위키메뉴의 Reference에서 관련된 문서들을 확인 할 수 있습니다.

1. 우선 생성일시를 임의로 조작한 파일을 생성한다. 두개를 생성해야 한다. 조회하고자하는 기간의 시작일시와 끝일시로...

# touch -t 201906031200 start.txt 

# touch -t 201906031500 end.txt 

위의 경우 19년 6월 3일 12시부터 15시까지의 추가, 수정된 파일을 찾기 위해 임시 파일을 생성한 것이다. -t 옵션을 주고 입력한 시간대로 생성일시가 조작되어 생성된다.

 

2. 검색하기

# find /tmp -type f -newer start.txt ! -newer end.txt -ls

아까 생성했던 임의의 파일 두개를 저렇게 옵션으로 넣어준다. -newer는 입력된 파일을 기준으로 이후에 생성된 것들을 찾아주는 것인데, !(부정)을 활용하여 이전에 생성했던 것까지 추가해주면 특정 기간동안의 파일을 검색 할 수 있게 된다.

'Develop Issue > Linux' 카테고리의 다른 글

AWS Free-tier 웹서버 빠르게 설치하기  (466) 2019.09.23

mysql에서 비밀번호를 변경할 때 일반적으로 쓰는 명령어


update user set password=password('q1w2e3') where user='root';


근데 이게


ERROR 1054 (42S22): Unknown column 'password' in 'field list'


에러가 발생할때가 있다..

이때는 password 대신 authentication_string 필드가 존재한다.

따라서 


update user set authentication_string=password('q1w2e3') where user='root';

로 시도해본다.

1. 3306이 접근 가능한 상태인지 확인

첫번째로 우선 아래 링크를 따라 확인해본다. 제일 기본적인 확인 절차..

https://zetawiki.com/wiki/MySQL_ERROR_1045_%EC%A0%91%EA%B7%BC_%EA%B1%B0%EB%B6%80

bind-address를 주석해도 안된다면

bind-address=0.0.0.0

으로 설정한다.

그리고 재시작

service mysql restart


2. 접속하려는 계정이 외부접속이 가능한 권한을 가졌는지에 대한 문제 확인

위 과정을 통해 접속은 돼는데,, 접근이 거부돼어 실제로는 접속이 튕기는 현상이 발생했다.

이때 1의 과정에서 조회했던 테이블을 확인해보면 같은 계정이더라도 Host 필드가 다른 것을 확인할 수 있다..

mysql> SELECT host, user, password FROM mysql.user WHERE user='root';
+-----------+------+-------------------------------------------+
| Host      | User | Password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *64B2393C4607E57C549B41537134BC7C3314164E |
| myserver1 | root | *64B2393C4607E57C549B41537134BC7C3314164E |
| %         | root | *F3A2A51A9B0F2BE2468926B4132313728C250DBF |
+-----------+------+-------------------------------------------+
1 rows in set (0.00 sec)

localhost는 당연히 자기자신의 호스트에서 접속하는 것을 의미하며 %는 모든 외부 호스트에 대해 접근할수있도록 하는 설정이다.

따라서 만일, % 또는 본인이 접속시도 하고자 하는 곳의 호스트가 위에처럼 등록되어있지 않다면 접근 거부 현상이 일어난다.


CREATE USER 'testID'@'%' IDENTIFIED BY 'mytestpw' PASSWORD EXPIRE NEVER;

GRANT ALL PRIVILEGES ON TESTDB.* TO 'testID'@'%';

flush privileges;


이렇게 해주면 자동으로 저 필드에 %가 추가된다.

flush privileges;를 해주는 것을 잊지말자

http://cpdev.tistory.com/23

관리자 페이지 무료 템플릿 모음


https://colorlib.com/wp/free-bootstrap-admin-dashboard-templates/

HTML CSS 이미지 블러효과 (뿌옇게 만들기)


https://nubiz.tistory.com/443

https://fronteer.kr/service/html2jade

https://studyforus.com/help/274040



+ Recent posts