728x90

전체 글 105

AWS - EBS

Elastic Block Storage (EBS) 하드디스크용도라고 생각하면됨 저장공간이 생성되어지며 EC2 인스턴스에 부착된다 디스크 볼륨 위에 File System이 생성된다 EBS는 특정 Availability Zone에 생성된다 Availability Zone (AZ) 하나의 리전 안에서 여러개의 AZ가 존재 가능 한쪽 서버가 망가졌거나 다운되었을 경우 AZ백업을 통해 서비스를 가능하게 해주는 일종의 Disaster Recovery라고 생각할 수 있음 EBS볼륨타입 General purpose SSD(GP2) : 최대 10k IOPS를 지원하며 1GB당 3IOPS속도가 나옴 Provisioned IOPS SSD(I01): 극도의 I/O 률을 요구하는 환경에서 주로 사용됨. 10K 이상의 IOPS를..

AWS - EC2

Elastic Compute Cloud(EC2) 디스크 크기 사용량이 예측 불가능 사용량이 많아지면 늘리고, 적어지면 줄이게끔 하는 역할을 수행 하는것이 EC2 인스턴트 on / off가 가능해서 사용할때만 사용료 지불 EC2 사용시 내는 다양한 지불 방법 On-demand : 시간 단위로 가격이 고정되어있음 Reserved : 한정된 EC2용량 사용 가능, 1~3년동안 시간별로 할인 적용 받을 수 있음 Spot : 입찰을 통해서 가장 큰 할인률 갑자기 자기가 꺼지고 켜지고 가능 인스턴스의 시작과 끝이 중요하지 않을 때 사용을 한다. 사용 용례 On-demand : 오랜시간 선물을 내지 않고 최소한의 비용을 지불하여 EC2 인스턴스를 사용하고 싶을 때, 특히 앱/프로그램 개발시 최초로 EC2인스턴스에 d..

AWS - IAM 정책관리

IAM 유저를 관리하고 접근 레벨 및 권한에 대한 관리 접근키(Access Key) , 비밀키(Secret Access Key) 매우 세밀한 접근 권한 부여 기능 (Granular Permission) 비밀번호를 수시로 변경 가능하게 해준다. Multi-Factor Authentication(다중 인증) 기능 그룹 (Group) → 하나 혹은 다수의 유저 유저 (User) 역할 (Role) 정책 (Policy) (*) 정책은 그룹, 역할에 추가시킬 수 있다. (*) 하나의 그룹 안에 다수의 유저가 존재 가능하다. IAM은 유니버셜(Universal) 함 → 지역 설정이 필요 없음 IAM 정책 시뮬레이터 개발환경(Staging or Developer)에서 실제(Production)으로 빌드 하기전 IAM ..

OpenFlow, OpenRPA

OpenFlow와 OpenRPA는 Server Client 구조로 되어있음 websocket 및 http 프로토콜 사용 , 데이터 적재를 위해 Mongodb를 사용 여러 서버에 Job을 나눠주기 위해 Rabbit MQ를 통한 Job Queue를 구현 - Job Queue는 userid(실제 userid가 아니라 user key 값)로 queue이름이 정해져 있고 user별로 job이 분배되어 실행 -> 타 유저의 경우 다른 queue를 가지게 됨 - OpenFlow -> Rabbit MQ를 이용해 RPA Agent들에 일을 시키는 역할 - typescript 기반으로 제작 되었음 - Controller.ts 에서 OpenFlow 대부분의 역할 제어 - Controller.ts → OpenFlow page..

증권사 추천종목 크롤링

사이트 : https://money2.daishin.com/E5/ResearchCenter/Work/DW_Research_PromList.aspx?pr_code=5&itemgroup=1&m=966&p=1062&v=2297 Monthly > 유망종목 - 대신증권 money2.daishin.com 페이지에서 가져올 데이터를 선정한다. F12 또는 Ctrl+Shift+I 키를 눌러 개발자 도구를 열고 inspector를 클릭하고 수집을 원하는 문구를 클릭한다. 수집하려는 단위 항목의 범위를 확인하고 특징이 있는 tag 및 class 명칭 등을 확인한다. 마우스를 HTML tag 하나 하나 올리면서 이동하면서 확인하면 각 tag 별로 범위를 확인할 수 있다. 위와 같은 방법으로 확인한 우리가 수집하려는 데이터 ..

Docker 기본 사용법

Docker https://www.docker.com/ 도커 컨테이너는 일종의 소프트웨어를 소프트웨어의 실행에 필요한 모든 것을 포함하는 완전한 파일 시스템 안에 감싼다. 여기에는 코드, 런타임, 시스템 도구, 시스템 라이브러리 등 서버에 설치되는 무엇이든 아우른다. 이는 실행 중인 환경에 관계 없이 언제나 동일하게 실행될 것을 보증한다. (출처: 도커 (소프트웨어)) 설치 How To Install and Use Docker on Ubuntu 16.04 (Digitalocean) https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04 sudo 없이 사용하기 $ sudo usermod -aG..

