분류 전체보기

개인 공부/전공 지식 정리

[Socket] Http 통신과 Socket 통신의 차이점

HTTP 통신 HTTP란 HyperText Transfer Protocol 의 약자로, 말 그대로 HTML 파일 보내기 위한 프로토콜이였다. 현재는 JSON 형태로 많이 보낸다. 클라이언트와 서버간의 단방향 통신이며, 클라이언트 요청에 대한 서버의 응답으로 이루어져 있다. 통신이 끝난 후 대부분 연결을 끊는다. 소켓 통신 소켓 통신이란 클라이언트와 서버 간의 양방향이 가능한 통신 방식이다. 서버도 클라이언트에게 응답 값을 요청할 수 있다. 요청이 끝나도 연결이 유지된다. 데이터를 자주 주고 받는 스트리밍, 채팅 통신에 유리하다.

카테고리 없음

[WIL] 회고 열하나

1. 지난 일주일 동안 가장 인상 깊었던 배움에는 뭐가 있었지? 해야할 게 너무 많다 !! 7월말 잘 버티고 넘겨보자. 아무 생각도 안 나게 바쁘게 살면 되더라. 2. 결과적으로, 현재 나의 상태는? 갓생을 사는 중이다. 7시반 기상, 샤워 아침 먹고 열람실 -> 9~9 몰두 -> 운동 -> 잠 조금 불안하다. 곧 취업 시즌이기 때문 ,, 3. 이 상태에서 다음 일주일을 더 잘 보내려면 어떻게 해야 할까? 우선 미치도록 바쁘게 살다보자. 잡생각도 못 할만큼 바쁘게. => 너무 잘 하고 있다. 다다음주부터 코테, 면접 있기 때문에, 9-9 중 2-3시간은 코테에 투자하자. 좀 더 일찍 자고 일찍 일어나서 아침 집중도를 올려보자. => 너무 잘 하고 있다. 운동도 꾸준히 ,, => 이것도 너무 잘 하고 있어..

개인 공부/Devit

[Devit] #2 유저 설계 ( Token, RabbitMQ )

구현 해야 하는 기능. 유저 헤더에서 토큰 값 가져와 유저 구분하기 (uuid) 유저 생성 ( RabbitMq 이벤트 처리 ) 유저 수정 (API) 유저 프로필 조회(API) 헤더에서 토큰 값 가져와 유저 구분하기 MSA 패턴에서 모든 요청은 GateWay 서버로 들어온다. 때문에 GateWay 에서 유저 인증, 인가처리에 대해서 모두 마친 후, 인증된 데이터를 토큰으로 만들어 헤더에 담는다. 그 헤더를 다시 해당하는 url에 맞추어 각 서버로 API 요청을 보낸다. 때문에 우리는 헤더의 유효성을 체크하지 않고, 그저 데이터를 가져다 사용하기만 하면 된다. public ResponseEntity getProfile(@RequestHeader("Authorization") String data) throw..

개인 공부/Devit

[Devit] #1 아키텍처 설계

