1.Vendor Lock-in(벤더 락인)사용자가 특정 공급업체나 기술에 종속되어, 다른 공급업체나 기술로 쉽게 전환하기 어려운 상태(클라우드 서비스, 소프트웨어, 하드웨어) 2.Vendor Lock-in(벤더 락인)에 대해 고려해야할점특정 기술 스택이나 클라우드 서비스를 선택할 때, 기술의 유연성을 고려해야한다.특정 클라우드 제공업체의 서비스를 깊게 사용하게 되면, 해당 벤더에 대한 의존도가 커지기 때문에 다른 서비스로의 이전이 어려워질수있다. 표준화된 API와 기술을 사용하는 것이 벤더 락인을 예방하기에 유리하다.(RESTful API)
Computer Science
1.플러그인(Plugin)기존 프로그램의 기능을 확장하거나 새로운 기능을 추가할 수 있도록 만들어진 독립적인 모듈을 의미한다.원래 소프트웨어의 핵심 코드 변경 없이 기능을 확장이 가능한 특징을 가지고있다. 예전에 했던 마인크래프트의 플러그인을 생각해보자플러그인은 새로운 기능들을 추가해줬지만 기본적으로 게임의 틀을 벗어나지않았었다.즉, 소프트웨어의 핵심 기능을 건드리지 않고 확장을 할수 있도록 설계된다는거다. 2.모드모드는 기존 소프트웨어의 동작 방식을 변경하는 설정 또는 상태다.소프트웨어나 게임, 애플리케이션에서 기본적인 동작 방식을 변경하는 설정이나 기능 이라고 할수있다.(개발 모드, 배포모드) 마인크래프트의 모드는 애플리케이션의 내부 구조를 변경하거나 확장하는 코드 수정을한다.애플..
1.BaaS(Backend as a Service)백엔드 개발 없이도 서버 기능을 제공하는 클라우드 서비스사용자는 프론트엔드 개발에 집중하고 BaaS가 인증, 데이터베이스, 서버리스 함수, 스토리지 등 백엔드 기능을 자동으로 제공해준다.서버 구축 없이 백엔드 기능을 사용 가능 2.BaaS 서비스 종류2-1.FirebaseGoogle이 제공하는 클라우드 기반 BaaS 서비스로 NoSQL 기반인 Firestore 데이터베이스를 사용한다.인증, 스토리지, 푸시 알림, 서버리스 함수 등 다양한 기능 제공한다. 2-2.SupabasePostgreSQL 기반의 관계형 데이터베이스 사용하고Docker 및 클라우드 배포 지원하여 자체 호스팅이 가능 SQL을 활용한 백엔드 개발이 필요한 경우 사용한다.
1.엣지 컴퓨팅(Edge Computing)데이터를 클라우드나 중앙 서버가 아닌, 데이터가 생성되는 엣지(Edge)에서 직접 처리하는 컴퓨팅 방식사용자 또는 기기와 가까운 곳에서 데이터를 분석하고 처리하여 속도를 높이고 네트워크 부하를 줄이는 기술이다.초저지연(Low Latency): 데이터 이동 없이 로컬에서 즉시 처리 네트워크 부하 감소: 대용량 데이터를 클라우드로 보내지 않음 보안 강화: 중요한 데이터가 외부로 노출되지 않음 실시간 반응: 자동차, 헬스케어, 산업 자동화 등에서 즉각적 대응 가능 2. 클라우드 컴퓨팅 vs 엣지 컴퓨팅 데이터 처리 위치사용자 근처 (로컬 디바이스, 엣지 서버)원격 데이터센터 응답 속도빠름 (실시간 처리)상대적으로 느림네트워크 부하적음많음 (데이터 전송 필요)보안..
1.CDN(Content Delivery Network)전 세계에 분산된 서버 네트워크를 이용해 콘텐츠를 빠르고 효율적으로 제공하는 기술웹사이트의 데이터(이미지, CSS, JavaScript, 동영상 등)를 원본 서버에서만 제공하면, 사용자가 원본 서버에서 멀리 있을 경우 속도가 느려지고 서버 부하가 증가하기 때문에 사용자와 가까운 서버에서 콘텐츠를 제공하여 빠른 응답 속도를 보장한다.Cloudflare – 보안 및 속도 최적화 기능 제공AWS CloudFront – Amazon Web Services 연동 최적화Akamai – 기업용 고성능 CDNFastly – 초고속 엣지 컴퓨팅 지원 2.엣지 서버(Edge Server)CDN 제공업체가 전 세계 여러 지역에 배포한 캐시 서버로 사용자의 요청을..
1.DevOps개발(Development),운영(Operations)을 합친 용어소프트웨어 개발과 IT 운영의 협업과 커뮤니케이션을 통해 소프트웨어 개발 프로세스를 자동화하고 최적화하는 방법론이다. 2.요소2-1.지속적인 통합 (CI, Continuous Integration)개발자가 변경한 코드가 정기적으로 중앙 저장소에 병합되도록 자동화하는 과정Jenkins: 오픈소스 CI/CD 도구GitHub Actions: GitHub과 통합된 CI/CD 워크플로우 자동화GitLab CI/CD: GitLab에서 제공하는 빌드 및 배포 자동화 도구CircleCI: 클라우드 기반의 빠르고 유연한 CI 도구 2-2.지속적인 배포 (CD, Continuous Delivery/Continuous Deployment..
1.서드파티(Third Party)제공자 외의 제3자를 의미하며 자신이 직접 개발하지 않은 외부의 라이브러리, API, 툴, 서비스 등이 서드파티에 해당한다.기능을 빠르게 확장하고 개발 시간을 단축시킬수있다.React,Express.js 같은 라이브러리 프레임워크도 서드파티라고 보수있다.
1.네이티브 앱 (Native App)특정 플랫폼(iOS, Android)에서 실행되도록 개발된 애플리케이션이며 모바일 운영 체제(OS)에 최적화되어있다.앱스토어를 통해 배포되며 디바이스의 네이티브 기능(GPS, 카메라, 푸시 알림, 블루투스 등)을 활용 가능하다.기기에 다운로드 한상태로 사용하므로 로컬 데이터베이스를 통해 네트워크 없이 동작할수있다. 우리가 흔히 앱이라고 표현하는 안드로이드, IOS의 모바일 앱이 네이티브 앱인 것이다. 주로 Swift, Kotlin 를 통해 네이티브 앱을 개발한다. 2.PWA(Progressive Web App)웹 기술(HTML, CSS, JavaScript)을 사용하여 네이티브 앱과 유사한 사용자 경험을 제공하는 웹 애플리케이션즉 웹인데 앱과같은..