리눅스에서 구글 드라이브 파일 다운받기

다운받고자 하는 파일의 링크를 생성 후 권한을 모든 사용자에게 공개로 설정 위 그림에서 d/~~/view 사이 형광색으로 표시된 문자가 field인데 위의 문자열을 저장해둠 wget https://raw.github.com/circulosmeos/gdown.pl/master/gdown.pl 으로 gdown.pl 다운 chmod u+x gdown.pl 로 권한 부여 ./gdown.pl 'https://docs.google.com/uc?export=download&id={FIELD}' {FILENAME} field와 filename을 채워넣어 명령 실행 (중괄호는 생략)

기타/OS 2022.02.01

Azure Conference

마이크로소프트 Digital Twins 솔루션 및 두산중공업 적용 사례 연결된 자산 → 연결된 환경 → 연결된 생태계 오픈 모델링 언어 (DTDL : Digital Twins Definition Language) 실시간 실행 환경 IoT 또는 업무용 프로그램을 통한 데이터 입력 실시간 분석 또는 데이터베이스로 출력 생태계 파트너들과 협력 (건축, 농업, 스마트시티 등) 특징 : 원격운영(유니레버), 되감기 및 재생(티센크루프), 자산추적(롤스로이스), 디지털 검증(V4I eye?) 두산중공업 해상풍력발전 시작적인 가시성 (가상의 3D 풍력 발전기) 한국 해안선 출력예측, ?? 발전단지 IoT 센서 데이터 터빈 센서 데이터 시각화 → Power BI, Teams 공유 기상예보 등 정보와 결합 두산중공업의 ..

Seminar 2022.02.01

Spring Boot - QueryDSL, JPQL, nativeQuery, Criteria

JPQL(Java Persistence Query Language) SQL을 추상화한 엔티티 객체를 조회하는 객체지향 쿼리 JPQL은 SQL을 추상화해서 특정 데이터베이스에 의존 X 예를들어 같은 SQL 함수라도 데이터베이스마다 사용 문법이 다른 것이 있는데,JPQL이 제공하는 표준화된 함수를 사용하면 선택한 방언에 따라 해당 데이터베이스에 맞춘 SQL 함수가 실행 결과 반환 함수 getResultList(리스트 반환), getSingleResult(단일 객체 반환) JPQL은 엔티티 객체를 대상으로 쿼리를 질의하고 SQL은 데이터베이스 테이블을 대상으로 쿼리를 질의한다. Member.class를 넘겨주고 getResultList() 메소드를 실행-> JPA는 JPQL을 SQL로 변환해서 데이터베이스 조..

Spring Boot - ORM, JPA, Spring data

ORM - DB에 많은 신경을쓰지 않고, OOP를 가능하게하는 프로그래밍 기법 JPA - Java ORM 기술에 대한 API 표준 명세(인터페이스) Hibernate - JPA를 사용하는 프레임워크 Spring Data JPA - JPA를 쉽게 사용하기 위해 스프링에서 제공하는 인터페이스 추상화 정도 Spring Data JPA -> JPA -> Hibernate -> Datasource(DB) 어플리케이션이 발전하면서 내부의 복잡성은 커짐. OOP는 추상화, 캡슐화, 정보은닉, 상속, 다형성 등 시스템의 복잡성을 제어할 수 있는 다양한 장치들을 제공. RDBMS는 데이터 중심으로 구조화, 집합적인 사고 필요. (추상화, 상속, 다형성 같은 개념이 없다). Object와 RDB의 패러다임 불일치. ->패..

Spring Boot - DTO, controller, service 연습

domain 하위에 5개의 Package 생성 entity repository(DAO) DTO controller service new > project Spring Initializr 선택 Project SDK : 8 java version : 8 spring Boot : 2.4.2 Dependency : JPA, Mysql, Spring Web,Lombok Lombok 자바에서 Model(DTO, VO, Domain) Object 를 만들때, 멤버필드(프로퍼티)에 대한 Getter/Setter, ToString과 멤버필드에 주입하는 생성자를 만드는 코드 등 불필요하게 반복적으로 만드는 코드를 어노테이션을 통해 줄여 주는 라이브러리 [자바] 자주 사용되는 Lombok 어노테이션 | Engineering..

iframe 하위 dom 접근법

1. window.frames['iframe id 값'] 상위 frame과 도메인이 다른 frame에도 접근 가능한 스크립트이다. window.frames['container_1'].document~ 로 접근 2. $('iframe[id=id 값]')[0].contentWindow .contentDocument로 바로 document에 접근할 수 있다. 3. document.getElementById('iframe id 값').document 상위 document를 타고 하위 iframe에 접근하기 때문에 하위 iframe의 도메인이 다르다면 접근이 불가능하다. 위와 같이 div로 구성된 드롭다운 메뉴를 선택해야 할 때가 있다. $('#cmbGndrCd-2-row-0').trigger('mousedown..

Azure Key-valut를 이용한 백업 프로세스 구축

Azure Portal 에서 제공하는 key-valut 리소스를 활용하여 백업 프로세스를 구축 할 수 있다. 과정은 이러하다. Azure 접근 하기위한 power shell commend 혹은 azure portal에 browser로 접근 — az login MFA 인증까지 거친 후에 Azure Portal에 접근이 가능하다. 서버사이드에서 컨테이너형태로 서버를 운용중이라면 WAS의 역할을 수행하는 모든 Container image의 경우 백업이 필요하다 각 image는 docker로 실행이 가능하며, 수행중인 도커 명, 태그 명으로 save 한다. # docker image를 tar파일로 저장하기 위한 커맨드 docker save -o 출력파일명.tar image_name tag_name # image..

MSA 설계

Monolithic Architecture ↔ Micro Service Architecture Monolithic Architecture 전체 애플리케이션이 하나로 되어있어서 보통 동일한 개발 툴을 사용해 개발되며, 배포 및 테스트도 하나의 애플리케이션만 수행하면 되기 때문에 개발 및 환경설정이 간단함 각 컴포넌트들이 함수로 호출 되기 때문에 성능에 제약이 덜하고, 운영 관리가 용이하다. 작은 볼륨의 시스템을 개발할 때는 매우 유용하지만 시스템이 커지기 시작하고 여러 컴포넌트들이 더해지면 문제가 발생하기 시작 기능 추가시 발생하는 문제점 빌드 / 테스트 시간이 길어진다. 작은 수정이 있음에도 시스템 전체를 빌드하고, 테스트 시간도 길어진다. 선택적 확장이 불가능 트래픽이 증가할 경우에 프로젝트 전체를 확..

리눅스 cpu 자원 모니터링 mpstat

리눅스 cpu 자원 모니터링 mpstat 사용하기 기본 명령어 수행 후 출력 $ mpstat Linux 3.2.0-57-generic (USERNB01) 12/12/2013 _x86_64_(2 CPU) 03:29:29 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle 03:29:29 PM all 6.30 0.06 1.94 3.75 0.00 0.06 0.00 0.00 87.88 all : 모든 CPU %usr : 사용자 레벨(애플리케이션)이 사용한 CPU 사용율 %nice : nice 우선순위와 함께 사용자 레벨에서 수행된 CPU 사용율 %sys : 시스템 레벨(커널)에서 사용한 CPU 사용율 %iowait : I/O 처리 때문에 기다리는 CPU..

기타/OS 2022.01.28

대신증권 API 모듈 타입 및 호출 인자 정리

대신증권에서 각 모듊별로 호출 하는 type, value가 존재하는데 가장 활용이 자주 있거나 사용해본 모듈 기준으로 정리를 해보았다.. [거래량/거래대금 상위종목] CpSysDib.CpSvr7049 object.SetInputValue(type,value) type에해당하는입력데이터를 value 값으로지정합니다 type 종류 0 - (string)시장 구분 : "1":거래소, "2":코스닥, "4":전체(거래소+코스닥) 1 - (string) 선택 구분 : "V":거래량상위, "A":거래대금상위 2 - (string) 관리 구분 : "Y'', "N" 3 - (string) 우선주 구분 : "Y'', "N" type에해당하는헤더데이터를반환합니다 type: 데이터종류0 - (short)개수 반환값: 데이터..

대신증권 Python API 활용하기

대신증권에서 거래, 정보 등을 하기 위한 API를 제공해준다. 몇가지 코드의 예시가 있다. 순서 1. 대신증권 CYBOS 5 HTS 설치 2. 대신증권 CYBOS Plus 설치 대신증권은 Python 32비트를 지원하기에 64비트에서는 오류가 날 수 있다. CYBOS 5 연결 코드 requierments : pypiwin32 #CYBOS Plus connection 확인 import win32com.client objCpCybos = win32com.client.Dispatch("CpUtil.CpCybos") bConnect = objCpCybos.isConnect if(bConnect == 0): print("연결 실패") exit() 기본 현금 매수 및 매도 요청 코드 import win32com.c..

MLOps 정의

ML + Devops → ML 시스템에 Devops를 적용한 것이 MLOps라고 생각한다. MLOps는 ML의 전체 생명주기를 관리함 ML 모델을 학습하고 배포하는 단계 데이터를 수집하고 분석하는 단계 Data Collection, Ingestion, Analysis, Labeling, Validation, Preparation DevOps vs MLOps MLOps는 아래와 같은 점들에서 소프트웨어 시스템과 차이를 가진다. Testing 일반적인 단위, 통합 테스트 외에 데이터 검증, 학습된 모델 품질 평가, 모델 검증이 추가로 필요하다. Deployment 오프라인에서 학습된 ML모델을 배포하는 수준에 그치는 것이 아니라, 새 모델을 재 학습하고, 검증하는 과정을 자동화해야 한다. Production..

728x90
반응형