-
[피보나치 수열 - Easy]
< 문제 >
- 개요
- 예상 결과
< 정답풀이 > ``` java public class test05 { …결과 : 조건을 만족하는 피보나치 수열의 각 항의 합 = 4613732
-
[소인수분해 - Easy]
< 문제 >
- 개요
소인수 분해(prime factorization)는 합성수를 소수의 곱으로 나타내는 방법을 말한다. 입력 받은 숫자를 소인수 분해하여 아래와 같은 형식으로 출력하여라.(15분)
4=2×2
6=2×3
8=2×2×2
9=3×3
10=2×5
12=2×2×3
14=2×7
15=3×5
16=2×2×2×2
18=2×3×3
20=2×2×5- 예상 결과
< 정답풀이 > ``` java public class test04 { …결과 : '86420'의 소인수 분해 결과 : 2*2*5*29*149
- 개요
-
[애너그램 찾기- Easy]
< 문제 >
- 개요
- Anagram : 두개의 문자열이 서로 같은 스펠링으로 구성되어 있다.
- 예상 결과
-
[문자열 압축 - Easy]
< 문제 >
- 개요
-
[배열 정렬 - Easy]
< 문제 >
- 개요
- 예상 결과
< 정답풀이 > ``` java public class test01 { …결과 1 : [-1, 1, 3, -2, 2 ] >> [-1, -2, 1, 3, 2] 결과 2 : [-5, 10, 15, -15, 4, -70] >> [-5, -15, -70, 10, 15, 4]
-
OSS License 종류
프로젝트 내 OSS 사용 빈도가 높아짐에 따라 OSS 점검은 오픈 전 필수 절차가 되었다.
OSS 라이센스 종류는 다양하지만, 흔히 우리는 GPL, LGPL, BSD 등 대표적인 3가지 라이센스로 구분한다. …
-
Tomcat 8 변경점
대표적으로 Tomcat이 사용하던 Database Connecting Pool Libray가 변경.
기존에 사용하던 Apache dbcp Library를 기본으로 사용하고 있었음.(DBCP 1.X)
기존의 것이 구리기 때문에 Apache Tomcat DBCP Library를 사용하는 것으로 변경하였고. 이에따라 설정의 키들이 변경됨.< 기타 변경점 >
- JAVA 7 이상을 사용해야함.
- 서블릿 3.1 적용(3.0부터 비동기식 입출력 방식 지원)
- JSP 2.3 적용
- EL 3.0 적용 (JSP가 아닌 JAVA에서도 EL을 사용할 수 있도록 ELProcessor API 제공)
- 웹 소켓 1.0 적용
-
- NIO 컨넥터가 기본적용 됨
- 기존에는 BIO가 Default, 성능은 APR > NIO > BIO, 안정성은 BIO < NIO < APR,
따라서 NIO로 Tunning하는 경우가 많은데, 굳이 건드릴 필요가 없게됨.
아파치 톰캣 마이그레이션 가이드
톰캣 8.0 변경점 …
-
Apache VS Nginx
1. 접속자가 많을 수록 Nginx > Apache ?
- Nginx는 Worker Process(Single Thread)를 이용, 각 요청이 올 때마다 Worker Process의 내부 Listner가 요청을 받아읽고, 쓰는 작업을 반복한다. 각 커넥션마다 프로세스와 Thread를 복제하지 않고, Worker Process 내부적으로 처리하기 때문에, 많은 요청이 올 경우에도 CPU/메모리 사용량이 급증하지 않는다.(Event Driven 방식)
- Apache는 요청(Connection) 하나당 프로세스와 쓰레드 기반으로 동작한다. 따라서 접속량이 증가할 수록 CPU와 메모리의 사용량이 증가하여 성능저하를 발생 시킬 수 있다. 아파치는 이러한 문제점을 해결 하기 위해 2.4.x 버전 이후로 event MPM 방식을 채용하여 Nginx의 Event Driven 방식을 흉내내고 있으나, Nginx에 비해서는 부족한 편이라고 평가한다.
Ref : Nginx와 Apache 성능 비교
2. Session Persistence
- Nginx 의 경우 Session Persistence 기능을 Nginx Plus 버전을 통해서 제공하나, 상용이다. 따라서 무료로 배포되는 Nginx를 사용시에는 Redis를 활용하거나, DB session 등 별도의 방법을 이용하여 관리해야한다.
- Apache의 경우, Tomcat AJP connetor(Mod_jk)에서 Session Clustering 기능을 사용할 수 있다.
Ref : 톰캣 Session Cluster 사용법
3. Log Rotate
- Nginx의 경우 linux OS에서 제공하는 LogRotate를 사용할수도 있으며, CronLog를 사용하기도 한다.
- LogRotate : Linux에서 제공하는 로그 로테이션 기능
Ref : LogRotate 사용법
Ref : Nginx LogRotate 적용법 - CronLog : 일/월/년 단위 로그 로테이션
Ref : CronLog 설정 - Apache의 경우 RotateLog나 Cronlog를 사용한다.
Ref : Apache RoateLog 사용법 - Apache, Nginx 모두 Cronlog를 이용하는 것이 보관의 편의성 측면에서 좀더 낫다.
-
Intro...
지금 이순간이 내 인생의 변곡점이 되기를 …