import logo from './logo.svg'; import './App.css'; import { useState, useMemo } from 'react'; function App() { const [list, setList] = useState([1, 2, 3, 4]); const [str, setStr] = useState('합계'); const getAddResult = () => { let sum = 0; list.forEach((i) => (sum = sum + i)); console.log(sum); return sum; }; //list가 변경 되었을 때만 getAddResult()가 실행 될 수 있게 기억 const addResult = useMemo(() => getAddRes..
스케쥴러를 사용하는 서비스가 있는데, 서버 이중화를 하게 되면서 스케쥴러를 둘 다 돌리게 되면, 동시에 DB에 접근하기 때문에, 오류가 발생 할 수도 있다. 그렇다고 같은 소스를 배포하면서 스케쥴러 때문에 빌드를 두번해야하는 건 비효율적이다. 그래서 아이피에 따라, 스케쥴러를 실행시킬지 말지 결정하는 방법을 생각했다. 맨 처음에는 일반적인 스케쥴러 사용방식 처럼 사용하되 스케쥴러 내에서 조건문을 사용하려고 했다. 24.03.14++ 이런식으로 스케쥴러를 특정 서버에서는 안 돌게 지정하면 안된다..! 스케쥴러가 돌아가는 서버가 죽으면 어떡해..! 🥹 1년도 안된 신입 때 생각한 방법이라..위와 같은 이유라면 따라하지마세요.. 만약 스케쥴러가 동시에 돌아 동시 DB 접근이 우려된다면 shedlock을 사용하..

프로젝트를 진행하면서, 한페이지에서 여러개의 에디터를 사용해야하는 경우, 심지어 그걸 동적으로 생성해야하는 경우가 생겼다. 다음에디터, 네이버 스마트에디터, 썸머노트 중에 후보를 고르다, 썸머노트는 클래스로 관리를 할 수 있어서 가장 편할 것 같아서 사용하려고 했는데, 썸머노트는 표 삽입 기능이 너무나 약하다. 셀의 크기 변경 같은게 안되고, 혹시나 방법이 있을까 열심히 구글링 한 결과, 썸머노트 측에서 아직 업데이트 예정이 없다는 것을 보고, 눈물을 머금고....다른 에디터를 찾았다. 다음 에디터와 네이버 스마트 에디터 둘 다 업데이트가 더 이상 안되지만, 다음에디터는 가이드 조차 제대로 찾기가 힘들어서 네이버 에디터를 사용하기로 했다. 스마트에디터 기본 사용법 기본 사용법은 간단하다. 1️⃣ 에디터 ..

nextJs 공부를 하면서 처음 만난 에러, 아주 간단한 에러이고 명확한 에러인데, 원인을 찾을 수 없었다. 나는 분명 자식을 태그 안에 태그 하나만 뒀는데? 그래서 검색을 해보니 ✨태그 안에서 띄어쓰기가 되어있으면, 이 띄어쓰기도 자식으로 인식✨한다는 것이다. 그래도 내 코드엔 띄어쓰기가 없는데..? 하고 보니! 주석을 쓴다고 띄어쓰기가 하나 되어있었다. 아래에서 주석 {/* join() 은 한 배열을 다른 한 문자열로 바꾸는 방법*/} 를 보면 옆의 태그와 한칸 떨어져있는 것을 볼 수 있다. Link와 주석 사이에 띄어쓰기를 없애니 정상작동했다😅 import Link from "next/link" import { useRouter } from "next/router"; import styles fro..
Mysql 실행 $ docker run -d --name mysql -v 마운트할위치:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=wordpress -e MYSQL_PASSWORD=wordpress mysql:5.7 wordpress 실행 - mysql : 컨테이너명, wordpressmysql은 alias docker run -d --name wordpress --link mysql:wordpressmysql -e WORDPRESS_DB_PASSWORD=wordpress -p 80:80 wordpress:4

네트워크 생성 - 새로운 네트워크를 testnet이라는 이름으로 생성 : 새로운 bridge가 생겼다!😬 docker network create --driver bridge --subnet 192.168.100.0/24 --gateway 192.168.100.254 testnet 네트워크 사용 - 앞에서 생성한 testnet이라는 네트워크를 사용 - 사용자지정 네트워크는 고정 아이피를 할당 하는게 가능 : 192.167.100.100으로 할당 docker run -it --name c1 --net testnet --ip 192.168.100.100 busybox

도커 이미지는 readonly속성을 가지고, 컨테이너에 추가되는 별도의 데이터들은 rw 레이어에 저장이된다. 데이터베이스를 운영하는 경우 고객의 데이터들이 rw(read/write)레이어에 쌓이게 되는데, 컨테이너를 삭제하게 되면 이 데이터들이 다 사라지게 된다. 만약에 실수로 컨테이너를 삭제하게 된다면.....그 결과가 너무 무섭다.. 그래서 컨테이너가 만들어주는 데이터를 영구적 보존이 필요한 경우, docker host에 별도의 저장소를 만들어서 관리를 하게 된다. mysql 데이터베이스의 경우 rw 레이어의 /var/lib/mysql에 쌓이게 되는데 여기에 있는 데이터를 별도의 저장소에도 저장해주면 실수로 컨테이너를 삭제해도, 데이터는 남아있을 수 있다. VOLUME 옵션 -v [host path]..
docker 명령어를 통해 제한 할 수 있는 리소스 docker run 할 때 옵션을 사용하여 리소스를 제한 할 수 있다. 1️⃣ CPU 2️⃣ Memory 3️⃣ Disk I/O 1️⃣ CPU 제한하기 옵션 의미 --cpus 컨테이너에 할당 된 CPU core수를 지정 --cupset-cups 컨테이너가 사용할 수 있는 cpu나 core를 할당. cpu index는 0부터 --cpu-share 컨테이너가 사용하는 cpu 비중을 1024값을 기반으로 설정 $ docker run -d --cpus=".5" ubuntu $ docker run -d --cpuset-cpus 0-3 ubuntu $ docker run -d --cpus-shares 2048 ubuntu 2️⃣ Memory 제한하기 옵션 의미 -..
- Total
- Today
- Yesterday
- 스프링
- 전자정부프레임워크
- tomcat
- centos
- 쿠버네티스
- 자바
- javascript
- react
- Spring
- softeer java
- 코딩테스트
- springboot
- 현대
- 톰캣
- 코테
- Kubernetes
- 오토에버코테
- 현대오토에버
- nginx
- 자바코테
- Docker
- 현대코테
- 리액트
- Linux
- java
- 자바스크립트
- 아파치카프카
- softeer
- mysql
- 도커
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |