Възходът на машините: Реални приложения на AI
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
.NET Core е преработена рамка за кросплатформена разработка с отворен код, поддържана от Microsoft и непрекъснато нарастващата .NET общност. С помощта на .NET Core разработчиците могат лесно да създават модерни високопроизводителни приложения на всякакви платформи.
В тази статия ще ви покажа как да инсталирате .NET Core на сървърен екземпляр на CentOS 7 и след това да разположите пълно функционално .NET Core уеб приложение.
203.0.113.1.Като межплатформена рамка за разработка, .NET Core предоставя предварително компилирани двоични файлове за различни операционни системи. На CentOS 7 можете да настроите официално подписано .NET YUM репо, като изпълните следните команди като потребител на sudo:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'
Като имате .NET YUM репо, инсталирайте най-новия .NET SDK, включително .NET Core и други зависимости, на вашата машина:
sudo yum update -y
sudo yum install libunwind libicu -y
sudo yum install dotnet-sdk-2.1.4 -y
За да потвърдите резултата, можете да създадете и стартирате демонстрационно .NET Core приложение "Hello World":
cd
dotnet new console -o helloworldApp
cd helloworldApp
dotnet run
В dotnet new console -o helloworldAppкоманда ще създаде директория с име helloworldAppв дома си директория и след това да използвате consoleшаблона, за да генерира ап файлове в новосъздадената директория.
След като изпълните dotnet runкомандата, ще видите Hello World!съобщението в конзолата.
Сега създайте и стартирайте .NET Core приложение от тип razor. Само не забравяйте, че „Razor Pages“ е нов шаблон за приложение на .NET Core MVC, който е предназначен за ориентирани към страници сценарии:
cd
dotnet new razor -o myfirstwebapp
cd myfirstwebapp
dotnet run
Като изпълните dotnet runкомандата по-горе, ще стартирате уеб приложение .NET Core, което слуша: http://localhost:5000.
Ако искате да потвърдите, че уеб приложението е готово и работи, въпреки че е на сървърен екземпляр без GUI, все пак можете да отворите нова терминална конзола и да въведете, за curl http://localhost:5000да видите изходния код на началната страница на уеб приложението.
След това можете да натиснете CTRL+, за Cда изключите уеб приложението .NET Core.
За да материализирате вашето уеб приложение, трябва да редактирате файлове в директорията на приложението. Можете да научите повече подробности в официалната страница на .NET документ .
След като завършите всички задачи за разработка, можете да използвате следните команди, за да публикувате вашето уеб приложение:
cd ~/myfirstwebapp
dotnet publish
Можете да намерите публикуваното уеб приложение в ~/myfirstwebapp/bin/Debug/netcoreapp2.0директорията.
Случват се сривове на процесите. За да поддържате уеб приложението си онлайн, добре е да имате инструмент за управление на процеси, като например Supervisor, за да наблюдавате и рестартирате сриваните процеси на уеб приложения.
На CentOS 7 можете да инсталирате Supervisor с помощта на YUM:
sudo yum install supervisor -y
След това трябва да настроите специален конфигурационен файл на Supervisor за вашето уеб приложение:
cd /etc/supervisord.d
sudo vi myfirstwebapp.conf
Попълнете файла:
[program:myfirstwebapp]
command=dotnet myfirstwebapp.dll
directory=/home/sudouser/myfirstwebapp/bin/Debug/netcoreapp2.0/
environment=ASPNETCORE__ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=1
stderr_logfile=/var/log/myfirstwebapp.err.log
stdout_logfile=/var/log/myfirstwebapp.out.log
Запазете и излезте:
:wq!
След това трябва да промените supervisordконфигурационния файл по подразбиране, за да включите конфигурационния файл, който сме създали:
sudo cp /etc/supervisord.conf /etc/supervisord.conf.bak
sudo vi /etc/supervisord.conf
Намерете последния ред:
files = supervisord.d/*.ini
Замени го:
files = supervisord.d/*.conf
Запазете и излезте:
:wq!
Стартирайте Supervisor и го настройте да стартира автоматично при стартиране на системата:
sudo systemctl start supervisord.service
sudo systemctl enable supervisord.service
Заредете новите настройки на Supervisor:
sudo supervisorctl reread
sudo supervisorctl update
Сега можете да използвате следната команда, за да покажете състоянието на приложението:
sudo supervisorctl status
Резултатът ще изглежда по следния начин:
myfirstwebapp RUNNING pid 3925, uptime 0:08:45
След това можете да опитате да убиете процеса на приложението, като посочите pid 3925:
sudo kill -s 9 3925
Изчакайте известно време и след това проверете състоянието отново:
sudo supervisorctl status
Този път изходът ще покаже, че приложението се е развалило и стартира автоматично:
myfirstwebapp RUNNING pid 3925, uptime 0:00:06
За да улесните достъпа на посетителите, можете да инсталирате Nginx като обратен прокси за прехвърляне на уеб трафик към порт 5000.
Инсталирайте Nginx с помощта на YUM:
sudo yum install nginx -y
Редактирайте конфигурационния файл на Nginx по подразбиране, както следва:
sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
sudo vi /etc/nginx/nginx.conf
Намерете следния сегмент в рамките на http {}сегмента:
location / {
}
Поставете шест реда настройки за обратен прокси между скобите, както е показано по-долу:
location / {
proxy_pass http://127.0.0.1:5000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
Запазете и излезте:
:wq!
Стартирайте услугата Nginx и след това я настройте да стартира при стартиране на системата:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Преди посетителите да имат достъп до уеб приложението .NET Core на портове 80и 443, трябва да промените правилата на защитната стена, както е показано по-долу:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload
Това завършва настройката на приложението. Вече сте готови да разглеждате вашето уеб приложение .NET Core на адрес http://203.0.113.1.
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече