Funkcjonalności warstw architektury referencyjnej Big Data
Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.
Meteor.js to platforma JavaScript typu open source napisana z myślą o Node.js. Jest popularny ze względu na widok tworzenia aplikacji internetowych w czystym JavaScript. Meteor zawiera obsługę JavaScript frontonu, który działa w przeglądarce, a także JavaScript JavaScript, który działałby na serwerze hosta. Bardzo dobrze integruje się z frameworkowymi strukturami JavaScript, takimi jak React i Angular.js, a także MongoDB, popularna baza danych NoSQL. Oto kilka ważnych powodów, dla których warto wybrać Meteor.js:
Meteor.js jest platformą z pełnym stosem. Dzięki temu masz wszystko, czego możesz potrzebować: bazę danych, interfejs, backend. Meteor wykonuje niesamowitą robotę, wiążąc wszystko razem.
Prędkość. Intuicyjny system pakietów Meteor zapewnia wiele narzędzi potrzebnych do udoskonalenia aplikacji.
Ma dobre wsparcie od Meteor Developer Group, a także innych programistów, którzy go używają. Z łatwością będziesz w stanie znaleźć wszelkie problemy i rozwiązać je szybko.
W tym samouczku na Ubuntu 16.04 osiągniemy następujące cele:
Zainstaluj Node.js
nasz środowisko uruchomieniowe JavaScript.
Zainstaluj Meteor.js
.
Zainstaluj MongoDB
wybraną bazę danych Meteor.
Zainstaluj Apache
nasz wybrany serwer proxy zwrotnego i skonfiguruj naszą domenę, jeśli dotyczy.
Przetestuj naszą stronę internetową.
Skonfiguruj naszą stronę internetową do produkcji.
Najpierw musisz zainstalować Node.js, który jest naszym interpretatorem JavaScript i rdzeniem Meteora. Pozwoli nam to uruchomić Meteor i inne aplikacje Node.js, które możemy mieć w przyszłości. W tej sytuacji będziemy instalować Node.js 8. Aby rozpocząć pobieranie, uruchom następujące polecenie w swoim terminalu.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Poczekaj na zakończenie pobierania i instalacji.
Następnie zainstalujemy naszą bazę danych: MongoDB. MongoDB to darmowa baza danych dokumentów NoSQL typu open source oraz baza danych Meteor z wyboru. W swoich dokumentach używa formatu podobnego do JSON, w przeciwieństwie do tabel strukturalnych w tradycyjnej bazie danych SQL.
Zaimportuj klucz publiczny MongoDB używany przez APT
(Advanced Packaging Terminal). To pozwala APT zweryfikować paczkę; w tym przypadku MongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Utwórz niezbędny plik listy dla Ubuntu 16.04.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Rozpocznij instalację MongoDB i poczekaj na zakończenie instalacji.
sudo apt update && sudo apt install mongodb-org -y
Otwórz usługę systemową do edycji.
sudo nano /etc/systemd/system/mongodb.service
Skopiuj i wklej następujące elementy, aby ukończyć usługę systemd.
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
Użyj „ Control-O
”, aby zapisać, i „ Control-X
”, aby wyjść.
Uruchom usystematyzowaną usługę MongoDB, wpisując sudo systemctl start mongodb
swój terminal.
Aby sprawdzić, czy pomyślnie się rozpoczął, wpisz następujące polecenie.
sudo systemctl status mongodb
Zobaczysz, że usługa jest aktywna.
Następnie zainstalujemy Apache. Apache to darmowe oprogramowanie serwera sieci Web typu open source, które działa również jako odwrotne proxy, z czego będziemy korzystać w tym samouczku. Odwrotny serwer proxy jest potrzebny do powiązania naszej aplikacji Meteor.js port 80
. Node.js blokuje uruchamianie aplikacji na tym porcie bez dostępu użytkownika root. Apache działa zarówno root
automatycznie, jak i łączy się z port 80
, więc nie będziemy musieli się tym martwić, gdy przyjdzie czas na uruchomienie naszej strony internetowej.
Zainstaluj Apache.
sudo apt update && sudo apt install apache2
Aby umożliwić dostęp do zewnętrznych portów internetowych, takich jak port 80
, musimy skonfigurować naszą zaporę ogniową dla Apache. Robimy to poprzez UFW
(Nieskomplikowaną zaporę ogniową).
sudo ufw allow 'Apache Full'
Umożliwi to dostęp do Apache Full
profilu „ ”. Daje nam to ruch przychodzący port 80
, na którym będzie działać nasza aplikacja.
Teraz zainstalujemy naszą platformę internetową: Meteor.js. Użyjemy prostego skryptu bash dostarczonego przez zespół Meteor, aby go zainstalować.
curl https://install.meteor.com/ | sh
Poczekaj na zakończenie instalacji. W zasadzie skrypt pobiera Meteor z oficjalnej strony i instaluje go globalnie, abyśmy mogli go używać z dowolnego miejsca. Po zakończeniu możemy utworzyć katalog aplikacji. Meteor ma dla nas przydatne małe narzędzie, zwane meteor create
. Aby utworzyć katalog aplikacji, wpisz następujące polecenie.
meteor create <projectname>
Folder zostanie utworzony z podaną nazwą ( <projectname>
).
Teraz, gdy mamy skonfigurowany katalog aplikacji, możemy kontynuować konfigurację naszego odwrotnego proxy. Apache używa modułu o nazwie mod_proxy
, który implementuje proxy dla Apache.
sudo apt-get install libapache2-mod-proxy-html libxml2-dev -y
Spowoduje to zainstalowanie modułu i udostępnienie go do użycia przez Apache.
Następnie będziemy musieli włączyć wszystkie niezbędne moduły, które musi uruchomić Apache. Zrobimy to za a2enmod
pomocą narzędzia, które umożliwia moduły dla Apache. Te moduły pozwolą nam skorzystać z odwrotnego proxy. Po prostu wpisz te polecenia w swoim terminalu.
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html
Następnie będziemy musieli wyłączyć domyślną stronę Apache przed uruchomieniem, abyśmy mogli uruchomić własną. W przeciwnym razie domyślna aplikacja Apache zastąpi naszą. Aby wyłączyć domyślną witrynę, po prostu uruchom następujące polecenie.
sudo a2dissite 000-default
Teraz utworzymy plik wirtualnego hosta. Aby to zrobić, wystarczy otworzyć edytor tekstu.
sudo nano /etc/apache2/sites-available/<projectname>
Skopiuj i wklej następujące.
<VirtualHost *:80>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ProxyPreserveHost On
# Servers to proxy the connection, or
# List of application servers Usage
ProxyPass / http://0.0.0.0:3000/
ServerName localhost
</VirtualHost>
VirtualHost *:80
: Mówi Apache, aby podłączył się do portu 80, czego chcemy dla naszej aplikacji internetowej.
ProxyPass
: Adres IP witryny, którą chcesz przekazać do zwrotnego serwera proxy. Najprawdopodobniej będzie to adres IP twojego VPS
ServerName
: Nazwa twojego serwera (zazwyczaj jest to nazwa domyślna localhost
).
Po zakończeniu konfigurowania niezbędnych ustawień użyj przycisków „ Control-O
”, aby zapisać, i „ Control-X
”, aby wyjść.
Aby przetestować i upewnić się, że witryna internetowa działa, wpisz następujące polecenie w katalogu projektu.
meteor
Zobaczysz następujące dane wyjściowe wskazujące, że Twoja witryna została pomyślnie uruchomiona.
=> App running at: http://localhost:3000/
Pamiętaj, że Meteor domyślnie nasłuchuje port 3000
.
Aby mieć pewność, że nasza aplikacja będzie mogła nadal działać, skorzystamy z usługi systemd. Podobnie do tego, co zrobiliśmy powyżej z MongoDB, ta usługa systemowa zapewni, że nasza strona internetowa uruchomi się przy każdym uruchomieniu naszego systemu i pozostanie uruchomiona. Zrestartuje również naszą aplikację w przypadku awarii z jakiegokolwiek powodu. Aby skonfigurować naszą usługę systemową, wpisz następujące polecenie w swoim terminalu.
sudo nano /etc/systemd/system/<projectname>.service
Oto jak ma wyglądać twój plik.
[Service]
WorkingDirectory=/home/<yourusername>/<projectname>
ExecStart=/usr/local/bin/meteor --production
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=<projectName>
User=<yourusername>
Environment=NODE_ENV=production
Environment=PWD=/home/<yourusername>/<projectname>
Environment=PORT=3000
Environment=HTTP_FORWARDED_COUNT=1
Uwaga : Nie zapomnij zastąpić projectname
nazwą projektu i yourusername
nazwą użytkownika VPS.
Oto kilka kluczowych kwestii, o których należy pamiętać.
WorkingDirectory
: Katalog Twojej aplikacji.
Restart
: Określa, czy ponowne uruchomienie aplikacji zostanie zatrzymane z jakiegokolwiek powodu.
User
: Twoja nazwa użytkownika.
Environment=PWD
: Identyczny z WorkingDirectory
.
Environment=PORT
: Port, na którym działa aplikacja. Domyślnie jest to 3000
.
Zapisz i zamknij plik.
Teraz włączymy i uruchomimy usługę.
sudo systemctl enable <projectname>.service
Gdzie <projectname>
jest nazwa pliku usługi, który utworzyliśmy.
Następnie uruchomimy usługę.
sudo systemctl start <projectname>.service
Twoja aplikacja zostanie uruchomiona. Aby sprawdzić, czy został uruchomiony, uruchom następujące polecenie.
sudo systemctl status <projectname>
Zobaczysz, że jest aktywny, sprawdzając, czy usługa została pomyślnie uruchomiona.
Następnie sprawdzimy naszą stronę internetową. W wybranej przeglądarce internetowej przejdź do swojego adresu IP.
http://your-server-ip/
Zobaczysz ekran przykładowy Meteor, potwierdzający, że wszystko zrobiłeś poprawnie.
Po uruchomieniu naszej aplikacji będziemy musieli nią zarządzać.
sudo systemctl restart <projectname>
sudo systemctl stop <projectname>
sudo systemctl status <projectname>
journalctl -u <projectname>
Z powodzeniem skonfigurowałeś MongoDB, Apache i Meteor i stworzyłeś serwer internetowy Meteor.js do produkcji. Teraz reszta należy do Ciebie, aby zaprojektować swoją stronę internetową z przodu i z tyłu. Masz dostęp do MongoDB do przechowywania dowolnych potrzebnych danych oraz Node.js, który oferuje różnorodne moduły dostępne za pośrednictwem Node Package Manager ( NPM
) w celu dalszego wzmocnienia twojego backendu. Aby uzyskać więcej dokumentacji, odwiedź witrynę Meteor , gdzie możesz dowiedzieć się, jak dostosować swoją stronę do własnych potrzeb. Możesz również odnieść się do dokumentacji MongoDB , gdy masz do czynienia z operacjami na bazie danych.
Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.
Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.
13 komercyjnych narzędzi do ekstrakcji danych z Big Data
Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+
Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.
Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…
Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą
Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.
Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.
Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.