2016-03-23 2 views
2

Этот вопрос задавался несколько раз здесь, и все же я не могу рассказать об этом немного, так как я больше начинаю, чем большинство людей здесь, с программированием в целом. Так что это мой сценарий, чтобы вы поняли, где я нахожусь, извиняюсь за количество текста. Я создал .NET web api и загрузил его в обычное веб-приложение в Azure. Теперь я могу успешно использовать эту веб-апию через Интернет.Как самостоятельно размещать asp.net web api через Интернет?

Теперь я прочитал о стоимости/gb полосы пропускания в Azure и понял, что если этот веб-api масштабируется и используется, это может оказаться чрезвычайно дорогостоящим (больше, чем я могу себе позволить). Я читал еще кое-что и видел такие сайты, как Arvixe, и предлагал неограниченные полосы пропускания на общих хостах, однако после того, как выкапывали еще несколько, я узнал, что, как только люди начинают получать высокую пропускную способность, эти сайты запрещают вам использовать эту услугу. Я читал еще немного и вижу, как люди говорят, что вы можете использовать VPS и выделенные серверы в качестве хорошего выбора. Я смотрю на это и вижу, что вам нужен какой-то опыт, который настраивает те, которых у меня нет, и что стоимость аренды компьютера с хорошими CPU и планшетами стоит много, и все, что я действительно ищу, - это разместить сайт, никаких конфигураций необходим.

Теперь я добрался до места, где я читал о самообслуживании web api. Я подумал, что могу использовать свой собственный компьютер, у которого есть намного больше CPU и Ram, чем thoose, который я могу себе позволить как VPS и т. Д. Я вижу много примеров. Но я действительно не понимаю, как их можно использовать практически через Интернет только с помощью localhost.

Вопросы:

Будет ли быть хорошим выбором для размещения этого Web API сам и могу я сделать это безопасно без к много знаний?

Многие люди относятся к iis, который я никогда не использовал, но видел много примеров, используя localhost. Поскольку у меня уже есть URL-адрес, я могу использовать это вместо этого, чтобы запустить его с моего собственного компьютера? и будет ли это считаться безопасным?

Я также вижу много людей, использующих сам хост Owin, который не нуждается в iis. Будет ли это лучшей альтернативой? как это, например http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api

Вывод:

Что все это сводится к тому, что я искал способ для новичка разместить веб-апи через Интернет без необходимости беспокоиться о полосе пропускания и использование cpu становится для меня высоким, как частное лицо.

Любой вход или помощь о том, где я могу начать с этого очень ценного, спасибо!

ответ

6

Итак, во-первых, я думаю, что вы сбиты с толку термином «само-хозяин», это обычно относится к способу размещения приложения ASP.NET WebAPI в процессе кроме IIS. Это не относится (как я понимаю, вы это понимаете) к тому, где разместить API с точки зрения доступа в Интернет.

Будет ли хороший выбор для размещения этого веб-сайта api и я могу сделать это безопасно, не имея большого знания?

Нет. Не делайте этого, в лучшем случае будет сложно настроить и выполнить плохо. В худшем случае он может фактически подвергнуть компьютер (ы) @ home некоторым существенным уязвимостям.

Многие люди относятся к iis, который я никогда не использовал, но видел много примеров, используя localhost. Поскольку у меня уже есть URL-адрес, я могу использовать это вместо этого, чтобы запустить его с моего собственного компьютера? и будет ли это считаться безопасным?

IIS - это веб-сервер Microsoft, и обычно это хост-программное обеспечение, которое вы должны установить для запуска приложения ASP.NET (любого вида). Вы можете установить в Windows 7/8/10, но я настоятельно рекомендую это сделать.

Я также вижу много людей, использующих сам хост Owin, который не нуждается в iis. Будет ли это лучшей альтернативой? например, http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api

Это касается моего первого комментария, вы неправильно понимаете, что это значит.

Хотел бы я иметь некоторые рекомендации относительно того, где вы могли бы разместить это по очень низкой цене, но я этого не делаю. Одна вещь, которую я знаю, что вы можете сделать с Azure, - это установить лимиты расходов; вы можете использовать Azure для размещения API, но установить лимит расходов, например, $ 100, а затем, когда этот предел достигнут, ваш API просто станет недоступным. Вы на самом деле не указали, для чего хотите использовать API, поэтому я не знаю, будет ли это работать для вас или нет, но это хороший способ, по крайней мере, проверить его, чтобы вы могли понять, что он собирается стоить вам более долгосрочно.

+0

Хорошо, спасибо, что это помогло мне, я не буду пытаться принимать его сам. Вместо этого я попытаюсь найти лучший способ найти хостинг. Совет о том, чтобы поставить предел на Azure, было замечательно! Я на самом деле ставлю это на 100 долларов, так как его больше всего я бы заплатил за это. Хотелось бы, чтобы была услуга за высокую пропускную способность по этой цене, похоже, что между ними нет ничего, либо она заплатит 3 доллара, либо заплатит 1000 долларов. Я буду служить социальному форуму, поэтому я решил, что он может быть использован много для людей, загружающих данные из dabatase и создания новых сообщений и т. Д. $ 100 дает вам около 1,2 Тбайт исходящих данных с Azure – mattias

+0

Я предполагаю, что может служить довольно много вызовов api ? – mattias

+0

Yea, 1.2TB - это ** серия ** полосы пропускания, особенно если вы можете убедиться, что сможете принимать и отвечать с помощью [HTTP-сжатия] (http://benfoster.io/blog/aspnet-web-api -compression). Честно говоря, с Azure, я думаю, вы хотите больше заботиться о расходах на процессор/хранилище, я никогда не видел, чтобы затраты на пропускную способность были значительными. – CodingGorilla

Смежные вопросы