일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 요리책 운영체제
- 네트워크와 분산 시스템
- Algorithm
- 물리 메모리 관리
- GCP PubSub
- 스프링 APPLICATION_JSON_UTF8
- CloudFunction
- github access token
- Python
- heap
- 알고리즘
- JSON UTF-8
- chapter8
- 브라우저 JSON encoding
- 운영체제
- JSON encoding
- 코딩테스트
- chapter7
- 브라우저 JSON 인코딩
- 연습문제
- github push 403
- 문제 풀이
- codingtest
- CPU 스케줄링
- github 403
- 가상 메모리 기초
- PubSub
- github personal access token
- 요리책
- Java
- Today
- Total
목록분류 전체보기 (31)
이도(李裪)
GCP Pub/Sub를 Spring Boot와 연결하기 작성한 코드는 github에서 확인할 수 있습니다 GCP Pub/Sub과 Cloud Function을 이용해 대용량 모바일 푸시 메시지 처리(FCM)를 구현하였습니다 AWS에서 SQS와 Lambda를 이용해 같은 방법으로 이용할 수 있습니다 GCP는 처음이라 해당 내용을 기록으로 남깁니다 Message Queue를 사용하면 다른 서버로 호출할 때 결합도를 낮출 수 있어 좋습니다. 만약에 호출한 서버가 죽더라도 메시지 큐에 메시지를 넣어두면 나중에 서버가 다시 뜰 때 메시지 큐에서 메시지를 가지고 와서 해당 내용을 호출해 좀 더 신뢰할 구조를 짤 수 있습니다. 그리고 많은 일을 처리할 때 메시지에 해야할 일을 명세해서 넣어두고 메시지를 하나씩 가져가서..
공부하면서 연습한 코드는 깃허브에 올려두었습니다 프로토콜 버퍼 (Protocol Buffers, Protobuf)는 구글이 개발한 구조화된 데이터를 직렬화하는 방식입니다. 프로토콜 버퍼를 사용하는 이유 데이터를 직렬화(serialize)하고 구조화된 데이터를 주고 받을 때 다음과 같은 방법을 생각해볼 수 있습니다. 1. Java Serialization - 다른 언어와 데이터를 주고 받을 때 잘 동작하지 않습니다 2. ad-hoc way (특별한 목적을 위해서 정의하고 사용하는 방식) - 데이터를 특정한 문제를 풀기 위해 (예를들어 encoding 4 ints로 만드는 경우 ex. 12:3:-23:67) - 내부에서 사용하려는 목적으로 간단하게 ad-hoc 방식은 간단한 메시지의 경우에는 빠르고 좋은 결..
github에 push 하는데 403 에러와 다음 에러 메시지가 나타났습니다 password 인증 방식에서 access token 방식으로 변경되었다라는 내용입니다 에러메시지 remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information. unable to access 'https://github.com/{userId}/{reposit..
JSON 기본 인코딩은 UTF-8 입니다 이는 RFC 7159 (JSON 문서)에 기술되어 있고 브라우저에서도 공식적으로 따르고 있습니다 크롬 브라우저는 62.0부터 따르고 있고 파이어폭스는 53부터 따르고 있습니다 Safari는 XMLHttpRequest 인 경우 기본적으로 UTF-8 인코딩입니다 RFC 7159 (JSON 문서) RFC 7159 (JSON 문서)에 JSON 인코딩의 기본은 UTF-8이라고 명시하고 있습니다 https://datatracker.ietf.org/doc/html/rfc7159#section-8.1 브라우저들 JSON 인코딩 이슈 티켓과 JSON 요청 결과 크롬 https://bugs.chromium.org/p/chromium/issues/detail?id=438464 (버그..
String의 hash code에 대해 조사해보았습니다 String.hashCode() 내부 구현 코드 String Class에서 "String" 값은 `value` 변수에 저장하고 있습니다 해시 코드 값은 `hash`에 저장하고 있습니다 (그래서 hashCode() 함수에서 != 0 이라면 기존에 가지고 hash 멤버 변수 반환이 가능합니다) 우선 openjdk 11과 openjdk 1.8의 구현의 아이디어는 동일하나 내부 구현이 조금은 다릅니다 공부를 위해서 좀 더 직관적인 openjdk 1.8 기준으로 공부했습니다 해시코드 계산방법 hashCode() 함수를 살펴보면 멤버변수 hash가 있으면 즉, hash code를 계산한 적이 있어서 int 기본값인 0이 아니면 멤버변수 hash를 반환합니다 v..
출발점 자바 코드를 짜다가 스스로 설명이 되지 않는 부분이 있어서 찾아보고 정리했습니다 public class StringCompare { public static void main(String[] args) { String string1 = "Hello"; String string2 = "Hello"; System.out.println("string1.hashCode() = " + string1.hashCode()); // 69609650 System.out.println("string2.hashCode() = " + string2.hashCode()); // 69609650 System.out.println("string1 == string2 : " + (string1 == string2)); // ..
HTTP GET method와 Body 값을 같이 사용할 수 있는 지 리서치한 내용입니다 Postman과 cURL에서 당연히 사용할 수 있어서 의심없이 사용하다가 안드로이드에서 기본 통신 라이브러리를 빌드했을 때 GET with body 요청을 보내면 POST with body로 변경되는 것으로 생각됐습니다 (서버 쪽에 로그를 보면 되는데 그 때 요청 로그를 지금 확인하기 힘들어서 추측만 하고 있습니다) 그래서 이번에 HTTP GET with payload bod에 대해 리서치 했습니다 GET with body에 토론한 것들 중에 가장 눈여겨볼 topic 입니다 https://stackoverflow.com/questions/978061/http-get-with-request-body/983458#983..
문자열 압축 - 카카오 2020 코딩테스트 문제입니다 https://programmers.co.kr/learn/courses/30/lessons/60057 ## 문제접근 방법 문자열은 1, 2, 3, .... , len(s) // 2 단위로 자를 수 있습니다 문자열을 자르는 단위를 unit이라는 변수로 두겠습니다 그리고 s의 길이는 1 이상 1,000 이하라는 문제 조건이 있습니다 그러면 s는 1~1000, unit은 1~500 입니다 따라서 최대 계산 횟수는 1000 * 500 = 500,000 번입니다 파이썬이 1초에 5천만번 ~ 1억번 정도 연산이 가능하므로 전체 탐색으로 이 문제를 풀 수 있습니다 문자열과 자를 문자열 단위를 받는 함수를 만들고 그 중에서 가장 최솟값을 찾는 방식으로 구현하였습니다..