Back End

    반응형
Back End/DataBase

MongoDB homebrew 설치 시 Error 해결법, Refusing to load formulad ...

(base) iseoyeon@iseoyeon-ui-MacBookPro ~ % brew install mongodb-community==> Would install 1 formula:mongodb-communityError: Refusing to load formula mongodb/brew/mongodb-database-tools from untrusted tap mongodb/brew.Run `brew trust --formula mongodb/brew/mongodb-database-tools` or `brew trust mongodb/brew` to trust it. 위와 같은 에러가 발생했을 때 해결방법brew trust mongodb/brewbrew install mongodb-community ..

Back End/Infra

데이터 스트리밍(Data Streaming) 이란? 배치 (Batch Processing) 과의 차이점

데이터 스트리밍이란?데이터를 일정한 크기의 청크(Chunk) 나 이벤트 단위로 끊임없이 실시간으로 전송하고 처리하는 방식이다. AI 를 사용할 때, 스트리밍 방식으로 해두면 중간 과정을 토큰으로 받아온다. 완료 후에 보내면 사용자가 너무 오래 기다리니까, AI 와 채팅할 때 중간중간 오는 것들이 데이터 스트리밍 방식이다.(생성 ➡️ 전송 ➡️ 렌더링) 데이터가 생성되는 즉시 처리하여 실시간성, 데이터의 시작과 끝이 정해져 있지 않고 계속 흘러가는 지속성, 메모리에 전체 데이터를 올릴 필요가 없어 효율성이 있다. Apache Kafka, Apache Flink, Spark Streaming, AWS Kinesis 등의 도구를 통해 구현할 수 있다. 데이터가 끝난 걸 어떻게 알까?스트리밍은 보통 이벤트 ..

Back End/Java

[Java] 자바 버전, 어떤걸 설치해야 할까? 버전별 차이와 특징 (11, 17, 21, 25)

자바를 설치할때 어떤 버전을 설치해야 할 지 고민이 될 것이다. 이때, 고려해야 하는것이 아래의 두 가지 이다. LTS 버전인지언제 까지 지원하는지 LTS 버전이란?LTS(Long-Term Support) 는 장기 지원 버전이라는 말로, 일반 버전과 달리 장기간에 걸쳐 보안 업데이트와 버그 수정을 보장받을 수 있다. 현재의 Java 버전은 아래와 같다. LTS 버전만 확인해보면 Java 8, 11, 17, 21, 25 버전 대상임을 알 수 있다. 하지만 너무 과거의 버전은 지원 만료 기간이 더 다가올 뿐더러, 최신 버전의 주요 기능을 사용할 수 없다는 단점이 있다. 25 버전은 현재 출시 전이기 때문에 가장 최신 버전인 21 버전을 설치하는 것이 좋을 것 같다. 만약 이전 버전을 사용하는 프로..

Back End/Java

Bean 생성 메커니즘과 순환 참조 (Circular Dependency) 탐구하기

순환참조란?두 개 이상의 객체가 서로를 참조하여 끊을 수 없는 고리를 만드는 상황이다. 가비지 컬렉터 (Garbage Collector) 가 더 이상 사용되지 않는 객체라고 판단하지 못해서 메모리에서 해제하지 못하는 문제가 발생할 수 있다. 결국, 메모리 누수로 이어질 수 있다.주로 객체들이 서로를 필요로 하는 복잡한 관계를 가질 때 발생한다. Spring Bean 생성 메커니즘Spring IoC 컨테이너는 Bean 을 생성하고 관리하기 위해 체계적인 단계가 있다. 순환 참조는 이 과정에서 두 개 이상의 Bean 이 서로의 생성을 기다리며 무한 대기 상태에 빠질 때 발생한다. Bean 의 생성 과정 1. 정의(Definition)가장 먼저, Spring 컨테이너는 Bean을 어떻게 만들어야 하는지에 대..

Back End/Spring·JPA·MyBatis

카카오 로그인 invalid_grant KOE320 에러 해결하기

1. 프론트에서 받아오는 kakao-redirect-uri 와 백엔드에서 사용하는 kakao-redirect-uri 가 달라서 발생하는 문제이다. 위 경로를 동일하게 변경해주니 해결되었다. 2. accesstoken은 정상적으로 전달하면서, 로그에는 아래와 같이 KOE320 에러가 남았다. 와이래요... 심지어 해당 accesstoken 으로 사용자 정보도 잘 조회된다 ....

Back End/Infra

[AWS 서버 구축 2] 무료 Serverless PostgreSQL 데이터베이스 이용하기

