Programming/기본 (Baisc) 64

[트위치][NightBot][Twitch] 채팅 로그 수집

1. 개요 채팅 수집할 일이 생겨서 보던 중 해외에서도 다들 채팅 데이터가 필요하다고 아우성이다. 찾다 보니 공식으로 제공하지 않아 다음과 같이 제작한다 . 2. 채팅 let data = new Array(); $("#DataTables_Table_0 tbody tr").each(function(idx,item) { data.push($(item).html()); }); for ( let i=0; i{ $(".paginate_button.next").click(); $("#DataTables_Table_0 tbody tr").each(function(idx,item) { data.push($(item).html()); }); },3000*i); }

[인텔리J][Jetbrains][Git] 인텔리J SSH 이용 원격 개발 CR LF CRLF 이슈

1. 개요 1) 인텔리 J의 SSH 서버를 이용한 원격 개발 제공을 하여, 기존 워크스테이션 서버에 적용해보고자한다. 2) 워크스테이션 CPU 사양이 기존 PC보다 높고, 재기동에 있어서 윈도우 보다는 CentOS 리눅스 환경이 좀 더 빠른건 사실이다. (Mac과 거의 비슷한 성능의 환경) 3) Git 설치하였을 때 기존 소스에 줄바꿈 형식이 윈도우 LF, 리눅스 CRLF라서 차이로 인해 전체 소스가 전부 줄바꿈 이력으로 표시되어 계속 찾던 중 다음과 같은 설정을 발견함. 2. 처리 방법 1) Git 목록에 전체적으로 뜨기 때문에 다음과 같이 조치한다. 2) git config --global core.autocrlf false CRLF으로 전체 변환되는 부분을 사용자 설정에 맞게 변경해준다.

[JAVA][자바] Nio 이용해서 IO Read & Write (이어쓰기)

1. 개요 1) 클라이어트 단에서 파일 업로드 시 Chunk화 하여 서버에 CPU 부하를 낮추기 위해 구현한다. 2) 차이점 가. AS-IS java.io 클래스의 경우 하드웨어가 아닌 JAVA → JVM → 하드웨어 → 디스크 나. TO-BE java.nio 클래스의 경우 JAVA → 하드웨어 → 디스크 으로 작성하다보니, 성능면에서 CPU가 안정적이고 부하가 존재하지 않아 매우 효율이 좋다. 2. 처리 // 존재하면 이어쓰기 OutputStream fileChannel = null; Path path = Paths.get(newFile.getAbsolutePath()); try { fileChannel = Files.newOutputStream(path, StandardOpenOption.CREATE..

[Java][JS] Ajax 바이너리 Base64 업로드 유틸

1. 개요 해당 소스는 방화벽 및 보안 장비 우회를 통한 업로드를 하기 위해 제작된 소스이다. 해당 소스는 특별한 일을 제외하고는 사용하는 것을 권하지 않으며, 또한 파일 용량이 큰 경우 String으로 변환된 사유로 인해 용량이 평균 2배로 늘어나는 점 . 고려해야한다. 2. 대상 장비 범위 1) IPS, IDS 장비 2) F/W in IPS 장비 3) FW 장비 4) 스팸 장비 3. 소스 1) 자바스크립트 Javascript let param = {}; let file = $("#inputFile")[0].files[0]; let reader = new FileReader(); reader.readAsArrayBuffer(file); reader.onload = function () { let res..

[DB][MARIADB][MYSQL] 파일 사이즈 변환 쿼리

1. 개요 해당 소스는 DB 통계 추출 과정에서 파일 사이즈 관련하여, BYTE,KB,MB,GB,TB,PB 등 단위 환산을 위해 개발된 소스이다. 2. 소스 create or replace function FN_SIZE_CONV(BYTE_SIZE BIGINT) RETURNS VARCHAR(200) BEGIN DECLARE RTN_CONV VARCHAR(200); DECLARE RTN_CONV_UNIT VARCHAR(200); DECLARE UNIT_BYTE BIGINT; DECLARE UNIT_KB BIGINT; DECLARE UNIT_MB BIGINT; DECLARE UNIT_GB BIGINT; DECLARE UNIT_TB BIGINT; DECLARE UNIT_PB BIGINT; SET UNIT_BYT..

[Windows][L2TP] Windows 10 L2TP VPN 연결 이슈

1. 개요 UDM Pro 라는 방화벽 장비를 통해 L2TP VPN을 연결하려했으나, 윈도우 10 자체 이슈로 인해 계속 연결되지 않아 검색 하던 중 해결 법을 발견하였다. 2. 처리 방법 윈도우 + X > 관리자 > PowerShell 에서 아래 값을 입력 후 재부팅을 진행한다. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent" /v "AssumeUDPEncapsulationContextOnSendRule" /t REG_DWORD /d 2 /f

[NODEJS][NPM][YARN][WEBPACK] NodeJS Webpack + Haproxy + Apache Reverse Proxy 구성

1. 개요 L4 장비 가격으로 인해 도입이 불가하여, Vmware - Haproxy 서버를 구성하게 되었다. 구성 과정에서 Apache + NodeJS Webpack (React) 구성 단계에서 몇가지 발생하여 다음과 같이 정리해본다. 2. 구성도 Haproxy (ke_prx_1) 1EA -> Apache 2.4.52 Webserver 2EA -> NodeJS (React) 2EA 으로 통신 하는 구조이다. 3. 설정 정보 1) Haproxy #Haproxy #----------------------------Front---------------------------------- frontend http_front_web bind *:80 mode http acl route_web hdr(host) -i..

Java Spring 에서 서버 재기동 및 원격 패치

1. 개요 서버 재기동 및 패치를 해야하는데 고객사에서 열어주지 않는 경우 매번 문제가 될 수 밖에 없다. 이때 부득이하게 유지보수를 위해 매 방문을 할 수 없기에 다음과 같이 만들어본다. 또한, 해당 소스는 특별한 기능, 특별한 소스가 아닌 기본 기능을 응용해 만들어본 것이기에 특별하지 않다는걸 유의하자. 2. 소스 1) 화면 소스 소스 경로 입력 검색 저장 01서버 재시작 02서버 재시작 ETC서버 커맨드 업로드 2) 화면 자바스크립트 소스 3) 자바 소스 @RequestMapping(value = "/admin/manage/edit.do", method = RequestMethod.GET) public String timeCheck(Model model, @RequestParam(value = "p..