이 문서는 Google Cloud Translation API를 사용해 자동 번역되었습니다.
어떤 문서는 원문을 읽는게 나을 수도 있습니다.
MongoDB Realm: 최신 애플리케이션 구축을 위한 서버리스 플랫폼
MongoDB는 2009년 출시 이후 소프트웨어 산업에 혁명을 일으킨 인기 있는 NoSQL 데이터베이스입니다. 확장성, 유연성, 강력한 쿼리 언어 및 고성능으로 인해 엄청난 인기를 얻었습니다. 개발자들은 MongoDB를 사용하여 간단한 블로그 플랫폼에서 복잡한 전자 상거래 시스템에 이르기까지 광범위한 애플리케이션을 구축해 왔습니다. 그러나 MongoDB 클러스터를 관리하고 애플리케이션의 백엔드를 설정하는 작업은 시간이 많이 걸리고 복잡할 수 있습니다. 이것이 바로 MongoDB Realm이 필요한 이유입니다. MongoDB Realm은 최신 애플리케이션을 쉽게 구축할 수 있는 강력한 서버리스 플랫폼입니다. 이 기사에서는 MongoDB Realm에 대해 자세히 살펴보고 개발 프로세스를 단순화하는 방법을 살펴보겠습니다.
MongoDB 영역이란 무엇입니까?
MongoDB Realm은 최신 애플리케이션을 쉽게 구축할 수 있는 혁신적인 서버리스 플랫폼입니다. 백엔드 인프라의 필요성을 제거하고 애플리케이션 구축에 집중할 수 있도록 하여 개발 프로세스를 단순화하도록 설계되었습니다. MongoDB Realm은 MongoDB 위에 구축되며 데이터 동기화, 실시간 이벤트 처리, 사용자 인증과 같은 다양한 기능을 제공합니다.
MongoDB Realm의 주요 기능 중 하나는 서버리스 아키텍처입니다. 서버리스 컴퓨팅을 사용하면 서버 관리, 소프트웨어 설치 또는 확장 및 축소에 대해 걱정할 필요가 없습니다. MongoDB Realm은 이 모든 것을 처리하므로 코드 작성과 애플리케이션 구축에 집중할 수 있습니다.
MongoDB Realm의 또 다른 중요한 기능은 데이터 동기화 기능입니다. MongoDB Realm을 사용하면 장치와 클라우드 간에 데이터를 실시간으로 동기화할 수 있으므로 오프라인 및 온라인에서 작동하는 애플리케이션을 쉽게 구축할 수 있습니다. 이 기능은 네트워크 연결이 불안정할 수 있는 모바일 애플리케이션에 특히 유용합니다.
MongoDB 영역은 어떻게 작동합니까?
MongoDB Realm은 MongoDB 위에 구축되었습니다. 즉, MongoDB의 쿼리 언어(MongoDB 쿼리 언어 또는 MQL)를 사용하여 데이터와 상호 작용합니다. MongoDB Realm은 애플리케이션 구축을 위한 서버리스 플랫폼을 제공하므로 서버 관리나 인프라 확장에 대해 걱정할 필요가 없습니다. MongoDB Realm은 데이터와 상호 작용하고, 이벤트를 처리하고, 사용자를 인증하는 데 사용할 수 있는 일련의 API를 제공합니다.
MongoDB Realm의 핵심 구성 요소 중 하나는 데이터 액세스 계층입니다. MongoDB Realm은 MongoDB에 저장된 데이터와 상호 작용할 수 있는 강력한 데이터 액세스 계층을 제공합니다. 데이터 액세스 계층은 데이터에 대한 CRUD(만들기, 읽기, 업데이트, 삭제) 작업을 수행하는 데 사용할 수 있는 일련의 API를 제공하고 MQL을 사용하는 복잡한 쿼리도 지원합니다.
MongoDB Realm의 또 다른 중요한 구성 요소는 이벤트 처리 기능입니다. MongoDB Realm을 사용하면 데이터 변경, 사용자 인증 및 사용자 등록과 같은 실시간 이벤트를 처리할 수 있습니다. MongoDB Realm을 사용하여 이벤트에 대한 응답으로 서버리스 기능을 트리거하여 반응형 애플리케이션을 쉽게 구축할 수 있습니다.
MongoDB Realm은 사용자 인증 및 권한 부여 기능도 제공합니다. MongoDB Realm을 사용하면 이메일/비밀번호, Google, Facebook 및 Apple을 포함한 다양한 인증 공급자를 사용하여 사용자를 인증할 수 있습니다. MongoDB Realm은 또한 역할 기반 액세스 제어를 지원하므로 사용자 역할에 따라 애플리케이션 리소스에 대한 액세스를 제어할 수 있습니다.
MongoDB 영역을 사용하는 방법?
MongoDB Realm을 사용하는 것은 쉽습니다. MongoDB Realm 계정을 생성하고 몇 가지 간단한 단계에 따라 애플리케이션을 설정하기만 하면 됩니다. MongoDB Realm은 iOS, Android 및 웹 애플리케이션용 SDK를 포함하여 애플리케이션을 MongoDB Realm에 연결하는 데 사용할 수 있는 다양한 통합 옵션을 제공합니다.
MongoDB Realm을 시작하려면 다음 단계를 따르세요.
MongoDB Realm 계정 생성: MongoDB Realm을 시작하려면 MongoDB Realm 계정을 생성해야 합니다. MongoDB Realm 웹 사이트를 방문하고 무료 계정에 가입하여 계정을 만들 수 있습니다.
새 애플리케이션 만들기: MongoDB Realm 계정을 만든 후에는 MongoDB Realm 대시보드로 이동하고 "새 애플리케이션" 버튼을 클릭하여 새 애플리케이션을 만들 수 있습니다. 애플리케이션의 이름을 제공하고 지역을 선택해야 합니다.
데이터 동기화 설정: 모바일 애플리케이션을 구축하는 경우 장치와 클라우드 간에 데이터 동기화를 설정해야 합니다. MongoDB Realm은 자동 충돌 해결을 포함하여 데이터를 동기화하는 데 사용할 수 있는 다양한 동기화 옵션을 제공합니다.
사용자 인증 설정: MongoDB Realm은 이메일/암호, Google, Facebook 및 Apple을 포함하여 사용자를 인증하는 데 사용할 수 있는 다양한 인증 공급자를 제공합니다. 애플리케이션 리소스에 대한 액세스를 제어하려면 사용자 인증을 설정해야 합니다.
애플리케이션 구축: MongoDB Realm 애플리케이션을 설정했으면 애플리케이션 구축을 시작할 수 있습니다. MongoDB Realm은 데이터와 상호 작용하고, 이벤트를 처리하고, 사용자를 인증하는 데 사용할 수 있는 광범위한 API를 제공합니다.
예: MongoDB Realm으로 간단한 채팅 애플리케이션 빌드
MongoDB Realm을 사용하여 간단한 채팅 애플리케이션을 구축하는 방법을 살펴보겠습니다. 이 예에서는 MongoDB Realm 웹 SDK와 React 프레임워크를 사용합니다.
먼저 새로운 MongoDB Realm 애플리케이션을 생성하고 데이터 동기화를 설정합니다. MongoDB Atlas를 데이터베이스로 사용합니다.
다음으로 채팅 메시지를 저장하기 위해 MongoDB Atlas에 새 컬렉션을 생성합니다. 다음 스키마를 사용합니다.
{
"_id": ObjectId(),
"message": String,
"sender": String,
"timestamp": Date
}
다음으로 MongoDB Realm에서 서버리스 함수를 생성하여 새로운 채팅 메시지를 처리합니다. 다음 코드를 사용합니다.
exports = async function (payload) {
const { message, sender } = payload;
const chatCollection = context.services.get("mongodb-atlas").db("chat").collection("messages");
const result = await chatCollection.insertOne({
message,
sender,
timestamp: new Date()
});
return result.insertedId;
};
이 기능은 새 메시지가 전송될 때마다 MongoDB Atlas 데이터베이스에 새 채팅 메시지를 삽입합니다.
다음으로 채팅 메시지를 표시하는 React 구성 요소를 만듭니다. 다음 코드를 사용합니다.
import React, { useState, useEffect } from "react";
import { Stitch, RemoteMongoClient } from "mongodb-stitch-browser-sdk";
const Chat = () => {
const [messages, setMessages] = useState([]);
useEffect(() => {
const fetchMessages = async () => {
const mongoClient = Stitch.defaultAppClient.getServiceClient(
RemoteMongoClient.factory,
"mongodb-atlas"
);
const chatCollection = mongoClient.db("chat").collection("messages");
const cursor = chatCollection.find({}, { sort: { timestamp: -1 } });
const newMessages = await cursor.toArray();
setMessages(newMessages.reverse());
};
fetchMessages();
}, []);
const handleSubmit = async (event) => {
event.preventDefault();
const message = event.target.elements.message.value;
const sender = "John Doe";
const result = await Stitch.defaultAppClient.callFunction("newMessage", {
message,
sender
});
event.target.elements.message.value = "";
};
return (
<div>
<ul>
{messages.map((message) => (
<li key={message._id.toString()}>
{message.sender}: {message.message}
</li>
))}
</ul>
<form onSubmit={handleSubmit}>
<input type="text" name="message" />
<button>Send</button>
</form>
</div>
);
};
export default Chat;
이 구성 요소는 채팅 메시지를 표시하고 사용자가 새 메시지를 보낼 수 있도록 합니다. 이 구성 요소는 MongoDB Stitch SDK를 사용하여 채팅 메시지를 가져오고 새 메시지를 보냅니다.
결론
이 기사에서는 최신 애플리케이션 구축을 위한 강력한 서버리스 플랫폼인 MongoDB Realm을 살펴보았습니다. MongoDB Realm은 데이터 동기화, 실시간 이벤트 처리, 사용자 인증 등 다양한 기능을 제공합니다. MongoDB Realm을 사용하면 오프라인 및 온라인에서 작동하는 반응형 애플리케이션을 쉽게 구축할 수 있으며 데이터와 상호 작용하기 위한 간단하고 직관적인 API를 제공합니다. 최신 애플리케이션 구축을 위한 강력하고 사용하기 쉬운 플랫폼을 찾고 있다면 MongoDB Realm을 확인해 볼 가치가 있습니다.
외부 리소스: