Skip to content

Latest commit

 

History

76 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Navy Bucket Storage

logo

Navy Bucket Storage

개인 프로젝트
개발기간: 2024.11 ~ 진행중

개발 인원

장태희
@TaeHee00
한국공학대학교 소프트웨어학과 1학년

프로젝트 소개

NavyBucketStorage는 Amazon S3와 유사한 클라우드 스토리지 시스템을 구현한 오픈소스 프로젝트입니다. 이 프로젝트는 대용량 데이터 저장, 검색, 관리를 위한 안정적이고 확장 가능한 솔루션을 제공합니다.


Stacks 🐈

Environment

IntelliJ IDEA Postman GitKraken Git Github

Development

Java Spring Boot MySQL

Communication

Notion


주요 기능 📦

⭐️ 버킷 관리 및 객체 스토리지

  • 데이터를 저장할 버킷 생성, 삭제 및 관리 기능
  • 다양한 크기와 유형의 파일을 객체로 저장하고 검색 가능
  • 대용량 파일을 위한 멀티파트 업로드 지원

⭐️ 강력한 보안 기능

  • 서버 측 암호화로 저장된 데이터 자동 보호
  • 세밀한 접근 제어를 위한 ACL(Access Control List) 설정
  • HTTPS 지원으로 안전한 데이터 전송 보장

⭐️ 고급 데이터 관리 기능

  • 객체 수명 주기 관리로 자동 삭제 또는 저장 클래스 변경
  • 효율적인 관리를 위한 객체 태깅 시스템
  • 데이터 가용성 향상을 위한 크로스 리전 복제 지원

⭐️ 성능 최적화 및 모니터링

  • CDN 통합 및 캐싱 메커니즘으로 빠른 콘텐츠 전달
  • 상세한 액세스 로그 및 성능 메트릭 제공
  • 중요 이벤트에 대한 알림 설정 기능

⭐️ 개발자 친화적 API 및 SDK

  • RESTful API를 통한 모든 기능 접근 가능
  • 다양한 프로그래밍 언어를 위한 SDK 제공
  • 편리한 작업을 위한 CLI(Command Line Interface) 도구 지원

아키텍쳐

디렉토리 구조

├── README.md
├── package-lock.json
├── package.json
├── strapi-backend : 
│   ├── README.md
│   ├── api : db model, api 관련 정보 폴더
│   │   ├── about
│   │   ├── course
│   │   └── lecture
│   ├── config : 서버, 데이터베이스 관련 정보 폴더
│   │   ├── database.js
│   │   ├── env : 배포 환경(NODE_ENV = production) 일 때 설정 정보 폴더
│   │   ├── functions : 프로젝트에서 실행되는 함수 관련 정보 폴더
│   │   └── server.js
│   ├── extensions
│   │   └── users-permissions : 권한 정보
│   ├── favicon.ico
│   ├── package-lock.json
│   ├── package.json
│   └── public
│       ├── robots.txt
│       └── uploads : 강의 별 사진
└── voluntain-app : 프론트엔드
    ├── README.md
    ├── components
    │   ├── CourseCard.js
    │   ├── Footer.js
    │   ├── LectureCards.js
    │   ├── MainBanner.js : 메인 페이지에 있는 남색 배너 컴포넌트, 커뮤니티 이름과 슬로건을 포함.
    │   ├── MainCard.js
    │   ├── MainCookieCard.js
    │   ├── NavigationBar.js : 네비게이션 바 컴포넌트, _app.js에서 공통으로 전체 페이지에 포함됨.
    │   ├── RecentLecture.js
    │   └── useWindowSize.js
    ├── config
    │   └── next.config.js
    ├── lib
    │   ├── context.js
    │   └── ga
    ├── next.config.js
    ├── package-lock.json
    ├── package.json
    ├── pages
    │   ├── _app.js
    │   ├── _document.js
    │   ├── about.js
    │   ├── course
    │   ├── index.js
    │   ├── lecture
    │   ├── newcourse
    │   ├── question.js
    │   └── setting.js
    ├── public
    │   ├── favicon.ico
    │   └── logo_about.png
    └── styles
        └── Home.module.css

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages