최신글
-
go cd
go cd란? 오픈소스이다! 그리고 Continuous Integration and Continuous Delivery system이다. gocd는 gocd 서버와 gocd agent로 이루어져있다. 셋팅 시 자바기반이라 jdk가 필요하다. 그리고나서 go-server와 go-agent를 셋팅하면 된다. 셋팅 예제(CentOS기반) 1) 자바 설치 sudo yum install -y java-1.8.0-openjdk-devel.x86_64 # 자바 기반이라 자바 설치 2) go-server 설치 sudo yum install -y go-server # go-server 설..
-
The Rich
열 번째 연금술 | 길게 생각하고 미래를 설계하라 짧은 미래를 그릴수록 수익은 적어진다 10년의 부를 설계하라 경제적 자유를 넘어 정서적인 부자가 되라 장기적인 사고방식에는 강력한 힘이 있다 + 백만장자의 특별한 질문 아홉 번째 연금술 | 아이디어를 자주 이야기하라 백만장자의 부를 부르는 말습관 타인의 삶에 쉽게 현혹되는 이유 아이디어는 미래를 위한 최고의 자산 내가 하는 말이 곧 나의 미래다 + 백만장자의 특..
-
Producer-Consumer 패턴
더보기 Runnable과 Callable의 차이점은? acet.pe.kr/819 > 상황 성능이 좋지 않은 부분이 발생하여 그 부분을 해소하기 위해 멀티 쓰레드로 처리하려고 했다. 그런데 멀티 쓰레드 처리 후 나오는 리스트형 데이터가 재사용 되어지는 문제가 발생. > 결론 생산자-소비자 패턴을 사용하기로 함. 생상자 - 멀티쓰레드 처리 및 리스트형 데이터를 블라킹 큐에 넣어줌. 넣기만 함! 소비자 - BlockingQueue에 넣어진 것들을 사용함...
-
Runnable과 Callable의 차이는?
Runnable과 Callable의 차이는? - Runnable : 객체와 Exception을 발생 시키지 않음. - Callable : 특정 타입의 객체와 Exception을 발생 시킴. ㅇㅋ!
-
WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0644 for '어쩌구@example.com/id_rsa' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. Load key "어쩌구@example.com/id_rsa": bad permissions ubunt..
-
머리털 나고 최고 수익!
언젠가부터 재테크에 흥미가 생겨버렸다. 부동산과 주식 등 많은걸 알아보았다. 앞으로도 현재진행형! 이번에 회사를 분석해서 싸게 사서 비싸게 팔아버렸다! 하루만에 엄청난 수익을..와우..!! 너무 기쁜 나머지 이렇게 블로그에도 올려본다 헤헤 > 잃지 않는 주식을 해야한다. 마인트 컨트롤을 다시 해서 좋은 종목을 찾고 제테크를 해보자! 주식을 사기전에는 적정주가를 체크 해보자! 하이 리스크 하이 리턴..! 리스크를 줄..
-
Docker 리서치
도커 등장 배경 docker 관련 문서 : https://github.com/remotty/documents.docker.co.kr 서버를 관리한다는 것 복잡하고 어려운 서버관리 시간이 흐르면서 서버환경이 종종 바뀌거나 오픈소스가 바뀌거나 하는 걸 볼수 있습니다. CentOS -> Ubuntu Chef -> Ansible -> 또 다른 오픈소스 DevOps의 등장으로 짧은 개발주기와 잦은 배포 마이크로서비스 아키텍처의 유행 -> 프로그램은 더 잘게 쪼개어져 관리는 더욱 복잡해짐...
-
마이크로서비스 아키텍처(Microservice Architecture)
마이크로 서비스 아키텍처 큰 문제를 상대적으로 작게 분해해 해결 이렇게 작게 나눈 각 서비스가 독립적으로 역할을 수행 한가지만, 아주 잘 처리하자. 라는 것이 마이크로 서비스 아키텍처의 기본 철학이다. 단일 책임 원칙(SRP)를 중시(Single Responsibility Principle) 비즈니스 태스크를 작은 태스크로 나누며, 각 태스크마다 마이크로 서비스를 정의 한다. 비즈니스 요구사항과 태스크를 얼마나 잘 나눴는지에 따라 시스..
오픈소스
-
SpringBoot 구조 - Monolith / Micro
k8s 도입 전 클라우드 네이티브 개발에 대해서 알게 되었다. cloud native development? 왜 클라우드 네이티브 개발인가? 클라우드의 이점을 완전하게 활용하려면 애플리케이션에 대한 새로운 접근 방식이 필요하며, 컨테이너를 사용한 패키징, 현대화된 아키텍처 수용, 애자일 기술 활용이 이에 해당 합니다. 클라우드 네이티브 방식은 개발 가속화, 제공 가속화, 변화하는 요구에 대한 적응을 가속화할 수 있는 최적의 방법입..
-
Jackson Annotation Examples
@JsonInclude 어노테이션 속성을 제외 하는데 사용. ex) JSONObject _connects가 null인 경우에 제외! @JsonInclude(JsonInclude.Include.NON_NULL) private JSONObject _connects; @JsonIgnoreProperties 클래스 레벨의 어노테이션이고 무시할 속성을 표시 @JsonIgnoreProperties({ "id" }) public class BeanWithIgnore { public int id; public String name; } id는 무시되는걸 알수 있다. @Test public void whenSerializin..
-
@Retryable
특정 Exception이 발생하면 일정 횟수만큼 재시도 할 수 있는 어노테이션이다. @EnableRetry 작성.(configuration 등) 재시도 하고 싶은 메소드에 @Retryable 작성. include : 특정 Exception이 발생할 때 retry exclude : 설정 된 Exception 재시도 제외 maxAttempts : 최대 재시도 횟수(default 3회) backoff : 재시도 pause 시간 ex) FailedStoreException 발생 시 최대 5번 시도! delay 10 @Retryable(value = { FailedSt..
-
k8s 자격증?
온라인 시험이.. 300달러..!!! 개 비싸다 ㅋㅋ 열공하고 회사에서 지원해주면 도전해 볼 만할듯! ㅋㅋ www.cncf.io/certification/cka/ Certified Kubernetes Administrator (CKA) | Cloud Native Computing Foundation The Certified Kubernetes Administrator (CKA) program was created by the Cloud Native Computing Foundation (CNCF), in collaboration with The Linux Foundation, to help develop the Kubernetes ecos..
-
@PreDestory란?
이 메소드는 소멸 메소드이며 이전 @PostConstruct와 상반된 개념이다. JSR-250 스펙에 따라 구현 되었다. (걍 자바에서 사용하려면 또는 springframework 2.5미만 버전에서는 javax.annotation 패키지 관련 라이브러리가 필요 함.) Springframework 2.5부터는 사용 가능! 현재 프로젝트에서는 @PostConstruct와 @PreDestory만 사용하고 있다. 하지만 찾아보니 여러가지 방법이 존재했다. 아래의 멋진 사이트를 참고하면 된다...
-
@PostConstruct란?
@PostConstruct? javax.annotation Annotation Type PostConstruct @Documented @Retention(value=RUNTIME) @Target(value=METHOD) public @interface PostConstruct The PostConstruct annotation is used on a method that needs to be executed after dependency injection is done to perform any initialization. This method MUST be invoked before the class is put into service. This annotation MUST be supported on..
-
springboot 2.x 이상 springbatch table문제 해결 방법!
id 'org.springframework.boot' version '2.3.2.RELEASE'를 사용 중! 그리고 springbatch개발을 하고 있다! 그런데? 스프링배치를 수행하면서 아래의 오류 발생~~! bad SQL grammar [SELECT JOB_INSTANCE_ID, JOB_NAME from BATCH_JOB_INSTANCE where JOB_NAME = ? and JOB_KEY = ?]; nested exception is java.sql.SQLSyntaxErrorException: Table 'BATCH_JOB_INSTANCE' doesn't exist 스프링배치는 수행관련 내용들을 메타데이..
-
springbatch setting시 오류: Spring Boot plugin requires Gradle 5 (5.6.x only) or Gradle 6 (6.3 or later). The current version is Gradle 4.10.3
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#appendix-dependency-versions Spring Boot Reference Documentation This section goes into more detail about how you should use Spring Boot. It covers topics such as build systems, auto-configuration, and how to run your applications. We also cover some Spring Boot best practices. Although there is nothing particularly spe docs.s..
스터디
-
k8s 스터디 흔적
kubectl 롤링 업데이트 해보기! img만들고 docker build -t idock.xxx.io/teri_epi/kubia:v1 docker build -t idock.xxx.io/teri_epi/kubia:v2 docker hub에 push docker push idock.xxx.io/teri_epi/kubia:v1 docker push idock.xxx.io/teri_epi/kubia:v2 k : kubectl / rolling update! k rolling-update kubia-v1 kubia-v2 --image=idock.daumkakao.io/teri_epi/kubia:v2 kubectl 롤링 업데이트는 더이상 사용되지 않는다. Wh..
-
2020.07.16 스터디
6장 볼륨 : 컨테이너에 디스크 스토리지 연결 볼륨은 pod와 라이프사이클이 같다. 즉, pod가 생성 될 때 볼륨이 생성, 삭제될 때 볼륨이 삭제. pod 스펙에 정의 된다. pod의 모든 컨테이너에서 볼륨을 사용할 수 있다.(단, 볼륨에 액세스해야하는 각 컨테이너에 볼륨을 마운트 해야 한다.) 여러가지 종류가 존재 emptyDir: 일시적인 데이터를 저장하는 비어있는 단순 디렉토리. hostPath : 워커 노드(물리장비)의 파일 시스템에..
-
About Json
개 요 about Json 관련 개념 marshalling/unmarshalling encoding/decoding 예제 기본적인 코드 구현 확장 관련 된 확장 개념 등 개요 JSON (JavaScript Object Notation)은 경량의 DATA-교환 형식이다. 이 형식은 사람이 읽고 쓰기에 용이하며, 기계가 분석하고 생성함에도 용이하다. JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999의 일부에 토대를 두고 있다. 왜 Json을 사용하는..
-
RND 스터디
주저리 일을 하다보니..무심코 그냥 지나치거나 그냥 암기식으로 정확히 모르는 상태에서 개발을할 때가 너무도 많았던것 같다. 일정이 빠듯하고 빨리 빨리를 외치는 한국 개발 문화도 있겠지만.. 내가 지식에 대한 접근이 틀렸을지도 모르겠다. 생각을 해보면 내부, 외부 스터디를 통해 많은 도움을 받고 더 발전을 해왔던것 같다. 앞으로도 스터디를 통해 좀 더 나아가고자 한다. 스터디 모임 RND : 개인적으로 지인들과 만든..
-
JBUG- Collection
public interface Collection ... In JDK 8 and later, the Collection interface also exposes methods Stream stream() and Stream parallelStream() , for obtaining sequential or parallel streams from the underlying collection. (See the lesson entitled Aggregate Operations for more information about using streams.) Traversing Collections There are three ways to traverse collections: (1) using ag..
-
JBUG - JDK8 Study
오늘은..저번주에 페이스북으로 코멘트를 달았던 부분에 대해서 설명을 하였다. 2014/07/17 - [Study/Study group] - JBUG - JDK8 Study(정규표현식)- Differences Among Greedy, Reluctant, and Possessive Quantifiers 와우...숨이 막히는 이 느낌은??? ㅋㅋㅋㅋㅋ;; 어느순간 보니 숨도 안쉬고 말하고 있었네요..하하; 아무튼 느낌은 좋았다.ㅎㅎㅎ 다음엔 더 잘해야겠다! ㅋㅋ - END -
-
JBUG - JDK8 Study(정규표현식)- Differences Among Greedy, Reluctant, and Possessive Quantifiers
오늘 이슈가 되었던 내용을 소개 하려고 한다. 링크 : http://docs.oracle.com/javase/tutorial/essential/regex/index.html Differences Among Greedy, Reluctant, and Possessive Quantifiers 의 내용 이였다. 우선은 아래의 내용을 참고 해보도록 하자. Quantifiers Quantifiers allow you to specify the number of occurrences to match against. For convenience, the three sections of the Pattern API specification..
-
JBUG - JDK8 Study(Concurrency_01)
Jboss User Group Study - 2014.07.02(수) 주호씨 덕분에 하게 된 스터디! 감사르~~ Concurrency(동시 실행) 오늘 기억에 남는 내용은.. Interrupts An interrupt is an indication to a thread that it should stop what it is doing and do something else. It's up to the programmer to decide exactly how a thread responds to an interrupt, but it is very common for the thread to terminate. This is the usage emph..
언어
-
Producer-Consumer 패턴
더보기 Runnable과 Callable의 차이점은? acet.pe.kr/819 > 상황 성능이 좋지 않은 부분이 발생하여 그 부분을 해소하기 위해 멀티 쓰레드로 처리하려고 했다. 그런데 멀티 쓰레드 처리 후 나오는 리스트형 데이터가 재사용 되어지는 문제가 발생. > 결론 생산자-소비자 패턴을 사용하기로 함. 생상자 - 멀티쓰레드 처리 및 리스트형 데이터를 블라킹 큐에 넣어줌. 넣기만 함! 소비자 - BlockingQueue에 넣어진 것들을 사용함...
-
Runnable과 Callable의 차이는?
Runnable과 Callable의 차이는? - Runnable : 객체와 Exception을 발생 시키지 않음. - Callable : 특정 타입의 객체와 Exception을 발생 시킴. ㅇㅋ!
-
AtomicInteger&LongAdder&Thread-Safe
자바에서 Thread-Safe 즉, 데이터에 대해 동시 접근을 제어하기 위해 Lock( 2020/11/24 - [Language/Java] - Java thread에서의 Lock의 종류?) 을 사용한다. 그런데 이 데이터가 그냥 값을 읽거나 업데이트 정도의 기능일 경우에는 Lock보다는 원자성(Atomic) 변수가 더 성능도 좋고 효율적이다. 아래는 Thread-Safe 이야기 하다가 나옴 ㅋㅋ 오늘 포스팅은 AtomicInteger와 LongAdder에 대해 알아보고자 한다. LongAdder의 경..
-
Java thread에서의 Lock의 종류?
자바에서 2개의 Lock이 있는데 첫번째는 자바에서 thread간 동기화를 위해 synchronized 키워드를 사용하는것을 사용 합니다. 이런 synchronized 키워드를 사용하는 lock을 Intrinsic Lock 또는 Built-in Lock이라고 한다. // Mutual Exclusion public synchroized void intrinsicLockfunc(){ ... } // Wait synchronized(this){ ... this.wait(); ... } // signal synchronized(this){ ... this.notify(); ... } 두번째는 Java..
-
http dump
log.WithField("dump=", "start").Debug("auth start") dump, err := httputil.DumpResponse(resp, true) if err != nil { log.Fatal(err) } log.WithField("dump??", string(dump[:])).Debug("auth dump") // fmt.Printf("DUMP => %q", dump) 참고 : https://golang.org/pkg/net/http/httputil/
-
golang 채널에 대해 알아보자!
golang 채널이란? 1. 데이터를 주고 받는 통로. 2. make를 통해 미리 생성. 3. 채널 연산자 보통 고루틴들 사이에 데이터를 주고 받을때 상대편이 준비 될때까지 채널에서 대기 -> 별도의 lock을 걸지 않고 데이터를 동기화 하는데 사용 한다. 채널 만들기 1. ch := make(chan int) // 정수형 채널이 생성. 채널 송수신 1. 채널로 데이터를 보낼 때 채널 ch 2. 채널로 부터 데이터를 받는다. 변수로 받을수도 있고 아래와 같은..
-
Error parsing HTTP request header 에러
갑자기 헤더 오류가 나서 뭔가 싶었는데 알고 봤더니 앞단과 뒷단간에 통신할 때 Request가 Bad였던것! 그래서 아래와 같이 오류가 떨어짐. 수정사항으로는 앞단(클라이언트, 프론트) encodeURL로 뒷단(서버)에서는 decoode를 수행. 특이사항으로는 로컬에서는 잘되어짐. 서버단에서 버그 발생. 톰캣 버전에 따라서 달라진다는것을 알수 있었음. -_-;; 톰캣!!~~ - 끝 -
-
용어 - multiplexer
// Mux is a simple HTTP route multiplexer that parses a request path, // records any URL params, and executes an end handler. It implements // the http.Handler interface and is friendly with the standard library. // // Mux is designed to be fast, minimal and offer a powerful API for building // modular and composable HTTP services with a large set of handlers. It's // particularly useful for wr..
빅데이터
-
HDFS부터 DB까지 팁 아닌 팁~
스칼라 알못 스파크 알못이라..이번에 작업한 내용이 있는데 삽질을 많이 했다...ㅋㅋ 생각나는 것들을 적어보자. HDFS를 가져와 RDD에 저장! sc.textFile을 통해서 HDFS를 가져온다. sc.textFile("hdfs path") 그런데 그냥 가져오면 소용이 없다. 그러므로 map을 통해서 필요한 친구들만 가져온다. 또한 filter를 통해 데이터를 줄여준다. ex) hdfs의 포맷이 Json이라서 Gson을 사용. filter를 통해 데이터를 줄여준다. val rd..
-
sbt lib 연동 안되는 현상
not found!! dependency에는 있는데 not found....sbt가 꼬인듯 하다..ㅠㅠ 이럴땐? 다시 셋팅 하자.. SBT버전이 중요! 너무 낮거나 높으면 인텔리J에서 제대로 못가져옴.-_-;; Scala/Spark 버전은 사내 분산 클러스터에 맞게 적용. build.sbt 내용 name := "neosite-data" version := "0.1" scalaVersion := "2.11.11" val sparkVersion = "1.6.2" libraryDependencies ++= Seq("org.scala-lang.modules" %% "scala-parser-co..
-
spark rdd programining
https://spark.apache.org/docs/latest/rdd-programming-guide.html spark rdd Overview At a high level, every Spark application consists of a driver program that runs the user’s main function and executes various parallel operations on a cluster. The main abstraction Spark provides is a resilient distributed dataset (RDD), which is a collection of elements partitioned across the nodes of t..
-
하둡명령어로 삭제하기(fs -rm)
하둡 hdfs 삭제 하기! #!/bin/bash # 주기적으로 hdfs 데이터를 삭제한다. # crontab 에 등록하여 실행시킨다. # 2일 전 데이터 삭제 date=`date -d "2 days ago" "+%Y%m%d"` /home/acet/program/hadoop/bin/hadoop fs -rm -r -skipTrash "/HADOOP경로/하둡path/*.txt.$date*" # 하둡 temp 데이터 삭제 find /home/acet/data/ -ctime +2 -type f -exec rm -f {} \;
-
spark-submit deploy-mode option
Client mode Want to get a job result (dynamic analysis) Easier for developping/debugging Control where your Driver Program is running Always up application: expose your Spark job launcher as REST service or a Web UI Cluster mode Easier for resource allocation (let the master decide): Fire and forget Monitor your Driver Program from Master Web UI like other workers Stop at the end: one job is fi..
-
hadoop distcp
$ ./hadoop distcp usage: distcp OPTIONS [source_path...] OPTIONS -append Reuse existing data in target files and append new data to them if possible -async Should distcp execution be blocking -atomic Commit all changes or none -bandwidth Specify bandwidth per map in MB -delete Delete from target, files missing in source -diff Use snapshot diff report to identify the differen..
-
2탄. SPARK를 설치해보자~(클러스터)
2016/10/18 - [BigDATA/spark] - 1탄. SPARK를 설치해보자~ 1탄. 단일모드 2탄. 클러스터 모드 3탄. 기타 유용 셋팅(스파크 관련) 우선 분산 클러스터로 셋팅하기전에! 요것만큼은 알고가자는 의미에서 살짝 정리해본다. 1. Spark 구조 (펌: https://www.google.co.kr/search?q=spark+%EA%B5%AC%EC%A1%B0&newwindow=1&biw=1598&bih=976&source=lnms&tbm=isch&sa=X&sqi=2&ved=0ahUKEwi1y4ut0ObPAhWqiVQKHWFaDgcQ_AUIBigB&dpr=1#i..
-
1탄. SPARK를 설치해보자~
해당 포스팅은 총 3부로 구성될 예정 입니다. 1탄. 단일모드 2탄. 클러스터 모드 3탄. 기타 유용 셋팅(스파크 관련) 1탄. SPARK를 설치해보자~ Apache Spark 설치! 버전은 1.6.1 / hadoop 2.6으로 해서 다운받아보겠습니다. (현업에서 사용중인게 요거라서 요걸로!) Step 1. 아래의 링크를 통해 스파크를 다운 받아보자! http://spark.apache.org/downloads.html Step 2. down을 받아서 원하는 서버에서 압축을 풀어줍니다...
CM
-
go cd
go cd란? 오픈소스이다! 그리고 Continuous Integration and Continuous Delivery system이다. gocd는 gocd 서버와 gocd agent로 이루어져있다. 셋팅 시 자바기반이라 jdk가 필요하다. 그리고나서 go-server와 go-agent를 셋팅하면 된다. 셋팅 예제(CentOS기반) 1) 자바 설치 sudo yum install -y java-1.8.0-openjdk-devel.x86_64 # 자바 기반이라 자바 설치 2) go-server 설치 sudo yum install -y go-server # go-server 설..
-
Docker 리서치
도커 등장 배경 docker 관련 문서 : https://github.com/remotty/documents.docker.co.kr 서버를 관리한다는 것 복잡하고 어려운 서버관리 시간이 흐르면서 서버환경이 종종 바뀌거나 오픈소스가 바뀌거나 하는 걸 볼수 있습니다. CentOS -> Ubuntu Chef -> Ansible -> 또 다른 오픈소스 DevOps의 등장으로 짧은 개발주기와 잦은 배포 마이크로서비스 아키텍처의 유행 -> 프로그램은 더 잘게 쪼개어져 관리는 더욱 복잡해짐...
-
sourceTree 새로 설치 한 후 password를 지속적으로 묻는 경우
github > SSH and GPG keys를 설정해줬는데도 자꾸 패스워드를 물었다... cmd창에서 git config --global credential.helper osxkeychain 이 명령어를 통해 해결 하였다. 굳!
-
SBT + ANSIBLE
빌드서버에서 빌드 후 배포(배치 서버로) build는 shell을 통해 처리 하였다. (음..뭔가 ansible style은 아니다..ㅠㅠ 책을 사서 좀 더 파봐야겠다.) - name: Execute sbt build shell: | cd {{ build_home }}/{{ build_id }} pwd ./sbt.sh sbt.sh에서는 sbt를 통해 명령어로 처리! sbt가 export가 잘안되어서 그냥 절대경로로 처리! /daum/program/sbt/bin/sbt clean assembly deploy는 간단히 copy해주는 형식으로 처리 하였..
-
Error: ✗ Could not create /var/lib/grafana/plugins/grafana-piechart-panel/.gitignore. Permission denied. Make sure you have write access to plugindir
ansible + grafana환경에서 아래와 같은 오류가 발생하였다. Error: ✗ Could not create /var/lib/grafana/plugins/grafana-piechart-panel/.gitignore. Permission denied. Make sure you have write access to plugindir NAME: Grafana cli plugins install - install USAGE: Grafana cli plugins install [arguments...] 첫번째 해결책으로 아래와 같이 user: root를 통해 해결하였다. - name: run grafana docker_cont..
-
ansible error - may be elsewhere in the file depending on the exact syntax problem.
may be elsewhere in the file depending on the exact syntax problem. The offending line appears to be: - name: Create a data volume ^ here 위의 오류는 ansible 버전이 낮아서 나는 오류이다. ansible은 버전이 2.7이상이어야 docker_volume을 사용할 수가 있다. 참고 사이트 : https://docs.ansible.com/ansible/latest/modules/docker_volume_module.html?highlight=docker_volume
-
ansible 주요 역할 정리
inventory file은 리모트 서버에 대한 meta 데이터를 기술하는 파일. 기본 파일은 /etc/ansible/hosts이나 따로 inventory file을 사용할 수 있는 옵션(-i)을 줄수 있음. alpha파일이라고 가정하고 그 안의 내용은 아래와 같다. acet1 ansible_host=acet-dev.cc [acet] acet1 playbook은 ansible의 환경 설정, 배포를 가능케 함. yaml 문법을 채용하여 정책을 기술 conditional(when), variables, loops(with_items), include,..
-
Docker ?
Docker? 2013년 3월 Docker, Inc에서 출시한 오픈소스 컨테이너 프로젝트 복잡한 리눅스 어플리케이션을 컨테이너로 묶어서 실행할 수 있음. 리눅스 커널에서 제공하는 컨테이너 기술을 이용. 컨테이너(이미지)를 전 세계 사람들과 공유 Github와 비슷한 방식의 Docker Hub 제공. 이미지 생성과 배포에 특화. 이미지 버전관리 제공, 중앙저장소에서 이미지를 올리고 받을 수 있음. (push/pull) 컨테이너? 가상화보다 훨씬 가..
프론트
-
const definitions are not supported by current javascript version
VueJs 셋팅 시 IntelliJ에서 나오는 오류! 해결 방법은 아래와 같이 자바스크립트 버전을 변경하여 주면 된다! 끝~
-
[acet-#2] Vue.js 무작정 해보기(용어 등 훝어보기!)
# 바로 코딩을 해보고 싶으신 분은 jsfiddle로 쉽게 해볼수 있습니다. https://jsfiddle.net/chrisvfritz/50wL7mdz/ # Vue.js의 특징으로 단일 파일 컴포넌트를 들수 있다. Componet System : Vue의 또 다른 중요한 개념. # 호환성 Vue는 ECMAScript5 기능을 사용 -> IE8 이하 버전을 지원하지 않습니다. 하지만 모든 ECMAScript5 호환 브라우저를 지원합니다. # Vue Devtools * https://github.com/vuejs/vue-devtools#vue-de..
-
[acet-#1] Vue.js 무작정 해보기(기본-Vue.js? 좋은거? 먹는거?)
공식 홈피 https://vuejs.org/ 한국어버전 : https://kr.vuejs.org/v2/guide/index.html Vue.js Vue.js - The Progressive JavaScript Framework vuejs.org 구글트렌드 Vue.js를 왜 써야하나? 엄청 복잡하게 코딩을 했던 옛날! 이제는 Vue.js같은 프레임워크를 통해 빠르고 쉽게 코딩이 가능하다. 프레임워크에는 angularJS, react등도 있지만 Vue.js는 아래와 같은 특징이 있다고 한다. 약팔기(?) 접근하기 용이! 러닝커..
-
Vue.js 맛보기
vue-cli 설치 terrypark@localhost ~ sudo npm install vue-cli -g Password: npm WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen) ⸨░░░░░░░░░░░░░░░░░░⸩ ⠴ fetchMetadata: WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen) /usr/local/bin/vue -> /usr/local/lib/node_modules/vue-cli/bi..
-
ECMAScript 데이터 유형(Types)
6가지 원시 데이터(Primitive Data) 유형 - null - undefined - number - string - boolean - symbol(ES6+) 객체(Object) 데이터 유형 - function object - array object (배열객체) - object 객체 생성 ? new 생성자 함수()
-
자바스크립트 이벤트 TEST
Document 두 수의 합을 출력해봅니다. + = 12
-
image map 편하게 사용하기
아래의 링크를 통해 쉽게 map을 컨트롤할 수 있다. https://www.image-map.net/
-
about HTML 텍스트 레벨 요소
요소 : 윗첨자 요소 : 아래첨자 요소 : 관련 참조 목적의 하이라이트된 글자 요소 요소 : 축약요소 요소 : 기계가 이해할 수 있는 날짜나 시간을 나타내는 요소 요소 : 더 이상 관련이 없거나 정확하지 않은 요소 참고 자료 윗첨자 요소 아래첨자 요소 축약 요소 시간 요소 더 이상 관련이 없거나 더 이상 정확하지 않은 요소 관련 참조 목적의 하이라이트된 글자 요소 저작권, 법적 텍스트, 주석 및 작은 글씨..
테스트
-
TDD 실천하기
- JUNIT TEST 리펙토링을 하는데 있어서 테스트가 필수!(리펙토링을 하기 위한 전제조건!) - How to test? mockito를 이용 해보자. 설정을 해보자. 현재 maven을 사용. 위의 그림처럼 maven dependency를 설정(pom.xml)하여 준다.(mockito라는것을 사용해보려고 한다.) 현재(2015년11월의 최신 릴리즈버전이다.) org.mockito mockito-core 1.10.19 소스에서는 import static org.mockito.Mockito.*; 를 static으로 import 시..
-
[Junit] java.lang.NoClassDefFoundError: Could not initialize class org.springframework.beans.factory.BeanCreationException
[본 사진은 아래의 내용과 무관 합니다. 그림이 없는 것보단 나아서..ㄷㄷ] Junit은 말그래도 Unit 테스트 이다.. Unit 테스트 답게 리소스를 사용하는게 맞을 것 같다. 그렇지 아니하면 아래와 같이 메모리가 부족하여..오류가 난다.^-^;; 전체의 리소스를 잡는것이 아니라 해당 유닛 테스트를 위해 scope을 줄여서 테스트를 해야 빠르고 쉽게 개발을 할 수 있을 것이다. << 오류 >> java.lang.NoClassDefFoundError: Could no..
-
Server node별 instance명 구하기
전제 : 1) Was Server의 instance명이 VM Agument에 설정이 되어있어야 한다. 2) "classpath:spring/context/context-properties.xml" 에서 config.properties가 연결되어있어야 함. # 선 셋팅 작업 1) Local test 시 Vm argument에 server명 입력 : -Dserver="acetServer11" => # Run 할 때 설정에서 vm argument를 넣어줘야한다는거~!(in eclipse) 2) config.properties에 아래 내용..
-
checkStyle plug-in 설치
역시나 체크 스타일도..다른 플러그인과 마찬가지로!! Help > Install New Software.. > checkStyle - http://eclipse-cs.sourceforge.net/update (버전에 맞게 선택) > next, next > 이클립스 재가동 - 끝 -
-
PMD 확인 후 룰셋 셋팅하기
2013/08/19 - [TEST/PMD] - pmd plug-in 설치 설치 후 reStart를 하고 난 뒤에 PMD가 잘 깔려있는지 보자. Window > Preferences > PMD 좌측에 메뉴가 있는지 확인하자!^-^good~ rule set을 적용하기 위해 PMD메뉴 > Rules configuration 을 클릭 각 업무나 회사의 룰에 맞게 적용해야 할 룰셋이 있다면(xml) 1) Clear all를 통해 지운다.(기본 설정되어져있는 룰셋 제거) 2) Import rule set.. 3) 원하는..
-
pmd plug-in 설치
다른 플러그인과 마찬가지로 Help > Install New Software.. > http://pmd.sf.net/exlipse (버전에 맞게 선택 - 본인은 ver 3.2.6 선택) > next, next > 이클립스 재가동 참 쉽죠잉? ㅎㅎㅎ - 끝 -
-
Junit Resource
JUnit 테스트를 하려고 했을 때 혼돈이 되었던 내용이다. Resource는 어디에 것을 써야 할까??? 구성은 보통 maven 프로젝트를 사용 한다면 main / test 로 나뉘어진다. java build path를 보면 source쪽에 보면 알 수 있다. @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "classpath:spring/context/context-common.xml", "classpath:spring/context/context-aspect.xml", "class..
-
TDD(테스트 주도 개발)
테스트 주도 개발..! 우선 TDD란 무엇인지 알아보자^-^ 프로그램을 작성하기 전에 테스트부터 먼저하라! (Test the program before you write it) - Kent Beck - 말 그대로 테스트 부터 하는 것이다. 테스트 주도 개발의 목표는? Clean code that works (잘 동작하는 깔끔한 코드) - Ron Jeffries -