일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 요리
- Spring Boot
- laravel
- 맛집
- java
- ReactJS
- Web Server
- Git
- elasticsearch
- MySQL
- php
- tool
- Spring
- linux
- Gradle
- jsp
- db
- Oracle
- it
- AWS
- IntelliJ
- javascript
- jenkins
- springboot
- ubuntu
- devops
- Spring Batch
- JVM
- redis
- Design Patterns
- Today
- Total
목록전체 (810)
아무거나
Swagger 이용시 java.lang.NumberFormatException: for input string 과 같이 오류를 표시하는 경우가 있다. 이럴 경우에는 아래와 같이 build.gradle 에 내용을 추가하자. dependencies { ... implementation("io.swagger:swagger-annotations:1.5.21") implementation("io.swagger:swagger-models:1.5.21") ... }
-- 예시로 TB_SAMPLE_ONE, TB_SAMPLE_TWO 각각 두개의 테이블이 있고 ID, STATUS 값으로 조인을하여 TB_SAMPLE_ONE 의 TITLE을 TB_SAMPLE_TWO의 TITLE로 업데이트하자 UPDATE ( SELECT a.TITLE, b.TITLE AS MODIFY_TITLE FROM TB_SAMPLE_ONE a, TB_SAMPLE_TWO b WHERE 1=1 AND a.ID = b.ID AND a.STATUS = b.STATUS ) r SET r.TITLE = r.MODIFY_TITLE;
로드밸런싱 설정 (Nginx의 Upstream 모듈을 통해서 제공) nginx config 파일에서 수정하자. [nginx.conf 또는 default.conf] ... http { upstream myapp { server server1.example.com server server2.example.com } server { listen 80; location / { proxy_pass http://myapp; } } } ...
Stream을 활용한 데이터 가공 문자열로된 숫자와 알파벳대소문자로 되어있는 데이터 정렬 // Code List list = Arrays.asList("9", "A", "Z", "1", "B", "Y", "4", "a", "c"); List sortedList = list.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); return sortedList; // Output [ "1", "4", "9", "A", "B", "Y", "Z", "a", "c" ] 문자열로된 숫자와 알파벳대소문자로 되어있는 데이터 reverse 정렬 // Code List list = Arrays.asList("9", "..
반복되는 쿼리 묶기 설정 ... SELECT BOARD_NO, GROUP_NO, SORT_SEQ, BOARD_LVL, BOARD_TITLE, BOARD_CONTENTS, SYS_REGR_ID, SYS_REG_DTIME, SYS_MODR_ID, SYS_MOD_DTIME FROM TB_USER_BOARD ORDER BY GROUP_NO DESC, SORT_SEQ ASC LIMIT #{size} OFFSET #{offset} WHERE BOARD_NO = #{boardNo} ...
[MaxGauge 쿼리 추출 방법] 1. 분석할 쿼리(기능)을 실행 2. 하단에 실시간으로 분석되나 쿼리가 빠르면 바로 사라짐 -> 상위의 PERFORMANCE ANALYZER 버튼 클릭 3. 좌측 메뉴에 Trend Analysis 버튼 클릭 4. 상위 탭 메뉴에 SQL List 클릭 5. 실행시킨 쿼리시간등을 정하고 SQL Text란에 쿼리문 입력(Like 검색됨) - ex: FROM TB_TEST 6. Retrieve 버튼 클릭하여 조회
Portainer Document Portainer 는 Docker 를 웹상에서 관리할 수 있게 도와주는 툴 입니다. 오픈소스로 배포되고 있어 무료로 사용이 가능하며, 쉘프롬프트에서 Docker 명령을 일일이 수행할 필요가 없이 Web UI 로 손쉽게 관리 할 수 있습니다. 사이트 공식 사이트: https://www.portainer.io Github: https://github.com/portainer/portainer Docker Hub: https://hub.docker.com/r/portainer/portainer 시작 전 Docker가 설치되어 있어야 한다. 설치(linux) // Portainer에서 사용할 Volume 생성 $ docker volume create portainer_data ..
성능 최적화 H/W 세팅 CPU: 8 Core, RAM: 30GB, Disk: 80GB (SSD) 정도로 세팅하여 리소스에 따라 세팅하자. (AWS EC2 기준 m3.2xlarge 부터 추천) Elasticsearch JVM Heap Memory는 32GB 이상 지정할 수 없다. 따라서 64GB 이상을 사용하는 서버를 사용할 이유가 없다. JVM Option은 -Xms와 -Xmx 설정값을 동일하게 설정한다. CPU 사용률이 60% 이상이면 CPU 확장 필요 Document 세팅 Shard Shard 개수는 데이터 크기가 작으면 default 값으로 유지하는게 좋고 데이터 크기가 클수록 응답속도 성능에 맞춰 증가시키는 것이 좋다. Shard의 물리적인 크기는 20GB ~ 40GB 정도의 사이즈가 적절하다...
카카오 메이커스에서 판매하는 봉피양에서 만든 평양냉면을 직접 주문해보았다. 어느정도 간되어 있고 고기육수 맛이 느껴진다. 면의 메밀향이 강하고 쫄깃탱탱하며 살짝 굵은편이고 시원한 김치랑 궁합이 좋다. 양도 많다.
Sticky Session 관련 로드밸런서 스위칭 문제 Nginx + tomcat 을 하나의 서버에서 통으로 사용하며 각각 총 2개의 서버로 나누어져있고 그 위에 L7 으로 세팅되어있을때 배포를 할 때마다 다운타임이 일어나는 현상이 있다. 먼저 L7은 스위치로 들어온 패킷을 감지하여 가장 적절한 목적지로 전송해주며 불필요한 패킷을 제외시켜주는 역할을 한다. 여기에서 Sticky Session 이라는 것을 사용하게 되는데 Sticky Session 이란 L4 스위치를 통해 분배된 서비스 세션은 하나의 연결 요청에 1 ~ n 중에 한 대의 서버에 분배하게 된다. 그러나 처음에 접속했던 서버와 같은 서버에 계속 연결시킬 수 있다. (일반) 유저A => L4 => 1번 Server 유저B => L4 => 2번 ..