#채팅

질문 7
해시태그 없이 키워드만 일치하는 질문은 개수에 포함되지 않아요.

2달 전 · 익명 님의 새로운 댓글

채팅 애플리케이션에서 Redis 메시지 저장과 RabbitMQ 전송을 안전하게 처리하려면 어떻게 해야하나요?

안녕하세요. 현재 백엔드 개발자를 지망하는 대학생입니다.. 예전에 Springboot를 활용해서 개발한 채팅 애플리케이션 프로젝트를 리팩토링하는 과정에서 문제가 발생하여 질문 드립니다. 아래와 같은 아키텍처 애플리케이션을 구현했습니다. - MySQL: 채팅방 정보(채팅방 이름, 참여 인원수 등등), 사용방 정보 데이터 저장. - Redis: 채팅 메시지 데이터 저장 - RabbitMQ: 채팅 메시지를 전송하기 위한 메시지 브로커 STOMP over WebSocket을 활용해서 클라이언트에서 메시지를 pub해서 메시지 브로커인 RabbitMQ를 거쳐서 구독한 클라이언트에게 메시지(채팅)을 전송하도록 구현했습니다. 그런데 문제가 발생하는 로직이 있습니다. [채팅방 가입 로직] 1. @Transactional 내부에서 MySQL에 채팅방 데이터 저장. (해당 유저가 채팅방에 가입한 것을 저장) 2. Redis에 "User가 채팅방에 들어왔습니다."라는 메세지를 저장. 3. 해당 메시지를 RabbitMQ로 전송. (`rabbitTemplate.convertAndSend(...)`) 이런 상황에서 Redis나 RabbitMQ에서 문제가 발생해서 하나라도 정상적으로 완료되지 않으면 문제가 발생합니다. Redis 서버에 문제가 생겨서 채팅 메시지를 정상적으로 저장하지 않더라도 RabbitMQ를 통해 메시지가 전송되고, RabbitMQ 서버에 문제가 생겨서 정상적으로 전송되지 않더라도 Redis에 채팅 메시지가 저장이 됩니다. 이러한 문제를 해결하기 위해서 2PC, SAGA 패턴, Outbox 패턴 등등을 알아봤고, 그 중 가장 괜찮다고 생각했던 패턴이 Outbox 패턴이었습니다. 근데 또 어려움이 생겼는데, Outbox 패턴을 사용하기 위해 Pulling 기법을 사용 하자니 Redis에 무리가 생길 것 같고, 트랜잭션 로그 테일링 패턴을 사용 하기에는 Redis가 이를 제대로 지원하지 않아 구현이 굉장히 어려워진다는 문제가 생겼습니다. 그래서 MySQL을 Outbox 저장소로 사용할까 고민도 해보았는데, MySQL을 사용하면 속도 면에 불리해지지 않을까라는 생각이 또 들었습니다. 이러한 문제를 어떻게 해결하면 좋을까요...? 제가 궁금한점은 다음과 같습니다. 1. Redis를 활용하는 프로젝트에서 MySQL을 Outbox 저장소로 사용하는 것은 좋지 않은 방법일까요? 2. Outbox 패턴이 최선일까요? 현업에서는 이러한 문제를 어떤 식으로 해결하는지 궁금합니다.

개발자

#spring

#rabbitmq

#redis

#mysql

#transaction

답변 1

댓글 1

조회 120

3달 전 · nox 님의 새로운 답변

백엔드 플젝 디벨롭 할 부분

작년에 졸업 프로젝트로 백엔드 1인 프론트 1인으로 개발했능데 백엔드를 맡았고 개발을 이때 제대로 시작했습니다 Spring boot mysql aws로 개발했고 기능은 로그인,회원가입,gpt api 연결, 채팅(파이어베이스),게시판 이렇게 구현했는데 서버띄우고 도커 배포까지 스스로 다해본 플젝이라 포폴로 사용하고 싶은데 혹시 포폴로 쓰기에 더 괜찮게 디벨롭할 기능이나 사항이 있을까요ㅠㅠ 단순기능으로 포폴쓰기 너무 어렵네요

개발자

#자바

#백엔드

#스프링-부트

답변 1

댓글 0

추천해요 1

조회 104

4달 전 · 익명 님의 질문

웹소켓 + Stomp로 채팅 기능을 구현하며

RabbitMQ를 도입하였습니다. 도입의 이유는 스프링 내장 메시지 브로커를 이용하게 되면 인메모리 기반의 동작 방식으로 인해 서버 문제 발생 시 메시지가 유실되거나 확장에도 제한이 있다고 판단하여 도입하였습니다. 현직자 분들이 보기에 이 이유가 적합한 근거가 될까요? 추가로 JMeter로 RabbitMQ를 사용했을 때와 사용하지 않았을 때의 성능을 비교했는데 사용자 100명 기준 성능도 사용하지 않았을 때가 우세했고, RabbitMQ를 사용했을 때는 오히려 아래와 같은 오류가 가끔 발생하며 메시지또한 약 90퍼센트 정도만 저장된걸 확인할 수 있었습니다. 무엇이 문제이며 해결 방안이 있을까요?? java.net.SocketException: Connection reset at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:394) ~[na:na] at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:426) ~[na:na] at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:255) ~[netty-buffer-4.1.114.Final.jar:4.1.114.Final] at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) ~[netty-buffer-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:356) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.114.Final.jar:4.1.114.Final] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.114.Final.jar:4.1.114.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.114.Final.jar:4.1.114.Final] at java.base/java.lang.Thread.run(Thread.java:842) ~[na:na]

개발자

#채팅

#구현

답변 0

댓글 0

조회 81

4달 전 · 포크코딩 님의 답변 업데이트

회사 3달안에 회사 홈페이지 제작

