Monthly Archives: September 2018

Clojure 이용한 아무거나 개발

노는김에.. 클로저로 뭘 만들어보려고 하는데..
프레임워크가 필요할 것 같아서

두가지
* http://clojure-liberator.github.io/liberator/
* https://github.com/weavejester/compojure
* https://github.com/cmiles74/bishop
* Luminus – Leiningen
https://stackoverflow.com/questions/26674766/clojure-rest-api-frameworks

클로저는 문법이 희한해서 왠지 해보고 싶지 않나

빌드 툴은 Gradle을 이용. Leiningen이 표준이지만.. 공산당 같은 이름이라 안 쓰기로 했다.
최근 Gradle에서도 Clojure 플러그인이 있으니 그걸 쓰겠다.
IDE는 Intellij에서 할건데 Cursive를 깔면 좋다고 하지만.. 유료라 안깔고 쓸 것 같다.

서버 – Cloud vs IDC

그냥 다 귀찮으니 편하게 쓰고 싶다면 Cloud를 쓰는게 맞다. 서버 조그만거 껐다 켰다 하는 경우에는 Cloud가 가격도 싸고..
그런데 뭔가 조금만 무겁게 돌리려고 하면 Cloud의 GCP기준 2cpu 월3만원 4gb 서버는 좀 버거워 하는게 느껴진다.
Kubernetes가 자동으로 설치되고, Storage(s3, goosto..) 처럼 설치해서 관리하기 매우 난감한 솔루션도 종량제로이용 가능. minio, hdfs등을 설치해서 관리하려면 머리가 아프고 소규모로 쓰는데 이걸 설치하려면 골이 아프다.

서버2개정도로 빡빡하게 돌리려면 IDC
통큰아이 서버 중에 5만원~10만원 정도 하는거 두개쯤 쓰면 된다. 단기계약도 가능.

스케일업다운해가면서 테스트 할거면 Cloud

고정적으로 돌릴거면 IDC 코로케이션
http://www.koreaidc.com/03_colo/colo_type.html
액면가(협의가능) 쿼터렉(20Mbps) 25만, 하프렉(50Mbps) 60만, 풀렉(100Mbps) 110만
LG IDC
http://www.uplus.co.kr/biz/bzid/clct/RetrieveBzIdCoIt.hpi
부가포함 – 쿼터 44만, 하프 75.5만 풀 121만
네트워크나 기타 서비스 가격 차이가 있을 수 있다.
평촌IDC를 쓰면 AWS 다이렉트 연결도 가능.

하이브리드 사용을 하려면 AWS Direct 네트워크 연결이 되는 IDC를 선택하면 된다.

결론은

없지만… 개인적으로는 그냥 로컬서버(집에다가) 두개정도 돌려놓고 개발 하다가 클라우드에 한두개정도 올리고… 클라우드 비용이 100만원을 넘는 시점에 하이브리드 환경을 고려 해 보는게 좋지 않을까

요즘시대에 완전 온프레미스 환경을 구축하는건 좀 비효율적이라고 생각한다. s3와 같은 환경을 직접 구축하는건 … 필요해지는 순간이 오긴할까

Error: Win10 Openjdk10 Gradle 빌드 오류

openjdk10 환경에서 gradle 일정이하 버전은 안 돌아간다.
시스템 gradle은 4.9인데 프로젝트 gradle wrapper버전이 낮아서 openjdk10에서 구동이 안되는 상황

실행해주면 해결

Gradle 플러그인 선언 스타일

요즘방법

플러그인 검색 페이지 : https://plugins.gradle.org/
옛날건 properties 파일에 플러그인 버전을 다 설정 해 놨는데 새로운 설정방법으로 하면 값을 가져오지 못한다. 자주 하는건 아니니가 그냥 노가다 표기법 사용.

옛날방법

멀티모듈, 버전 설정파일이 있는 경우 사용

옛날방법은 낭만이 있었는데 요즘건 너무 삭막해

서비스 베이스 프로젝트

뭔가 개발하려면 꼭 필요한 녀석들이 있다.
그리고 한번 개발 해 놓으면 계속 쓸 수도 있고
(나만그런가 싶기도 하지만)

Infra : DB, MQ, MemoryStorage, FileStorage

App : 파일저장, SSO

클라우드로 하면 되는데.. 왠지 클라우드를 쓰기 싫을 때도 있고

그럴 때 필요한 것들

FileStorage

하듭 파일시스템을 써야되나 고민했는데 아마존 S3처럼 쓸 수 있는게 있다고 한다.
minio https://www.minio.io/
https://github.com/minio/minio
fakes3 https://supso.org/projects/fake-s3
https://github.com/jubos/fake-s3

s3 기능을 많이 흉내내서 만들었다고 하는데 안정성은 잘 모르겠지만 남는피씨서버하드에 돌리기 좋아보인다.

Ubuntu18.04 Bionic Beaver HDD Mount 하드 추가

파티션 잡기

parted 이용
(참고) 

포맷

자동 마운트

tmpdir을 원하는 경로로 변경 

Vagrant box 추천

vagrant 박스 – 공식 박스가 배포되는 경우

debian/stretch64
ubuntu/bionic64
centos/7

공식은 아니지만 여기도 종종 사용하고
bento/ubuntu-18.04이렇게 공식박스를 제공하는 곳도 있지만…

문제는.. 
openbsd, fedora 등 오픈소스진영은 배포자가 관리 주체가 불확실한 경우가 많다
대부분 virtualbox 버전만 제공된다.

parallels, hyperv는 개인이 만든걸 쓰거나 직접 만들어야된다.

그래서 윈도우에 virtualbox를 깔고 쓰게 되는데…

그러다가 발견한 이 계정.

1) hyperv
2) libvirt
3) parallels
4) virtualbox
5) vmware_desktop

다있음.