newChobo
article thumbnail
Published 2023. 4. 1. 19:18
20230401 개발/portfolio gallery

Firebase Authentication

식별자

제공업체

생성한 날짜

로그인한 날짜

사용자 UID

 

현재 내 USER 테이블

user_no

user_ID

user_PW

user_name

nickname

sex

JoinDate

LastLogin

LastPWupdate

 

Authentication에서 정보들을 관리해주기도 하고, 너무 많은것을 취급하려 했었던게 아닐까 싶다.

Firebase Authentication에서 비밀번호 찾기는 어떻게 하지?

 

일단, Node에서 너무 많은 처리를 하도록 하려 했었던것은 욕심이였던 것 같다.

원래는 회원가입 할때마다, 내 Node에도 데이터들을 넣어주려 하였는데, 그냥 로그인은 UID로 하고, USER 테이블에 정보를 집어넣는 2차 가입 단계를 가지면 될 것 같다.

 

그리고, 비밀번호는 내가 관리할 수 있는 영역이 아닌것 같다.

회원가입일, 마지막 로그인도 굳이 내가 가질 필요는 없다.

유저의 자기소개, 사용 기술, 관심분야 등 은 어떻게 표현해야 하는가?

 

회원등급 테이블이 따로 필요할까?

-1009 : 관리자 회원

-1 : 탈퇴 / 이용불가

0, NULL : 임시 회원(firebase에는 회원가입하고 user테이블에는 정보가 입력되지 않은 상태)

1 : 일반 회원

2 : 기업회원

 

그냥 userNO 안사용하고, UID로 글 작성, 수정 같은 잡다구리한 작업 모두 맡겨도 될까?

클라이언트는 로그인할때마다, Grade를 받아오고 항상 보관한다.

 

PK가 순차적으로 쌓이는게 더 성능이 좋을까?

하지만, 로그인을 결국은 UID를 받아와서 인증과정을 거칠텐데, userNO가 PK일 필요는 없을것같다.

UID를 PK로 두는게 성능에 더 좋을 것 같다. 아니면 인덱스만 주던가...

 

...그냥 Firebase를 끝까지 들고간다고 생각하면 그냥 userNO를 없애버리는게 훨씬 효율적일 것이라는 생각이 든다.

그게 맞는듯.

 

그냥 없애자.

 

firebase로 로그인하고, user테이블을 read하는데, 원하는 결과(uid)로 검색한 결과가 null이면 insert 작업을 하도록 한다.

검색할 때 애초에 grade, nickName 받아오도록 한다.

 

포트폴리오 갤러리 임시 ERD

역시, 기술에 능숙하지 못해서 그렇지 ERD 자체는 그렇게 복잡하지 않은 모습을 보인다.

대댓글 기능은 만들어야하나? 계층형쿼리였나 쓰면 되긴 했던거같은데...

 

유튜브는 댓글/대댓글까지만 있고, 나머지는 그냥 멘션만 하는게 아닐까 싶다.

그게 더 부하가 적을것 같긴 하다.

 

이미지 서버를 따로 구축하는건 어떨까?

친구목록 같은것은 어떻게 하지?

 

근데 구글 로그인같은거로 하면, UID는 오더라도 userID는 안올거아니야?

그럼 이것도 지워야하네?

 

명함에 쓸만한 내용들은 UserDetail에 있는데 직접 명함도 구성해야하니, 명함 테이블도 또 따로 필요해질 것 같다.

 

만약, 사진들만 주루룩 갖는게 아니라, 사진 사이사이에 정보를 갖도록 만들고 싶다면 어떻게 해야 할까?

 

이번주 내에 ERD는 완성을 해야 할 것.

그리고, 완성 후 2~3일 내로 DB 안에 테이블까지 생성하는걸 목표로 하자.

 

이미지 서버는 firebase를 활용해볼까?

이미지 하나당 최대 용량을 몇 메가 정도로 책정하는게 좋을까?

 

firebase의 프로젝트 무료배포가 어려워졌다. 타 사이트를 활용해 배포하는 방법을 찾아봐야 할 듯.

https://nhj12311.tistory.com/276

 

헤로쿠(heroku) 가입부터 node.js 배포까지

오늘은 헤로쿠 가입부터 node.js 배포까지 진행해보도록 하겠습니다. 간단하게 서비스를 띄울 무료 PaaS 서비스를 찾는다면 무조건 헤로쿠겠죠. 1. PaaS 서비스의 대표주자 헤로쿠(Heroku) 헤로쿠라는

nhj12311.tistory.com

https://doqtqu.tistory.com/239

 

헤로쿠(Heroku)로 Node.js 호스팅하기

2022년 11월 28일 이후부터는 유료화가 되었습니다.. Bye Heroku 원래는 Node.js 무료 호스팅 방법으로 Firebase를 이용하고는 했었다. 하지만 최근에 Firebase spark 요금제에서 Cloud Functions 서비스를 종료하

doqtqu.tistory.com

 

후보 1 : 헤로쿠

후보 2 : NAS

후보 3 : 유료로 firebase 활용

 

근데 비상!

firebase의 realtime database는 관계형 DB가 아니다.?

 

무료 DB 호스팅 서비스도 알아봐야하나

 

일단 Node.js는 헤로쿠라는 곳에서 배포해도 될것같다.
(프론트는 github)

 

근데 DB가 문제다.;;

진짜로 nas를 만들어봐야 하나?

아니면 realtime database의 활용 방법을 공부 해야하나?

 

..어차피 새로운 도전을 하는 김에

 

 

 

근데 그렇게 한다고 했을 때, 굳이 Node.js가 필요한가?

데이터는 클라이언트에서 직접 들고올 수도 있을테고, 로그인 상태는 ...아 권한같은것을 처리하려면 어쩔 수 없으려나?

 

옛날에는 왜 JSON형태로 안쓰고, 관계형 DB를 써야하나 생각했었는데 써보려니까 새삼 낯설다.

 

 

 

 

일단, NoSQL에 대해 잘 모르다 보니, 알아보고 있는데 내 프로젝트에서는 RDBMS가 훨씬 적합할 것 같다는 생각이 든다.

...DB 배포는 나중에 생각하고, 일단 개발을 재개하면 될 듯 하다.

 

다시 MariaDB로 작업해보자.

이미지나 파일 업로드같은건, firebase를 사용하도록 해도 될 듯 하다.

 

추가정보 : 

https://here4you.tistory.com/235

 

 

'개발 > portfolio gallery' 카테고리의 다른 글

20220404  (0) 2023.04.05
20230402  (0) 2023.04.02
20230331  (0) 2023.04.01
20230330  (0) 2023.03.30
20230329  (0) 2023.03.30
profile

newChobo

@새로운뉴비

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!