분류 전체보기51 헌옷이 회고 - 사용자 인증 방식 본 프로젝트에서는 최소한의 사용자 정보만을 수집하여 서비스를 제공하고자 했습니다.이는 사용자의 개인 정보 보호를 중시하고, 실제로 결제나 본인 인증과 같은 민감한 기능이 없는 서비스의 특성을 반영한 결정입니다.하지만 중요한 정보를 수집하지 않더라도, 인증 기능은 반드시 필요합니다.그 이유는, 악의적인 봇(bot)을 이용한 무차별 회원가입, 스팸 유저 생성, 사이트 도배와 같은 어뷰징 행위를 막기 위함입니다. 그렇다면 이런 공격을 어떻게 예방할 수 있을까요?제가 생각한 간단한 방법은 다음 두 가지입니다캡차(CAPTCHA)를 이용한 봇 가입 방지이메일 인증을 통한 고유 식별 기반 가입 제한캡차를 이용한 인증방식캡차를 사용하면 이메일 없이도 간편하게 봇 가입을 막을 수 있어, 개인정보 수집 최소화라는 측면에서.. 2025. 3. 24. Next.JS - 외부 REST API 부하 문제에 부딪히다 - 2 해결 또 다른 문제가 발생!Next.JS는 서버 npm run dev 하면서 실행이 됩니다 그런데.. 실행되면서 자동으로 무언가를 실행하거나 요청을 하는 기능이 제공되지 않습니다 그렇다면 어떻게 하느냐?.. 흉내를 낼 수 있습니다 서버가 실행되고 이제 클라이언트가 누구든 최초 접속할때 서버에서 공공데이터 API 서버로 요청을 보낼 수 있도록 src 디렉토리에 server이라는 서버 모듈 폴더를 생성 cache.ts : 캐시의 인터페이스를 관리하도록init.ts : 자동시작 흉내를 내는 파일// src/server/init.tsimport { initializeCache } from "./initializeCache";import { collectionBinsCache } from "./cache";initia.. 2025. 3. 16. Next.JS - 외부 REST API 부하 문제에 부딪히다 Next.JS로 개발하던 중 공공데이터 API를 사용하여 받은 데이터를 컴포넌트로 출력하는데 테스트를 하면서 가끔 로딩이 길거나 불러오지 못했다는 에러를 반환하는 문제가 있었습니다 처음엔 코드가 잘못된 걸로 인지하고 디버깅하면서 역추적을 해보았는데 결론은 모두 정상인 상태..뭐가 문제지?.. 고민하다가 개발할 땐 저장할 때마다 렌더링을 다시 하는데 이 횟수가 텀이 짧을 때마다 발생한다는 규칙을 발견! 특정 지역의 데이터를 불러오는 API를 계속 불러오고 있었습니다.. 물론 전체 지역을 불러오는 게 아닌 관악구 한 곳의 데이터만 계속 불러오게 됐는데 이제 주기가 너무 짧으면 에러가 발생하거나 무한 로딩이 걸려버리는 문제가 있었고 Next.JS는 이런 문제에 대해서 빛을 발휘합니다 최초 서버가 구동될 때 .. 2025. 3. 16. Three.js 시작하기 웹 브라우저에서 3D 환경을 구현할 수 있는 기술에 대해 알아보고자 작성하게되었습니다웹 환경에서 3D 환경을 구현을 하려면 WebGL 이라는 기술을 사용해야합니다 WebGL은 JavaScript API 이면서 HTML5 의 캔버스 태그를 사용하여 출력할 수 있습니다 WebGL의 특징브라우저 기반 동작! (크로스 플랫폼 지원), 플러그인이 별도로 필요없음!GPU 가속지원 CPU 대신 GPU를 활용하여 빠르게 처리할 수 있습니다OpenGL 2.0 기반이라고 합니다 OpenGL은 그래픽을 사용하기 위한 API 이라고 하네요WebGL의 활용 분야게임 개발데이터 시각화VR/AR 서비스시뮬레이션 및 AI 시각화WebGL은 저수준 API입니다저수준 API란 프로세서와 직접적으로 상호작용하는 기능을 제공하는데 사용방법.. 2025. 3. 12. 무중단 서버이전하기 Window to Ubuntu -3 PHP 설치하기sudo apt updatesudo apt install php-fpm php-mysql php-cli php-curl php-mbstring php-xml php-zip -y PHP는 서버사이드 프로그래밍 언어로, 웹사이트 개발에 많이 사용됩니다. 과거에는 전 세계적으로 널리 쓰였지만, 우리나라에서는 Java가 압도적으로 많이 사용되는 편입니다. 그러나 규모가 작은 서비스를 만들 때는 PHP가 유용할 수 있습니다. (물론, 이는 개발 방식에 따라 다릅니다.) PHP는 HTML과 쉽게 통합할 수 있으며, 객체지향을 지원합니다. 또한, 입문 접근성이 쉽고 배우기 간단한 언어입니다. 유명한 프레임워크로는 Laravel, CodeIgniter 등이 있으며, 이를 활용하면 빠른 웹사이트 구축이 가.. 2025. 3. 11. 무중단 서버이전하기 Window to Ubuntu -2 우분투 시작하기설치는 간단하기 때문에 생략하였습니다※ 우분투에서는 과거 유료로 서비스됐던 우분투 Pro 버전을 개인에 한하여 5개까지 무료로 제공하고있습니다개인 용도로 사용하시는 분들은 꼭 이용해 보세요 시작하기 전 기본적인 명령어를 알아보도록 하겠습니다 파일 및 디렉토리 관리ls: 현재 디렉토리 파일 목록 보기ls -l: 상세 정보를 포함하여 파일 목록 보기ls -a: 숨김 파일 포함하여 보기cd 디렉토리명: 특정 디렉토리로 이동pwd: 현재 경로 보기mkdir 이름: 디렉토리생성rm -r 디렉토리명: 디렉토리삭제rm 파일명: 파일삭제cp 파일명: 파일복사mv 파일명: 파일이동 또는 이름변경 사용자 및 권한 관리sudo 명령어: 관리자(root) 권한으로 명령을 실행adduser 이름: 새 사용자 추가.. 2025. 3. 4. 이전 1 2 3 4 5 6 ··· 9 다음