일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스 #카카오 #IT #코딩테스트
- DPDK
- 코딩테스트
- IT
- Kakao
- Python
- 스프링
- 네트워크
- springboot
- 개발자
- 백엔드
- 카카오
- Spring
- Elasticsearch
- Java
- 알고리즘
- 리눅스
- 엘라스틱서치
- 스프링부트
- 파이썬
- 캐시
- programmers
- 자바
- 쿠버네티스
- 운영체제
- 프로그래머스
- C
- 도커
- Linux
- docker
- Today
- Total
목록전체 글 (185)
저고데
들어가며해당 내용은 필자가 회사 업무에서 겪은 문제이다.사내에 A라는 프로세스를 통해서 ms office 파일의 암호화 여부를 판단하는 로직을 개발해야 했다.우선은 해당 내용과 관련된 오픈 소스를 찾고 테스트하는 것부터 시작했다.ms office의 경우, 이와 관련된 오픈 소스가 많이 존재했기에 쉽게 찾을 수 있었다.https://github.com/nolze/msoffcrypto-tool GitHub - nolze/msoffcrypto-tool: Python tool and library for decrypting and encrypting MS Office files using passwords or otherPython tool and library for decrypting and encrypti..
들어가며필자가 비트코인 선물 거래 모의 투자 서비스를 개발하면서 한 가지 의문점이 들었다.현재 기능 중에서 사용자의 수익률과 수익 금액 등과 같이 실시간으로 변경되는 데이터들을 백엔드 단에서 계산을 하는데, 이를 마찬가지로 프론트 화면으로 실시간 전송을 해야한다.당연하게도 WebSocket을 사용하여 해당 데이터를 실시간으로 전달하려고 했으나, 한 가지 궁금증이 생겼다.그렇다면 Message Queue(이하, MQ)로는 해당 기능을 만들 수 없는 것인가?Client와 Server가 항상 양방향으로 연결되어 실시간 동시성 통신을 하는 WebSocket의 특성상, 리소스 사용량이 많을 것인데, 그렇다면 Message Queue로 대체하는 것이 좀 더 효율적이지 않을까하고 말이다.따라서, 이번 시간에는 두 가..

들어가며필자가 사이드 프로젝트를 진행하면서 발생한 문제이다.서비스의 기능 중, 지정가 주문을 걸어놓으면 현재 비트코인의 가격과 지정가 가격이 일치할 때, 채결이 되는 기능이 있다.지정가 주문이 채결되는 과정은 다음과 같다.먼저 사용자가 지정가 주문을 하게 되면 NoSQL 저장소에 "{지정가 가격}:{사용자 ID}" 형식으로 지정가 주문이 저장된다.Kafka로부터 전달된 비트코인 현재 가격에 의해서 지정가 가격과 동일한 데이터를 NoSQL에서 삭제하고, RDBMS에 저장하여 해당 거래가 채결되었음을 알리는 구조이다. 그리고 해당 코드는 아래와 같다. @Transactional public void executeOrder(String currentBtcPrice) { String or..

들어가며Java의 가장 큰 특징 중 하나는 어떤 운영 체제에서도 동일한 input을 넣으면 동일한 output이 나온다는 것입니다.이는 JVM에 의한 것이라고 할 수 있습니다.즉, 각 운영체제마다 JVM이 존재하기 때문에 운영 체제에 구애받지 않는 것이죠.이번 시간에는 JVM의 동작 원리와 구조에 대해서 간단하게 알아보겠습니다. JVM의 개요JVM(Java Virtual Machine)은 자바 애플리케이션을 실행하기 위한 가상 머신입니다. JVM은 플랫폼 독립성을 제공하며, 바이트코드를 실행 가능한 기계어로 변환하여 각 운영 체제에서 동일한 실행 결과를 보장합니다. JVM은 JDK, JRE와 함께 자바 실행 환경을 구성하며, 각각의 역할은 다음과 같습니다.JDK(Java Development Kit)- ..
들어가며지난 포스팅과 이어지는 내용이므로 아래의 링크를 먼저 봐주시면 감사하겠습니다.https://justgotothedesk.tistory.com/186 [개발 지식] HTTP 기본 지식(상)들어가며저는 원래 이론 공부를 좋아하지 않습니다. (이론보다는 실습을 더 좋아한다는 말입니다.)'백문이불여일타'라는 말이 있듯이, 코딩의 영역에서는 양반처럼 이론만을 공부하는 것보다는justgotothedesk.tistory.com 웹 브라우저의 요청 흐름HTTP를 이용하는 대부분의 목적은 요청과 응답일 것입니다.내가 원하는 정보를 요청하면 서버 측에서 해당 정보를 리턴하는 것이 대부분이죠.사용자가 직접 서버에게 요청을 할 수 있겠지만, 해당 과정은 컴퓨터를 잘 모르는 사람들에게는 매우 번거롭고 어렵습니다.이를 위..
들어가며저는 원래 이론 공부를 좋아하지 않습니다. (이론보다는 실습을 더 좋아한다는 말입니다.)'백문이불여일타'라는 말이 있듯이, 코딩의 영역에서는 양반처럼 이론만을 공부하는 것보다는 머슴처럼 맨 땅에 헤딩하는 공부를 더 좋아합니다.그래서 처음 컴퓨터 분야를 접했을 때는 운영체제나 자료 구조와 같은 필수 이론만 공부하고, 바로 어플리케이션을 만들었던 기억이 납니다.물론 직접 개발하고 배포하면서 깨달은 점이 많고 이러한 방법이 학습 시간을 단축한 것은 맞지만, 사람이 너무 오만해지는 느낌이 들었습니다.간단하게 HTTP를 설명하라고 했을 때, 제대로 답하지 못한 저를 보면서 기초가 많이 부족하고 겉멋이 들었구나 생각이 들었습니다.기초가 부족하다보니 확장성이나 어렵고 오류를 해결하는데도 많은 시간이 걸리더군요..