1편 서버 구축 기본 개념 보러가기1편을 보고오는 게 AWS 서버 구축 시리즈의 포스팅을 이해하는 데 도움 된다. 이전에는 GCP(Google Cloud Platform) 를 사용하여 서버를 유지했었다. 그런데, 사용량이 많지 않음에도 불구하고 호출이 지연되거나 하는 등의 문제가 발생했다. 기존의 사용량으로 보아 AWS Lambda 의 무료 버전을 사용할 수 있다고 판단하였다. 이에 비용적인 측면의 부담을 줄이기 위해, 성능을 조금 포기하더라도 무료 비용인 서비스들을 연결하여 사용하는 것을 결정하였다. 일단 같은 무료 서비스이면서, GCP 의 성능보다 더 나은 것을 찾아보았다. (실제로 나은지는 모르겠음 ..) 데이터베이스: Neon (무료)백엔드: AWS Lambda (무료)API 엔드포인트: La..

Back End/Infra

[AWS 서버 구축 1] 클라우드 서버 구축을 위한 필수 용어 총정리

서버와 클라우드 컴퓨팅서버는 서비스를 제공하는 컴퓨터이다. 우리가 사용하는 온라인 서비스들은 모두 서버에서 실행되고 있다. 서버 컴퓨터를 통해 특정 요청을 보내고, 서버는 그 요청을 처리하여 데이터를 우리에게 전송한다.클라우드 컴퓨팅은 기업들이 구축해놓은 데이터 센터의 컴퓨팅 자원을 빌려 쓰는 방식이다. 아래 외에도 여러 기업들이 서버를 제공하고 있다. 클라우드 서비스 제공자 (CSP) Amazon AWS (Amazon Web Services)가장 대중적인 선택지.프리티어 서비스도 제공Google GCP(Google Cloud Platform)Google이 운영하는 서비스로, 데이터 분석, 머신러닝, 네트워킹 분야에 강점Microsoft Azure 기존에 Windows 서버나 다른 MS 제품을 많이 ..

Back End/Java

entityManagerFactory 오류 해결하기, Gradle Build Clean 실행하는 방법

빌드를 실행하는데 자꾸 entityManagerFactory 오류가 발생했다. 억울한게, Entity 추가한 것도 없고 나는 그저 순박하게 Dto 만 추가했을 뿐이라구 .... 그리고 추가한 코드를 전부 주석처리하고 실행해도 계속 에러가 발생했다.Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unsatisfied dependency expressed through method 'entityManagerFactory' parameter 0: Error crea..

Back End/Spring·JPA·MyBatis

네이버 API 회원가입, 로그인 구현하기 - 4 접근토큰으로 네이버 프로필 조회

이 포스팅은 단계 4번이다. 프로세스 전체 개요 및 이전 단계를 확인하고 싶으면 아래 게시글에서 확인이 가능하다.https://skylarcoding.tistory.com/343 프로필 요청변수요청변수는 별도로 없고, 요청 헤더에 접근 토큰 값을 전달하면 된다. 프로필 요청 링크 샘플curl -XGET "https://openapi.naver.com/v1/nid/me" \ -H "Authorization: Bearer AAAAPIuf0L+qfDkMABQ3IJ8heq2mlw71DojBj3oc2Z6OxMQESVSrtR0dbvsiQbPbP1/cxva23n7mQShtfK4pchdk/rc=" 요청 응답정보1편에서 신청한 정보들이 넘어오게 된다. 구현 코드 UserService.getUserInf..

Back End/Spring·JPA·MyBatis

네이버 API 회원가입, 로그인 구현하기 - 3 접근토큰 신규 발급받기

이 포스팅은 단계 3번이다. 프로세스 전체 개요 및 이전 단계를 확인하고 싶으면 아래 게시글에서 확인이 가능하다.https://skylarcoding.tistory.com/342 접근토큰 요청 변수프론트에서 받아온 code 와 status 값을 이용해 접근토큰을 발행해야 한다. 프론트에서 Callback 으로 전달받은 정보 (code, status) 를 이용해 접근 토큰을 발급받는다. 해당 값들은 최초 1번만 수행할 수 있으며 재사용이 불가능하다. 접근토큰 링크 샘플접근토큰을 요청하기 위한 링크 샘플은 이와 같다. https://nid.naver.com/oauth2.0/token?grant_type=authorization_code&client_id=jyvqXeaVOVmV&client_secret=52..

    반응형
Lar
'Back End' 카테고리의 글 목록