프로젝트 개발에 앞서, 본 서비스의 소개와 아키텍처에 대해 간략히 소개해보자. 더불어 내가 맡은 도메인들을 소개할 것이다. What ? 우리 팀은 개발자들을 위한 구인구직 웹 서비스를 계획했다. 구인구직 서비스는 많은데 ? 맞는 말이다. 때문에 차별성을 위해 우리는 개발자들에 초점을 맞추었다. 세상에는 정말 다양한 개발자가 존재한다. 학생, 인턴, 주니어, 시니어, 등등 ,, 개발자의 역량마다 할 수 있고, 해야하는 일은 전부 다 다르다. 예를 들어 간단한 초중학교 코딩 교육을 10년차 시니어 개발자가 할 수 없지 않는가 ? 용돈이 필요한 대학생 개발자가 적합할 것이다. 이처럼 우리는 일을 난이도, 역량에 맞추어 구분할 것이며 이를 적합한 개발자들에게 맞춤형으로 제공할 계획이다. ( feat .. 내가 ..

내일배움캠프/KPT

#2 1차 프로젝트 (DevIT) - KPT

1. 한 주의 흐름 한 일 프로젝트 기획 프로젝트 구현 프로젝트명: Devit 구현 기능 로그인, 회원가입 & 소셜 로그인 CRU (게시물, 북마크, 회원) 대시보드 프로젝트 배포 AWS EC2 AWS S3 GitHub Action 프로젝트발표 2. Keep 다음 프로젝트에서도 유지했으면 하는 부분 팀원들 간의 커뮤니케이션 능력 향상 알고있는 지식들(알고리즘,로직) 전달해주기 에러에 대해서 혼자 싸매는 것 보다는 공유하면서 같이 진행 외부 템플릿 사용으로 인한 프론트 UI 완성도 향상 초기 세팅 단일화 문서 기록 ( Notion, Readme ) 3. Problem 문제점 : 이번 프로젝트에서 발생한 문제점을 객관적으로 판단 PR 시 코드 리뷰가 되지 못한 점 클래스 분리가 잘 안된 점 아키텍처에 대한 ..

내일배움캠프/KPT

#1 미니프로젝트 (Fashiony) - KPT

1. 한 주의 흐름 기초 웹 강의 : 대부분의 내용은 이미 숙지 하고 있었던 지식이였지만, 다시 한 번 기초를 잡고 갔다. 깃 강의 : 깃 강의도 좋았지만, 팀원들과 효율적으로 협업을 잘 하는 방법에 대해서 많이 배웠다. 특히 pr(pull request)에 대해서는 완벽히 숙지하지 못 한 상태에서 다혜님이 친절하게 설명해주셨다. 덕분에 좋은 협업을 할 수 있었던 것 같다. 미니 프로젝트 : 3일 내로 하나의 서비스를 완성해야했다. 기획부터 개발까지 ,, 더구나 우리 팀원은 3명으로 다른 팀 보다 무려 한 명이나 더 적은 상태였다. 하지만 모두들 3일동안 프로젝트에 몰두했고, 완성도 있는 하나의 서비스가 나올 수 있었다. 처음으로 협업다운 협업이 진행되고, 튜터님들의 완벽했고 앞으로 너무 기대가 된다는 ..

개인 공부/Spring

[Spring] #9 JPA 엔티티 매핑

엔티티 매핑 미리 설계한 요구사항에 맞게 객체를 설계하고, 관계형 데이터베이스를 설계했다면 우리는 이 둘을 매핑시켜줘야 한다. 하지만 JPA의 특성 덕분에 우리는 객체 위주로 설계하고 이를 매핑시켜주면 된다. 조건에 맞게 엔티티를 매핑시켜주기 위해서는 어떤 개념들이 필요할까 엔티티와 테이블 매핑 @Entity ? @Entity 어노테이션이 붙은 클래스는 애플리케이션 실행 시 자동으로 JPA 가 관리하고 이를 엔티티라 부른다. 즉 JPA 를 사용해서 테이블과 매핑될 클래스는 반드시 선언 전 @Entity 어노테이션이 필수이다. 이 때 엔티티 이름을 지정할 수 있는데, @Entity(name = " ") 옵션을 주면 된다. 없다면 클래스 이름을 기본값으로 사용한다. @Table ? @Table 어노테이션은 ..

개인 공부/Spring

[Spring] #8 JPA 동작 원리

JPA 동작 원리 어떤 기술을 잘 활용하려면, 내부 동작원리를 잘 이해하는게 중요하다고 생각한다. 때문에 JPA 를 본격적으로 사용하기 전, JPA 내부 동작원리에 대해서 알아보자. JPA 의 내부 동작원리에 대해서 알려면 영속성 컨텍스트에 대해서 알아야한다. 영속성 컨텍스트 ? JPA 를 공부하다보면, 영속성 컨텍스트라는 단어를 쉽게 볼 수 있다. 영속성 컨텍스트란 엔티티를 영구 저장하는 환경 이라는 뜻이다. 말로는 쉽게 이해되지 않지만 논리적인 개념으로, 엔티티를 저장하고 관리하는 하나의 공간이라고 생각하면 편하다. 이러한 영속성 컨텍스트는 엔티티 매니저를 통해 접근할 수 있다. 엔티티 ? 엔티티란, 데이터베이스를 공부하는 대부분의 사람들이 알듯이 하나의 데이터 집합이다. 우리는 객체 위주로 설계하기..

Da2isy
'분류 전체보기' 카테고리의 글 목록 (7 Page)