javascript Promise

기본 형태 //resolve 로 정상일 경우 new Promise(function(resolve, reject) { resolve('hello'); //goto then() }).then(function(result){ console.log("success : "+ result); // success : hello }).catch(function(result){ console.log("failed : "+ result); }); //reject 로 실패일 경우 new Promise(function(resolve, reject) { reject('hello'); //goto catch() }).then(function(result){ console.log("success : "+ result); }).catch(function(result){ console.log("failed : "+ result); // failed : hello }); 함수형으로 … 계속 읽기 javascript Promise

가로형 탭메뉴 예제

이 번엔 HTML과 CSS만으로 가로형 탭메뉴를 만들어 보자.이게 참... 별 것 아닌 것 같지만, 막상 어디서 라이브러리 같은 것 찾아서 가져다 쓰려면 되게 귀찮드라.그래서 만들어 보았다. ul, li 와 CSS만으로 만든 가로형 TabMenu HTML 이 것 보다 더 간단할 수는 없겠지? 하지만... 기본적으로 ul을 감싸고 있는 부모엘리먼트(div)의 position 속성값은 반드시 relative 이기를 바란다. <div id="aabooTab" … 계속 읽기 가로형 탭메뉴 예제

오천,금강 자전거길 종주

2019년 9월 국토종주 이 후, 내 삶은 변화되었다. 눈,비 아니면 무조건 자출(자전거 출퇴근)을 하는 삶을 유지 중이다. 3년차 자출, 2년차 막자출에 두 번째 겨울을 맞이하기에 앞서, 2021년 10월 국토종주를 완료하신 이사님께서 그랜드슬램을 이야기하시며 "1박 2일 오천/금강 종주"를 제안하셨다. 그랜드슬램. (아라뱃길, 4대강, 동해안, 제주도) 그랜드슬램 코스. 자전거 행복나눔 그 중 2019 국토종주 당시 아래뱃길, 한강, 남한강, … 계속 읽기 오천,금강 자전거길 종주

Shadow Dom(HTML 코드 숨기기)

유튜브 "코딩애플"님의 강좌를 정리하였습니다. HTML <div id="mordor"></div> JAVASCRIPT document.querySelector('#mordor').attachShadow({mode:'open'}); document.querySelector('#mordor').shadowRoot.innerHTML=` <p>심연에서 왔도다</p> `; 위 화면의 결과를 개발자도구에서 확인하면, <div id="mordor"></div> 만보이고, '심연에서 왔도다'는 안보여진다. 그냥 개발자가 멋있어 보일려고 이런 코드를 작성한다고 하는데, 보이게 하려면 개발자도구 설정에서 ShadowDom을 활성화 시키면 된다. 사용자정의 엘리먼트 작성 방법 우선 아래와 같이 작성을 하면 <custom-input/> 이라는 새로운 엘리먼트를 클래스화하여 사용할 … 계속 읽기 Shadow Dom(HTML 코드 숨기기)

Tomcat server.xml appBase, docBase

apache-tomcat-8.0.33 에서 경험상 기록남겨요 appBase: 실제 소스 폴더가 위치한 경로(ROOT.war가 압축 해제되는 경로) docBase: ROOT.war 가 위치한 경로(설정 없을 경우 appBase에서 ROOT.war를 찾음) tomcat server.xml 에서 <Host name="localhost" appBase="/app/webapps/com" unpackWARs="true" autoDeplay="false"></Host> appBase 경로에는 ROOT 라는 폴더가 있어야 한다. 실제 소스 경로이다. tomcat ./conf/com/localhost/ROOT.xml 에서 <Context crossContext="true" docBase="/app/src/com/ROOT.war" path="" reloadable="true"></Context> ROOT.war의 위치를 설정하는 것이다. 위에서 appBase … 계속 읽기 Tomcat server.xml appBase, docBase

Linux 파일크기별 검색

du -ch /app --max-depth=1 | sort -hr /app 폴더 안의 1Depth까지 폴더의 크기를 확인할 수 있다. 53G /app25G /app/src23G /app/engine6.3G /app/webapps166M /app/tmp13M /app/logs2.0M /app/abc28K /app/def16K /app/hij find /app -type f -exec du -hs {} + | sort -h | tail -100 /app 폴더안의 각 파일들을 모두 확인할 수 있다.

httpd conf workers.properties참고

worker.list=tomcat1,tomcat2,loadballance worker.tomcat1.type=ajp13 worker.tomcat1.host=localhost worekr.tomcat1.port=9006 worker.tomcat1.lbfactor=100 # 반드시 '0'보다 커야하며, 이것은 job에 대한 비율 worker.tomcat1.socket_timeout=1800 # 30분 worker.tomcat1.recycle_timeout=1800 worker.tomcat1.cache_timeout=1800 worker.tomcat1.socket_keepalive=1 # 사용:1, 미사용:0 worker.tomcat1.connection_pool_timeout=600 worker.tomcat2.type=ajp13 worker.tomcat2.host=localhost worker.tomcat2.port=9007 worker.tomcat2.lbfactor=100 worker.tomcat2.socket_timeout=1800 # 30분 worker.tomcat2.recycle_timeout=1800 worker.tomcat2.cache_timeout=1800 worker.tomcat2.socket_keepalive=1 # 사용:1, 미사용:0 worker.tomcat2.connection_pool_timeout=600 # tomcat timeout에 따른 중복 발생 방지 worker.loadballance.retries=0 worker.tomcat1.retries=0 worker.tomcat2.retries=0 worker.tomcat1.socket_timeout=60 worker.tomcat2.socket_timeout=60 worker.loadballance.type=lb # sticky방식은 일정 시간(session time)동안 … 계속 읽기 httpd conf workers.properties참고