우리 모두 알고 있듯이 현대 네트워크 기술은 극도로 발전한 수준에 도달했으며 네트워크에는 많은 양의 정보가 존재하며 사람들의 사용과 함께 매일 증가하고 있습니다. 따라서 검색 엔진은 우리가 일상적으로 사용하는 데 필수적인 도구가 되었습니다. 백엔드 개발 분야에서 Node.js는 가장 인기 있고 널리 사용되는 기술 중 하나입니다. 많은 수의 동시 요청을 쉽게 처리할 수 있기 때문입니다. 이 기사에서는 Node.js를 사용하여 강력하고 확장 가능한 검색 엔진을 구축하는 방법에 대해 설명합니다.
먼저 시스템에 Node.js를 설치해야 합니다. 이는 공식 웹사이트 [nodejs.org](nodejs.org)의 다운로드 페이지를 통해 얻습니다. 다운로드 후 일반 단계에 따라 node 명령을 설치하고 사용하십시오. 다음 명령을 입력하여 설치가 성공했는지 확인합니다.
node -v
먼저 새 Node.js 프로젝트를 만들고 사용하기 쉽도록 필요한 파일과 모듈을 추가합니다. 이 작업은 다음 명령을 사용하여 명령줄 인터페이스에서 수행할 수 있습니다.
mkdir search-engine && cd search-engine npm init -y touch index.js
프로젝트 루트 디렉터리에 새 폴더를 만들고 해당 폴더에 들어갔습니다. 그런 다음 npm init 명령을 사용하여 프로젝트의 코드 종속성, 작성자 및 기타 구성을 나열하는 새 package.json 파일을 생성합니다. 완료되면 index.js라는 기본 파일을 생성합니다. 여기서 대부분의 검색 논리를 작성하게 됩니다.
Node.js 프로젝트에서는 ElasticSearch 모듈을 사용하여 검색 작업을 수행해야 합니다. 이 모듈은 인덱스 생성, 문서 검색, 데이터 삭제 등 다양한 기능을 제공하며, 프로젝트의 필요에 따라 구성하여 사용할 수 있습니다. 사용하려면 다음 명령을 사용하여 설치해야 합니다.
npm install elasticsearch --save
ElasticSearch에서 찾은 데이터를 문서 형식으로 변환하여 검색 기능을 구현하기 시작합니다. 다음 코드를 사용하여 이 작업을 수행할 수 있습니다.
const data = [ { title: '文章1', body: '8月6日讯 北京市公安局交通管理局昨日通报称,自2018年8月5日至8月6日...(略)...', id: 1 }, { title: '文章2', body: '8月6日讯 北京市公安局交通管理局昨日通报称,自2018年8月5日至8月6日...(略)...', id: 2 }, { title: '文章3', body: '8月6日讯 北京市公安局交通管理局昨日通报称,自2018年8月5日至8月6日...(略)...', id: 3 }, { title: '文章4', body: '8月6日讯 北京市公安局交通管理局昨日通报称,自2018年8月5日至8月6日...(略)...', id: 4 }, { title: '文章5', body: '8月6日讯 北京市公安局交通管理局昨日通报称,自2018年8月5日至8月6日...(略)...', id: 5 }, { title: '文章6', body: '8月6日讯 北京市公安局交通管理局昨日通报称,自2018年8月5日至8月6日...(略)...', id: 6 }, ] data.forEach(({ title, body, id }) => { elasticClient.index({ index, body: { id, title, body } }) })
이제 ElasticSearch를 사용하여 검색 작업을 수행할 준비가 되었습니다. 우리는 검색이라는 함수에 검색 프로세스를 캡슐화하려고 합니다. 이 함수는 쿼리 문자열, 문서 유형, 결과 수 등 여러 매개변수를 사용합니다. 검색을 구현하는 코드는 다음과 같습니다.
async function search({ query, type, limit }) { const { body } = await elasticClient.search({ index, type, body: { size: limit, query: { match: { title: { query, fuzziness: 2 } } } } }); return body.hits.hits.map(({ _source }) => _source); }
이제 Node.js에서 간단하지만 강력한 검색 엔진을 구현할 수 있습니다. 웹 애플리케이션, 기업 내부 검색, 데이터 분석 등 다양한 활용 사례에 활용 가능합니다.
요약하자면, Node.js는 확장성이 뛰어나고 많은 요청을 처리할 수 있는 백엔드 시스템을 구축하는 데 도움이 되는 강력한 개발 도구입니다. 개별 모듈의 사용법을 학습함으로써 프로젝트 요구 사항을 지원하는 자체 검색 엔진을 구축할 수 있습니다. Node.js는 요청 처리 및 검색 수행과 같은 작업에 탁월하기 때문에 여전히 사용할 수 있는 최고의 백엔드 기술 중 하나로 남아 있습니다. 이 글의 연구와 실습을 통해 Node.js를 활용한 검색 기능 개발에 있어 독자들에게 도움이 되기를 바랍니다.
위 내용은 nodejs에서 검색 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!