신입 기준으로 작성되었습니다. 개발자는 혼자인 상태입니다. 페이지 메인 서브 합치면 50~60개 외부 데이터 180개 db,api 손수 제작, 로그인, 회원가입(OAuth포함), 블로그 게시판, 상담사와 채팅 기능, 반응형, SEO, 도메인연결 등을 3달 안에 하라는 소리를 들었습니다. 달로보면 큰데 12, 1, 2 제가 실제 근무한 주는 10주 정도 됩니다 쉬는 날도 있고 했어 가지고요. 하지만 현재도 퇴근 후 + 주말에도 코드 공부 및 작성하면서 프로젝트를 진행 중인데 계속해서 윗선에서는 외주는 몇주 + 이 금액이면 된다고 하더라 넌 왜 느리냐 어쩌구, 3달인데 페이지 제작이 안되면 얼마나 걸리는거냐, 챗봇 써라 챗봇써도 못만드냐? 이런 소리를 듣는 중 입니다. 제가 50일 정도 제작을 했던 거는 면접 볼 때 포폴용으로 내려고 만든 프로젝트 급 시간인데.. 이것도 부족한 부분이 많았는데 이 양을 50일 안에 하려니까 미치겠습니다. 혹시 신입이나 경력자 분들이 페이지를 제작한다면 기간은 얼마정도 잡는지 대략적으로도 좋으니.. 알려주시면 감사하겠습니다 ㅠㅠ

개발자

#웹개발

#프론트엔드

#백엔드

#취준

#이직

답변 1

댓글 0

조회 87

5달 전 · 익명 님의 새로운 댓글

웹 플러그인 만들때..

안녕하세요. 회사에서 우리 api를 쓸수 있는 스크립트 형태로 주입가능한 플러그인을 만들어야 합니다. 보통 이럴때 리액트를 사용해서 만드나요?? 얘를들면 사용자는 자신의 서비스의 저희가 만든 스크립트를 심으면 우측 하단에 버튼이 생성돼서 버튼을 클릭하면 채팅이 가능한 챗봇을 제공 하려고 하는데 이럴경우 챗봇을 리액트를 이용해서 만들어야하나요? 아니면 그냥 자바스크립트로 만들어야하나요? 그리고 무엇으로 만들던지 어짼듯 스크립트 형태로 배포 해야하는데 어떻게 해야 하는지 감이 안 잡혀서 질문 드립니다. 두서 없이 쓴 긴글 읽어주셔서 감사합니다.

개발자

#react

#javascript

#script

답변 1

댓글 1

조회 32

6달 전 · 푸른 님의 질문 업데이트

⭐취준/스터디용 프로젝트⭐를 함께 진행할 웹 디자이너 팀원 1명을 모집합니다! - 공공API 기반 여행일정 계획

저희는 현재 백엔드 2명, 프론트엔드 2명으로 구성되어 있으며, 공공 데이터 API를 기반으로 여행 일정을 계획할 수 있는 여행 일정 프로젝트를 진행하고 있습니다. 자세한 정보는 아래 참고 부탁드립니다! 현재 진행 상황 프로젝트 초안 완료 와이어 프레임 존재🙆‍♀ 웹 디자이너 1명 모집중! 회의 및 진행 방식 주 1회 온라인 회의 (화요일 저녁 8시 반) -> Discord 사용중 원하실 경우, 오프라인 회의도 가능합니다! 함께하고 싶은 분 웹 디자인 경험이 있으신 분 온라인 회의 위에 써진 요일, 시간대에 참여 가능하신 분 오픈채팅 링크 https://open.kakao.com/o/sivuLOZg 관심 있으신 분들은 부담 없이 연락 주세요! 저희도 초보인 만큼 서로 배우고 성장하는 프로젝트가 되었으면 좋겠습니다 😊

디자이너

#취업

#웹디자인

#웹디자이너

#취업준비생

#이직

답변 0

댓글 0

조회 32

7달 전 · 익명 님의 새로운 답변

리액트에서 브라우저 Intersection Observer 사용 질문,

안녕하세요, 채팅 관련 프로그램을 개발하고 있습니다. 다름이 아니라 Intersection Observer를 통한 화면 최적화를 진행하고 있습니다. 원하는 최적화 방식은 isIntersector의 true/false 여부를 통해 화면에 메시지 컴포넌트를 제공하고 있습니다. 동작은 정상적입니다. 그런데 문제가 있습니다. 부모에 Intersection Observer를 두나 자식에 Intersection Observer를 두나 아래 2가지 버그가 동일하게 나타납니다. 1. 다소 긴 채팅 또는 무거운 채팅 메시지는 화면 영역에 나타났음에도 isIntersector가 가끔 false 인경우가 있습니다. 그래서 부모가 높이는 가지고 있으나 내용이 빈 경우가 종종있습니다. 2. 메시지가 화면에서 딱 사라지는 순간 isIntersector가 무한 루프 되면서 true/false를 번갈아 가면서 반환합니다. 브라우저는 엣지입니다. 크롬은 불가능합니다. 1번 같은 경우는 산발적으로 발생하고, 2번은 저 상태가 되면 무조건 발생하는 에러입니다. 검색을 이리저리 해봤는데 도통 해결방법이 나오지 않아 여기에 문의드립니다.

개발자

#react

답변 1

댓글 0

조회 26

7달 전 · 영훈 님의 새로운 댓글

리액트에서 최상단 더보기 기능에서 스크롤 문제

안녕하세요, 리액트로 채팅 기능 구현중입니다. 다름이 아니라 최상단 더보기 버튼을 클릭하면 api통신을 통해 새로운 메시지와 기존 메시지가 합쳐집니다. 그런데 리액트는 불변성이라서 컴포넌트를 새로 그릴때 더보기한 메시지가 먼저 그려지다 보니 스크롤이 계속 탑으로 변경되는데요,,, 모든 메시지가 다 그려지고 스크롤을 이동하면 되겠지만은, 근데 생각해보니 화면은 그대로 유지(스크롤 위치)가 되면서 업데이트 하는 방법은 없을까 계속 시도중인데 도저히 방법을 모르겠습니다.

개발자

#react

답변 2

댓글 6

추천해요 1

조회 126

7달 전 · 익명 님의 질문

리액트 웹소켓 사용자 인증

웹소켓을 사용해서 채팅구현 중에 있습니다. 이때 사용자 인증 처리를 핸드셰이크 시 요청 헤더에 토큰을 담아 보내려고 합니다. Web Socket API에선 요청 헤더에 토큰을 담아 보내는게 안되고, Socket.IO나 SockJS 라이브러리를 사용하라는걸 알게되었는데 혹시나 라이브러리 사용하지 않고 Web Socket API 에서 요청 헤더에 토큰을 담아보내는 방법이 있나요?

개발자

#웹소켓

#인증

답변 0

댓글 0

조회 47

8달 전 · 허니 님의 새로운 답변

동아리? 프로젝트 같이 할 팀원은 보통 어디서 구하나요?

지금 현재 취업준비중인데 다른 사람들과 같이 프로젝트를 해보고싶어서요 보통은 어디서 구하는지 궁금합니다 여기에 동아리 검색해보니 창업 동아리는 있긴하던데.. 벨로그, 커리어리, okky등 이런 커뮤니티에서 구하나요? 아니면 네이버카페에 가입하거나 카카오 오픈채팅 같은 곳에서 구하나요? 어디서 같이할 분들을 찾아야할지 추천 부탁드립니다!

개발자

#동아리

#프로젝트

#공부

#추천

답변 1

댓글 0

조회 176

8달 전 · 익명 님의 질문 업데이트

프론트 next와 rust 사이에서의 kafka 통신

회사에서 프론트로 nextjs 쓰고있고 백으로 rust 사용하고 있습니다.(백 서버1, 프론트 1) 들어온지 얼마 안되었고 카프카가 좋다고 카프카 쓴다고 해서 그냥 그런게 있구나하고 UI나 기초적인거 짜고 이제 next에서 카프카 작업 하고있는데요 막상 시작하려니 nextjs에서 모든 데이터(유저 정보와 같은 정적인 데이터 포함)를 next 서버로부터 카프카 통신을 통해 들어오는 데이터들을 클라이언트에서 감지하려면 모든 페이지에서 웹소켓을 도입해야하는 상황입니다.. 제가 알고있는 게 맞나요? 백 서버 한개있는 프로젝트에서 카프카를 도입하는게 일반적인 일인가요..? 제가 해왔던 백-프론트 통신과 너무 달라서요 채팅같은 실시간 데이터가 필요하지 않은 곳에 웹소켓을 연결해야 하는 뿐더러 next app router에서 웹소켓을 연결하려면 별도의 node 서버를 두어야 하는 것 같은데 맞을까요? 아니면 웹소켓 말고도 카프카로 날아오는 데이터를 next 프론트쪽에서 받아올 수 있는 방법이 있나요? 정적인 데이터들은 api fetch 날려서 받아오면 된다고 생각했는데 모든 데이터를 카프카로 받아오고 있고 이를 실시간으로 확인해야하는 번거로움이 따라오는 것 같습니다.. 단지 유저정보를 받아오는데 웹소켓을 연결하는게 도저히 아닌 것 같아서 글 올려봅니다. 마감기한이 얼마 남지 않았는데 어려운걸 되게 해야하는 것도 아니고 안되는걸 되게 하라고하니 이게 맞나 싶어서요 .. 이러한 경우들이 있는지 현업자분들 도움 부탁드립니다. 공부해보니 카프카라는 기술 자체가 DB를 가진 백 서버들간의 통신에서 빛을 보기 위해 도입한다고 하는데 애초에 지금 진행하고 있는 프로젝트는 백 쪽 DB 1개입니다. 현재 프로젝트에서 카프카를 도입하는 것은 오버엔지니어링 같음은 물론 비용적인 면에서도 절대 도입할 이유가 없다고 생각하는데, 의견 부탁드리겠습니다.

개발자

#백엔드

#프론트엔드

#next

#rust

#kafka

답변 0

댓글 0

조회 143

9달 전 · 정성린 님의 질문

[사이드 프로젝트] 패션 이커머스 플랫폼 '푸츠(PUTS)' 앱 개발팀 모집

