Проект сканера совместного использования облаков Baidu
На github есть несколько таких проектов с открытым исходным кодом, но они предоставляют только часть сканера. Этот проект также добавляет модули для сохранения данных и создания индексов эластичного поиска на основе сканера. Его можно использовать в реальных производственных средах, но веб-модуль по-прежнему существует. Требуется разработать его самостоятельно.
Установить
Установите node.js и pm2, node используется для запуска сканеров и программ индексирования, а pm2 используется для управления задачами узла.
Установите mysql и mongodb. Mysql используется для сохранения данных сканера, а mongodb — для сохранения окончательных общих данных Baidu Cloud. Эти данные находятся в формате json, и их удобнее сохранять с помощью mongodb.
gitclonehttps://github.com/callmelanmao/yunshare
cnpmi
Для установки зависимостей npm рекомендуется использовать команду cnpm — самый простой метод установки.
$npminstall-gcnpm--registry=https://registry.npm.taobao.org
Дополнительные команды для установки cnpm можно найти на сайте npm.taobao.org.
инициализация
Данные сканера (в основном список URL-адресов) сохраняются в базе данных mysql. Yunshare использует secelizejs для сопоставления ORM. Исходный файл находится в src/models/index.js. Имя пользователя и пароль MySQL по умолчанию — root. Вы можете. Вам нужно вручную создать базу данных Yun.
созданная база данныхyundedefaultcharsetutf8
Измените пароль в соответствии с вашими потребностями. После завершения настройки MySQL вы можете запустить следующую команду.
глотать вавилонку
nodedist/скрипт/init.js
Обратите внимание, что сначала необходимо запустить gulpbabel для компиляции кода es6 в es5, а затем запустить скрипт инициализации для импорта исходных данных. Файл данных находится в data/hot.json, который находится на странице http://yun.baidu. .com/pcloud/friend/gethotuserlist? type=1&from=feed&start=0&limit=24&bdstoken=ac95ef31d3979f6ee707ef75cee9f5c5&clienttype=0&web=1 сохранен.
Начать проект
Yunshare использует pm2 для управления процессами nodejs. Запустите pm2startprocess.json, чтобы запустить все фоновые задачи. Чтобы проверить, нормально ли выполняются задачи, вы можете использовать команду pm2list. Должно быть 4 задачи, работающие нормально.
Запустить индекс упругого поиска
Также написана программа индексирования elasticsearch. Файл сопоставления находится в data/mapping.json. Перед запуском программы индексирования убедитесь, что вы установили версию elasticsearch5.js, команду pm2startdist/elastic.js.
Адрес elasticsearch по умолчанию — http://localhost:9200. Если вам нужно изменить этот адрес, вы можете изменить его в src/ElasticWorker.js. После изменения любого исходного кода js не забудьте запустить gulpbabel и перезапустить задачу pm2, в противном случае. изменение не вступит в силу.
После завершения настройки elasticsearch вы также можете добавить задачу эластичного поиска в файлprocess.json, чтобы вам не нужно было запускать программу индексирования отдельно.
Связанные документы
Простая и эффективная модель сканера nodejs
ДЕМО