프로젝트 소개: ‘푸츠(PUTS)_Pick Up The Style!’서비스는 패션 디자이너 브랜드를 중심으로 BM특허까지 보유한 혁신적인 패션 커머스 플랫폼서비스 입니다. 데모버전까지 외주개발을 통해 개발이 완료되었지만 현시점에서 리뉴얼하여 새롭게 런칭버전을 개발하고자 역량있는 팀원을 모집합니다. <참고> 본 서비스의 시장성은 2024년 약 19조 5천억원(캐주얼) 정도의 시장성을 예상하고 있으며 연간 약 3.5%씩 지속적으로 성장 중에 있습니다. 3-5년이내 시장의 10%이상 점유를 목표하고 있으며 시장을 장악 가능한 비즈니스 모델과 마케팅 능력을 보유하고 있습니다. (참조: https://global.fashionseoul.com/2023-11-10/Korean-Fashion-Market-Size-Anticipated-Highest-Growth-Ever) 우리는 패션과 기술을 접목해 사용자와 소비자에게 최상의 쇼핑 경험과 정보 공유, 소득을 제공하는 서비스로 패션산업의 큰 파도를 함께 일으킬 분들을 모집합니다. 사이드 프로젝트 형태로 진행되며, 유연한 근무 환경에서 협업을 지향합니다. 3-5년이내 엑싯을 목표로 진행됨으로 임금지급 방식이 아닌 지분분배 방식으로 진행됩니다. 프로젝트 완료시 파트별 기여도에 따라 지분설정이 되며 관련 내용은 프로젝트 진행 전 협의를 통해 산정하여 계약진행 예정.(급여를 제공 받고자 하시는 분은 정중히 사양합니다.) 모집 직군: 1. 프론트엔드 개발자 (1~2명) o 주요 업무: 모바일 앱 UI/UX 구현, 웹 랜딩페이지, 사용자 인터페이스, 어드민 프론트엔드 개발 o 기술 스택: React Native 또는 Flutter, JavaScript/TypeScript, HTML/CSS o 우대 사항: 모바일 퍼포먼스 최적화 경험, 패션 커머스 개발 경험 2. 백엔드 개발자 (1~2명) o 주요 업무: 서버 및 데이터베이스 설계, API 개발, 어드민 백엔드 개발 o 기술 스택: Node.js, Django, AWS, PostgreSQL, RESTful API o 우대 사항: 대용량 트래픽 처리 경험, 보안 및 결제 시스템 개발, 이커머스 어드민개발 경험, 포인트관리 및 쿠폰설정 관리 등 3. UI/UX 디자이너 (1명) / 대표자와 함께 진행 또는 대표자가 진행 o 주요 업무: 모바일 앱 디자인, 사용자 경험 설계 o 필수 스킬: Figma 또는 Photoshop, Illustrator o 우대 사항: 패션 브랜드 디자인 경험, 사용성 테스트 및 피드백 반영 경험 근무 형태: • 프로젝트 기반 협업 (파트타임 가능) • 원격 근무 가능 (주 1회 온라인 미팅) • 유연한 일정과 주도적인 업무 환경 우대 사항: • 사이드 프로젝트 경험 • 패션, 커머스에 대한 관심과 열정 • 스타트업 문화에 익숙한 분 • 책임감 강하신 분 지원 방법: • 이력서와 포트폴리오를 [dcode00@naver.com]로 제출 • 지원 시 사이드 프로젝트 경험 및 참여 가능 시간을 명시해 주세요. 문의: • 이메일: [dcode00@naver.com] • 카카오톡/오픈채팅방: [https://open.kakao.com/o/gi5ixgVe] • 회사주소: 경기도 안산시 상록구 한양대학로55 제2과학기술관 지하2층 B210호 (한양대학교 에리카캠퍼스 소재) 지원 마감일: [채용 완료시까지] 로켓펀치 참여링크 https://www.rocketpunch.com/jobs/139647 문의: • 이메일: [dcode00@naver.com] • 카카오톡/오픈채팅방: [https://open.kakao.com/o/gi5ixgVe]

개발자

#사이드플젝

#사이드프로젝트

#팀빌딩

답변 0

댓글 0

추천해요 1

보충이 필요해요 1

조회 183

9달 전 · 이상래 님의 새로운 답변

프론트엔드 공부중인 취준생이 백엔드 공부해도 될까요?

프론트엔드 공부중입니다. 사용하는 스택은 react, next, typescript 정도구요. 현재 진행되는 개인 프로젝트는 supabase 라는 서버리스 서비스를 이용해서 백엔드를 대체하고 있습니다. 근데 문득 드는 생각이 제가 나이도 좀 있고, 공백기도 제법 길어서 단순히 crud 되고, 몇 개의 추가적 기능(ex. 크롤링을 통한 데이터 수집, 웹소캣 활용한 채팅기능)을 추가해도 뭔가 경쟁력이 없는 지원자로 보일 거 같더라고요. 그래서 프론트가 백의 흐름을 어느정도 알 필요성이 있기도 하고, 그런 이유를 내포해서 백 공부를 한 번 해볼까 생각해보았습니다. 다만 심도깊은 프로젝트는 프론트 쪽 구현만으로도 벅찰 거 같아서 단순한 프로젝트를 풀스택개발로 진행해볼까 생각하고 있는데요. 괜찮은 생각일까요? 취준기간에 괜히 다방면으로 건들여서 괜히 귀중한 시간을 낭비하는 건 아닐지...이런 부분때문에 고민이 됩니다.. 또 만약 공부를 한다면 개인적으로는 noSQL 보다 SQL 쪽으로 공부해나가는게 맞다고 생각하는데 그러면 언어를 또 새로 배워야하는지요 ? (보통 대중적인 java 를 많이 쓰더라고요)

개발자

#프론트엔드

#백엔드

답변 2

댓글 0

조회 149

10달 전 · 박애리 님의 질문 업데이트

사용자 대면 인터뷰 같이 할 UX리서처 구합니다! (정성 리서치)

안녕하세요, 저는 현재 직장인 UXUI디자이너입니다. 대상자 : 여의도 직장인 장소 : 여의도 WeWork (대면 인터뷰 장소) 다른 구체적인 장소에 대한 의견 및 사용자 질문 등에 대해서 같이 할 UX리서처와 하고 싶습니다. (UX 공부하는 분도 환영) 현재 저는 패션 서비스를 만들 예정입니다. 자세한 서비스에 대한 내용은 ZOOM을 통해서 설명 드리겠습니다. UT와 대면 인터뷰 하면서 사용자의 pain point 을 찾는 것이 목표입니다. 관심 있으신 분들 하단으로 들어오세요 ! 카카오톡 오픈채팅을 시작해 보세요. 링크를 선택하면 카카오톡이 실행됩니다. UX정성리서치 https://open.kakao.com/o/g2vgIEIg

PM/PO/기획자

#사용자인터뷰

#ux디자이너

#정성

#리서치

답변 0

댓글 0

조회 91

10달 전 · 개발자H 님의 새로운 답변

성과를 수치로 작성하는게 어려워요

안녕하세요, 현재 퍼블리셔로 일하고 있습니다. 업무를 진행하며 이직 이력서를 작성 중인데, 성과를 수치로 나타내는 것이 어렵습니다. 대부분 과업 특성이 어떤 레이아웃 혹은 기능을 구현하는 수준에서 결과물이 도출했다 라는 것인데요 "성과를 수치로 작성하는 것이 참으로 어렵습니다." 예를 들어 x%에서 xy%로 시간 단축/혹은 고객확보 이런식으로요 제가 구현한 UI가 사용자/고객에게 어떤 불편함이 있었고 혹은 이전 대비 어떤 차이점이 있는지 확인하기가 어렵습니다. 저와 같은 고민에 있었거나/ 있는 분들은 어떻게 이런 이슈를 해결하셨나요? 저와 같은 경우, 관심있는 라이브러리/언어로 개인 포트폴리오로 어필을 해야할까요, 현재 회사에서 다음의 작업을 진행했고/하고 있습니다, : 회사 홈페이지, 웹&모바일 리뉴얼 및 JS인터렉션 기능 추가 : GSAP으로 서비스 가이드 애니메이션 구현 => GSAP을 회사에서 정해준게 아니라, 필요한 기능이 GSAP으로 할 수 있는거 같아, 진행함 : 리액트로, 채팅앱 UI 프론트 담당 - 비동기 통신, 상태관리를 제외한 채팅앱 UI 기능 구현(프론트 담당) > 비동기 통신, 상태관리 데이터 구조는 백엔드 개발자가 정리한 목업 데이터를 가져다 사용하다 보니 - 컴포넌트 기능 개발(ex) 아코디언, 체크박스 등등 ) 성과-> 수치에 대한 방법에 대해 의견있는 분 있을까요? P.S 1. 혹시 저와 같이 퍼블리셔인데 리액트 업무를 하시는 분들은 어떻게 진행한 리액트 작업/업무는 어떻게 어필을 하면 좋을까요? 2. 현재 리액트 코드는 (회사에서) 작업 중 인데, 리펙토링하게 된 계기와 이유 혹은 코드 정리하는 것으로 성과(수치)를 설명해야 할까요? 감사합니다

개발자

#이직

#퍼블리셔

답변 1

댓글 0

조회 186

10달 전 · aigoia 님의 답변 업데이트

개발자지망 취준생 고민입니다.

안녕하세요. 간단하게 자기소개를 먼저 하자면 29살 고졸이구요 이전에는 노트북as 엔지니어로 6년간 근무했습니다. 개발자가 되고 싶어서 6개월간의 스프링부트 리액트 위주 풀스택 국비 과정을 수료했습니다. 프로젝트에서는 팀장도 맡아서 팀프로젝트 80퍼센트는 제가 다 했습니다. 채팅과 알림이 구현된 매칭플랫폼을 만들었습니다. 학원 강사님이 학원에서 배운 수준으로는 채팅 알림까지 구현하기 어렵다고 해서 이 정도는 해야 취업시장에서 좋게 봐줄것 같아서 노력끝에 만들었습니다. 그런데도 취준기간만 지금 8개월 째인데 서류탈락만 대략 800번은 했네요. 프론트앤드, 백앤드, si 등 신입 고졸 조건이라면 가리지 않고 지원하고 있습니다. 과제전형 5차례 탈락, 코딩테스트 2번 탈락, 코테 합격후 면접은 6번정도 떨어졌네요. 요즘 개발자 취업이 어렵다고는 이미 알고 있었습니다. 학원에서 팀프로젝트 할때만 해도 아 30명중에 그래도 나는 손가락 안에 드는 정도 구나 나는 취업하겠다 싶었습니다. 이렇게 까지 취업을 못 할 줄은 몰랐네요 취업을 위해서 개인 프로젝트를 하나 더 준비하려고 하는데 어떤 방향으로 하는게 좋을까요? 1. 아이디어 - 프로젝트의 창의적인 면 2. 완성도 - 프로젝트가 기존의 기성 플랫폼과 비교해 봤을때 완성도가 떨어지지 않는지 일단 이 두가지중 인데 어느쪽에 무게를 실어야 할 지 모르겠습니다. 보통 포트폴리오를 검토할 때 어느부분에 점수를 더 주시나요? 당연히 어느정도 창의적인 면도 있어야 하고 완성도도 있어야 함은 알고 있습니다. 이외 더 고려해볼 만한 부분이 있다면 조언주시면 감사하겠습니다. 정처기와 sqld도 준비해볼려고 합니다. 정처기 + sqld, 팀프로젝트, 개인프로젝트 이정도라면 고졸 비전공자도 충분히 취업이 가능하긴 할까요?

개발자

#취업

#취준#이직#이력서#포트폴리오#프론트#백엔드

답변 3

댓글 0

조회 373

10달 전 · 구운감자 님의 새로운 답변

채팅앱구현 프로젝트, 직접구현 or SDK 활용

안녕하세요 토이프로젝트로 앱하나를 출시하려고 하는데, 채팅 기능이 필요합니다 이를 위해 웹소켓을 활용하여 직접 구현 할 수도 있지만, 유명 채팅서비스 SDK나 라이브러리를 활용하면 더 쉽게 구현이 가능할 것 같습니다 단순 채팅 뿐만아니라 여러 기능을 구현해야한다면 SDK를 활용하는게 좋아보이는데, 포트폴리오용으로 만드는 앱이라서 직접구현하는게 더 의미가 있을 것 같기도 합니다. 효율 경험 사이에서 어떤 것을 택하는 것이 좋을까요?

개발자

#react

#react-native

#frontend

답변 1

댓글 0

조회 48

일 년 전 · 프레드윰 님의 새로운 댓글

next socket.io 연결, 제가 어떤 부분을 놓치고 있을까요?

https://github.com/hyubbb/socket-test-app 안녕하세요. 간단하게 채팅방을 만들어서 유저의 입장/퇴장, 채팅 기능을 구현해볼려고 하는데요. 통신이 됬다 안됬다 하더라구요? 그래서 계속 새로고침을 누르거나 해야하는 현상이 있습니다. 서버와의 연결은 계속 되어있다고 하는데 , socket.on 이나 socket.emit 이 동작을 안하는데 정말 이해가 안됩니다. 콘솔을 찍어봤을땐, next가 캐싱처리를 해서 실시간으로 응답하는게 문제가 발생한게 아닐까 생각했는데, 정확하게 갈피를 잡지 못하겠습니다. 3일을 헤매고 있는데요. 제가 어떤 부분을 놓치고 있는지 알려주시면 너무 감사하겠습니다. 코드가 길어서 github에 업로드 하였습니다. 클릭 라우트 처리 components/chat/chat-list socket.emit 발생장소 components/chat/chat-room 소켓 프로바이더 components/providers/socket-provider socket서버사이드 설정 pages/api/socket/io.ts

개발자

#socket.io

#next.js

답변 1

댓글 2

조회 47

일 년 전 · 익명 님의 질문

채팅 웹소켓 구현 질문합니다!

안녕하세요! 프로젝트 진행중에 궁금한게 있어서 질문남깁니다. 답변주시면 너무 감사하겠습니다!! 저는 채팅을 react+node로ㅓ 채팅을 구현중인데. 웹소켓 여는시점을 1. 채팅방 목록이 보일때 vs 2. 채팅방 목록에서 채팅방 클릭해 채팅방에 입장 언제 열어야할까요 2번에서 열려고 생각했는데 그렇게 하면 채팅 내용이 업데이트 될때 채팅방 목록에서 업데이트가 안돼서.. 어떻게 해야할지 조언좀 부탁드립니다!

개발자

#react

#websocket

#node

답변 0

댓글 0

조회 79

일 년 전 · 익명 님의 질문

채팅 디비 설계 질문이요!

안녕하세요:) 저는 ! 웹소켓과 관계형디비+프리즈마 를 이용해서 백엔드를 구성하고, 리액트로 만든 프론트 와 양방향 채팅 서비스를 만들려고 합니다! 채팅방 DB스키마를 작성하는데 어려움을 겪어 질문을 남깁니다. 현재 프리즈마에서 model ChatRoom { id Int @id @default(autoincrement()) name String creatorId Int users ChatRoomUser[] messages Message[] createdAt DateTime @default(now()) updatedAt DateTime @updatedAt } model ChatRoomUser { id Int @id @default(autoincrement()) userId Int // 외부 API에서 가져올 사용자 ID chatRoomId Int chatRoom ChatRoom @relation(fields: [chatRoomId], references: [id]) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @@unique([userId, chatRoomId]) } model Message { id Int @id @default(autoincrement()) chatRoomId Int senderId Int // 외부 API에서 가져올 사용자 ID receiverId Int? // 선택적 필드, 단체 채팅에서는 null content String timestamp DateTime @default(now()) chatRoom ChatRoom @relation(fields: [chatRoomId], references: [id]) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) } 이런식으로 구현하였는데 조언좀 부탁드립니다.ㅠㅠ

개발자

#db

#스키마

#node

#prisma

#설계

답변 0

댓글 0

보충이 필요해요 1

조회 81

일 년 전 · 익명 님의 새로운 댓글

장기 취준생🥲 뭘 만들어야 할 지 모르겠습니다.

안녕하세요! 프론트엔드 취업 준비중인 취준생입니다. 실력 향상을 목적으로 절대적인 코딩 시간을 늘려 경험치를 쌓고 역량을 키우고 싶은데 어떤 것을 만들어야 할 지 모르겠습니다. 결제, 채팅 등 실제 서비스에서 사용하는 기능들을 하나씩 구현하며 공부할까 했는데 이것들은 서버나 데이터가 필요한 경우가 많아서 아예 프로젝트로 구현하는 것이 나은가 싶고.. 기존 소스 리팩토링이나 기능 확장을 해야하나 생각도 듭니다. 어떠한 의견도 소중히 받겠습니다! 많은 조언 부탁드립니다. 감사합니다.🙏

개발자

#취업

#프로젝트

#연습

답변 1

댓글 1

조회 249

일 년 전 · aigoia 님의 답변 업데이트

상황에 의한 퇴사를 고민중입니다.

안녕하세요, 한 중소기업에서 일하고있는 2년차 웹 개발자입니다. 다름아니라 최근 일련의 한 사건으로 인해 퇴사를 고민중입니다. 저희팀은 팀장 1명에 팀원 3명으로 구성된 팀입니다. 최근 팀장의 기분이 매우 언짢은 주간에 단체로 1:1 면담을 진행하였습니다. 대부분의 내용은 현재 상황에 대한 모두까기식 질책이었습니다. 하지만 그 과정에서 팀 내 특정 인원을 본인이 편애한다고 대놓고 저에게 밝혔습니다.
 그 편애하는 대상은 제 동기였습니다. 이전까지는 업무나 회사생활 가운데 편애하는 것 같은 심증만 있었을뿐인데 저에게는 어떻게 보면 팀장을 통해 심증이 물증으로 입증된 시간이었습니다. 면담 이후 부터는 별로 중요하지 않은 곁가지 도는 업무 또는 단순 유지보수 업무만 부여되고 일부 개선 업무를 진행하여도 해당 내용을 확인 후 적용하지도 않고 흐지부지 넘어가는 형국이 여러번 이어졌습니다. 그러나 편애한다는 그 동기에게는 다른 모듈과 협의가 잦고 연계해야하는 것이나 프로젝트에서 비중이 꽤 있는 업무, 팀장과 협업하거나 팀 내에서도 비중이 꽤 있는 업무들이 배정되었습니다. 제가 현재까지 한 업무들을 보면 지연이나 크리티컬한 운영 이슈가 발생한 적도 없는데 이런 상황이 지속되면서 동기에 비해 업계에서 소위 말하는 물경력이 되어가는 것은 당연하고 업무관련 채팅을 보내면 답은 늦고 관심이 매우 낮은편인 상황에서 저는 그 면담시간에 들었던 말에 갇혀 하루하루 멘탈이 나가고있는 상황이라 이런 상황이라면 퇴사를 하는 것이 맞을까요? 현실적으로 주변에서는 시기를 버텨내야한다고 얘기하는데 제가 무엇을 시도하려고 한들 지금 팀장 아래에서는 버텨내는 것이 무언가 시간낭비라고 느껴지는데 현실적인 조언 부탁드립니다.

개발자

#이직

#직장생활

#퇴사

#번아웃

#회사생활

답변 2

댓글 0

조회 206

일 년 전 · 요한 님의 질문

Flutter firebase stream 채팅 데이터다 불러와서 팅기는 문제

Flutter에 firebase stream으로 실시간 채팅 앱을 만들었는데 데이터가 많아지면서 앱이 팅기는 문제가 생기고 있습니다 limite 말고 다른 방법이 있을까요? Future는 data page가 있는데 stream은 없는거 같아서 다른 분들은 어떻게 하나요? 아니면 로컬에 저장하고 사용하나요?

개발자

#flutter

#firebase

#firebase-stream

#

#채팅

#streambuilder

답변 0

댓글 0

조회 43

일 년 전 · 익명 님의 새로운 답변

최근 커리어리에 채팅요청이 늘어나고 있어요.

특별한 목적이 없어보이거나 어색한 문장 + 한국인이 아니신 분들께서 채팅 대화 요청이 늘어나고 있어요. 커리어리가 글로벌 시장까지 진출중인걸까요? 당연히 스팸일거 같아 채팅 요청에 대해 대화를 길게 해보지 않았는데 어떤 분이 어떤 방식으로 대화가 이뤄지는지 궁금해집니다. 경험담 공유해주세요. ^^;

개발자

#채팅기능

#커리어리

답변 5

댓글 0

추천해요 1

조회 675

일 년 전 · 권혁진 님의 답변 업데이트

리액트에서의 오픈그래프 적용?

안녕하세요. 현재 리액트를 활용해서 대학축제에서 사용할 채팅앱을 개발하고 있습니다. 저희 앱에서는 학교 축제 정보(몇시에 어떤 행사가 있는지)와 학우 간 채팅 기능을 제공하는데요. 카카오톡 채팅방에 링크를 보내면 카드형태로 보여주는 링크 미리보기 기능을 저희 앱에도 구현하고자 합니다. 더욱 구체적으로 말씀드리자면, 서버로부터 받아온 대학 축제정보 게시물이 여러개가 있는데, 이 모든 게시물들에 오픈그래프를 적용하고 싶습니다. 그래서 채팅방에서 공유할 때 링크 미리보기가 출력되게 하고 싶습니다. 문제는 리액트 특성 상 클라이언트에서 렌더링하기 때문에 적용이 어렵다는 것입니다. 1. axios.get('festival/1')을 호출하여 스프링 서버에서 축제 정보를 JSON으로 받아온다. 2. 리액트에서 받아온 JSON을 바탕으로 렌더링한다. 이런 상황에서 오픈그래프를 적용할 수 있는 방법이 있을까요?

개발자

#react

답변 2

댓글 0

조회 136

일 년 전 · 김하늘 님의 답변 업데이트

프로젝트 메인스택 선정 기준(react vs next.js)

안녕하세요. 입사 7개월차인 주니어 프론트엔드 개발자입니다. 사수가 없는 작은 스타트업에서 일하고 있는데, 이번에 새로운 프로젝트가 들어가면서 메인스택을 어떻게 해야하는지 고민이 됩니다. 1. 채팅 기능이 메인 2. 장기적으로 추가 기능 계속 들어갈 계획 nextjs가 csr ssr 모두 확장성이 있다는 생각이 들어서 reactjs 혹은 nextjs로 스택을 분리해서 기술스택을 선정한다는게 의미가 없어보이는데, 그러면 매번 프로젝트 할 때마다 nextjs면 만사해결! 이라는 느낌이 들어서요. 다른 분들은 메인스택을 어떻게 선정하시나요?

개발자

#react

#next.js

답변 1

댓글 0

조회 223

일 년 전 · 아림 님의 질문 업데이트

Python Keras 딥러닝

1. 제가 법을 딥러닝 시켜봤는데 출력물이 이상했거든요? 그래서 이 순서가 맞나요? - 자료 전처리 - 자료 tokenizing - 딥러닝 2. 딥러닝 시킬때 일반 채팅 ai는 Q&A 형식으로 딥러닝 하던데 이 법 조항은 Q&A 형식 말고 tokenizing 된 자료만 딥러닝 해야하나요? 딥러닝이 다 된 상태라고 가정했을때 Q. 헌법 몇조 몇항은? A. ~~~에요. Q. ??에 따르면 ??는 몇년 이하의 징역에 처해? A. ~~~년 이하의 징역에 처해요 이런식으로 출력되었으면 좋겠어요 제가 시도했던 방법은 후자이고 전자로 하려면 제가 임의로 Q&A 를 제작해야하나요?

개발자

#python

#keras

답변 0

댓글 0

조회 51

일 년 전 · 천용기 님의 질문

모바일 웹 키보드 발생시 화면 상승 대응 불가능 한가요?

챗봇이에요 헤더 컨텐츠(대화내용 스크롤) 풋터(채팅 입력창) 으로 구성되어 있구요 채팅 입력창 선택 시 키보드가 생기면서 풋터인 채팅 입력창을 포함해서 컨텐츠영역 (대화내용 스크롤영역)까지 키보드 위로 올라가길 기대하는데 아이폰은 되다가 안되다가 하고 안드로이드는 키보드 뒤로 가려지면서 화면이 위로 이동하지 않더라구요 웹 퍼블리싱 기술상 대응이 불가능한 영역일까요 ?

개발자

#html

#css

#javascript

#web

#mobile

답변 0

댓글 0

조회 248

일 년 전 · 백승훈 님의 답변 업데이트

Spring WebSocket 통신 중 HttpOnly 쿠키에 저장된 JWT 토큰 접근 문제

안녕하세요, Spring과 React를 활용하여 실시간 채팅 기능을 구현 중인 학생입니다. 현재 저희 시스템은 사용자가 로그인을 성공하면, JWT 토큰을 생성하여 이를 HttpOnly 쿠키에 저장하고 있습니다. 이후 해당 토큰을 이용해서 사용자의 인증 및 인가를 처리합니다. 그리고 웹소켓을 화룡해 채팅 기능을 구현하고 있는데, 사용자가 채팅 메시지를 웹소켓을 통해 서버로 전송할 때마다, 해당 사용자의 JWT 토큰을 검사하여 유효한 사용자인지 확인하려고 합니다. 그러나 현재 쿠키가 HttpOnly로 설정되어 있어서, React에서 쿠키에 접근할 수 없습니다. 따라서 웹소켓 메시지를 보낼 때마다 JWT 토큰을 메시지에 포함시키지 못하고 있습니다. 구글링해서 찾아보니 다른 개발자들의 경우 클라이언트에서 헤더에 토큰을 포함하여 서버로 전송하고, 서버에서는 StompHeaderAccessor의 getFirstNativeHeader 메서드를 사용하여 토큰을 받아 사용자 검증을 하는 방식을 주로 사용하는 것 같습니다. 그러나 저희 시스템에서는 이 방식을 사용할 수 없어, 다른 해결 방안을 찾고 있습니다. 현재 제가 생각한 방식은 웹소켓 연결 시 웹소켓 세션에 해당 사용자의 토큰값을 저장하여 채팅 메시지가 서버로 전송될 때마다, 웹소켓 세션에 저장된 토큰값을 검증하는 방식입니다. 만약, 이 방식을 사용한다면 사용자 토큰값의 유효 기간이 끝나면 리프래시 토큰을 사용한 사용자 토큰 재발급 방식은 사용자 웹 브라우저 쿠키에 접근하지 못하니 불가능한가요? HttpOnly 쿠키에 저장된 JWT 토큰을 웹소켓 통신에서 어떻게 활용할 수 있을지 조언해주시면 감사하겠습니다.

개발자

#spring

#websocket

#react

#jwt

답변 1

댓글 0

조회 501

일 년 전 · 익명 님의 질문 업데이트

고졸 국비출신이 취업할수있는방법

안녕하세요, 고졸이며 현재 국비학원에서 풀스택(이지만 실상은 백엔드에 가까운것같습니다.)수업을 듣고있는 개발자 지망생입니다. 현재 학원에선 Spring boot 진도를 시작하여 2주정도 뒤에 끝내고 3주간의 기간 동안 세번째 프로젝트를 마지막으로 수료하게 됩니다. 현재 학원 수료까지 한달정도가 남아있는 상태에서 원내에서 팀 프로젝트를 두개정도 진행했습니다. 팀별로 주제는 달랐지만 제가 속한 팀은 java에서 웹소켓을 이용해서 채팅프로그램을 만들었구요(사실 아직까지도 해당 개념은 잘 모르겠습니다.), 그리고 두번째 프로젝트에선 전자결재 기능을 포함한 간단한 인사관리 웹사이트를 java servlet과 jsp를 이용해서 만들었습니다. 교육과정이 부족하다고 느껴져서 저 개인적으로 Spring boot를 공부해서 두번째로 만들었던 프로젝트를 스프링 부트로 바꾸기도 해보고 학원에선 오라클DB를 사용했었는데 MariaDB도 혼자 사용해보며 익히고있습니다. 현재는 Spring Secyrity와 JWT를 이용해서 Role에 따라서 진입가능한 주소가 다른 간단한 게시판 하나 만들었습니다. 그리고 만들어진 사이트를 AWS에 올려보려고 혼자서 이것저것 찾아보고있습니다. 두번째 프로젝트를 마무리하며 만들어진 포트폴리오와 이력서를 들고 60-70개의 기업에 지원을 해봤지만 돌아오는건 열람했다는 메일과 불합격 통지뿐이네요. 여기서 제가 개인적으로 공부를 해나간다거나 혹은 기업에서 선호할만한 기술이 있을까요? 저는 지금 배우고 발전하는 과정이 너무 재밋어서 관련 직종으로 꼭 취업을 빠른시일내에하곤 싶은데 시장이 안좋단 얘기도 너무 많고 분명 대졸자들이 저보다 더 좋은 조건이기에 불안한것도 사실입니다. 그리고 그들에 비해 기초지식이 부족한것도 인지하고있고요. 사설이 너무 길었다면 죄송합니다. 다만 구체적으로 설명드려야 더 좋은 답변을 받을수 있다고 생각해서 길게 적었습니다. 다들 새해엔 복 많이 받으시고 행복한 일 많으시길 바랍니다.

개발자

#학원

#고졸

답변 1

댓글 2

추천해요 1

조회 407