Pull to refresh
11
0
Алексей Ануфриев @Razaz

Пользователь

Send message
Если мы рассматриваем энтерпрайз, то это наверное IT бюджеты более 1 mln USD. И, приведенный мной документ как раз рассматривает еще и ценовой аспект.
Если в целом смотреть, то тот же Windows 2008 Web Server стоит, если мне память не изменяет, около 9000 р. Ну, право, это не серьезно(кстати в Azure 10 сайтов бесплатно:-)).
А жалуются, по моему опыту в основном из-за того, что не осведомлены о существующих альтернативах. Это, кстати, пока еще достаточно часто встречается у .Net разработчиков (сужу по собеседованиям). И, кстати, весь стек можно собрать по сути за те же 9000 р., так как взяв тот же NHibernate, вы не привязаны к бд. При еще большем желании — mono :).

Я и не говорю, что Java лучше или хуже С#(.Net). По моему опыту, они сейчас на равных. Есть и сильные и слабые стороны. Open source на платформе .Net достаточно туго развивался до выхода Asp.Net MVC, который, по сути, стал локомотивом для всей платформы в этом направлении. У Java здесь есть определенная фора. Плюс не стоит забывать, что до определенного времени, MS игнорировали open source. Честно, завидовал когда мои team mates использовали Hibernate, а мне приходилось сидеть на голом ADO.NET :-). Для .Net тоже есть спринг Spring Framework.Net.

По части языков это отдельная тема, так как по моему мнению, частично причиной их появления послужило весьма неспешное развитие Java как языка. Тот же C# развивается гораздо более быстрыми темпами, в результате потребность не такая большая, но при этом — List of CLI languages.
«декстоп, проприетарные приложения» — лет 6 назад я бы с вами согласился. Сейчас .Net очень комфортно чувствует себя на сервере. Да и open source проекты в полный рост. Тот же WCF на сервере мне импонирует гораздо больше чем то, что представлено на Java стеке и вполне хорошо уживается на серверах вместе с Java based продуктами. Просто не надо смотреть на .Net свысока, считая что его удел это только десктоп. Эти времена уже давно прошли. В следующий раз, когда будете проводить платеж через интернет банк, платежный терминал или какие-нибудь интернет деньги, представьте, что возможно в 30% случаев это будут обрабатывать сервера на Windows Server.

Не для холивара, а для ознакомительных целей могу рекомендовать почитать:
Comparing .NET and IBM WebSphere 7 Application Server Performance

Можно еще тут посмотреть:.NET Framework Libraries Часть, как уже писал выше в одном из постов, доступна на CodePlex.
По поводу исходников — Resharper +F12 =) Причем .NET Framework Library Source Code now available. То же открыты )
Все коммерсы=) Но раньше они замыкались в себе и пытались выстроить всю инфраструктуру сами. Сейчас начинают сотрудничать с другими. И Как раз это и нужно=)
Статистика немножко не корректна. В ней под ASP.NET понимаются WebForms.
Тот же MVC потихоньку набирает обороты.
trends.builtwith.com/framework/ASP.NET-MVC
Хотя так вообще немного странная статистика, так как в «Technologies with similar web coverage to ASP.NET MVC» числятся Visual Studio, Perl, Python И Sharepoint 0_o.
Может для вас это в порядке вещей, но, к примеру, лет пять назад я бы не поверил, что такое возможно, и МС начнет смотреть на продукты других вендоров, а не только на то, что разработали сами. И как раз об этом я писал выше — внутри идет сдвиг от замкнутости к открытости. Redmond distortion field рушится ;-)
Добавлю еще, что после того, как Web Division выкатил NuGet наблюдаю просто взрывной рост open source, и, что немаловажно, постепенный отказ от привязки версий различных фреймворков (Asp.Net MVC, EF) к релизам .Net. Это, имхо, была проблема.
1. Как уже сказали выше — IIS с разными примочками.
2. SQL Server Hadoop?
3. Windows Server AppFabric Cache. Memcached отлично поддерживается. В облачной версии AppFabric Cache поддержан протокол memcached.
4. SQL Server ServiceBroker, NServiceBus.
5. Субъективно.

Думаю, ваше мнение было бы немножко не таким, если бы последние 3 года вы работали на .Net. Кстати, года 3 назад очень серьезно рассматривал вариант перехода на Java. Но решил подождать 4 фреймворк. И тут понеслось… Постепенно в МС начали выжимать стариков, веб просто шпарит семимильными шагами, меняется политика от закрытой экосистемы к открытой:

— МС пилили свой фреймворк для compute и тд — Dryad, но в 12 сиквеле мы получили Hadoop. У меня глаза на лоб полезли, когда увидел.

— Весь веб стэк отправили в опенсорс, да еще и в Git репозитории.

— Активно помогают портировать на Windows разные ништяки типа Redis, Node.js и тд.

— МС начал обращать внимание на фидбэк. Хотя бы недавний случай с Express студией.

Еще много разных мелочей которые можно подметить, читая блоги разработчиков.
Можно спорить и холиварить, но в последнее время меня все больше радует подход МС. Наконец-то приходит понимание того, что они не в состоянии успеть разрабатывать полный стек требуемого качества сами.

А по поводу того, кто где распространен — очень серьезные товарищи пишут сразу и на .Net, и на Java. В зависимости от религиозных предпочтений одна из реализаций на боевых серверах, а другая на резервных. При возникновении проблем(технических, политических и тд.) происходит переключение. Однажды, к примеру, для продукта на Java пришлось писать антивирусный шлюза на .Net… Так что эти платформы гораздо ближе чем кажется на первый взгляд :) Джавистов уважаю, и считаю что сейчас все сводится (в 95%) к религиозным и политическим убеждениям, а так же просто привычки. Все imho.

Зависит от проекта. Если использовать IIS только как HTTP сервер — возможны варианты. А если начинается WCF, активация через TCP,Pipes, MSMQ, Workflow и тд — аналогов IIS, если честно, можно разве что для Java стэка поискать. А с последними фишками из AppFabric желание использовать что-то другое отпадает. Плюс если вы разрабатываете на .Net стэке (а на нем есть тоже просто гигантские проекты типа того же SO), то выбора у вас просто нет (и зачастую и не надо, если вам нравится платформа и направление, в котором она движется).
Немного не по теме, но когда в WebPI поправят «Важный сайт» на боле вменяемое название?
github.com/thinktecture/Thinktecture.IdentityServer попробуйте этот сервер. Можно чуточку допилить, что бы симулировал те клэймы, что выдает вам ADFS. Причем его можно в Azure поднять и зарегистрировать как IdP в ACS и абстрагироваться от конкретного инстанса AD и ADFS.
Отвечу отдельным комментом. Заранее извиняюсь.
social.msdn.microsoft.com/Forums/en-US/Geneva/thread/8b715681-8528-4a2d-969c-4dc0e59e0853/
Как раз по теме развертывания рантайма.
Еще как вариант можно посмотреть сюда:
social.technet.microsoft.com/wiki/contents/articles/4499.deploying-claims-aware-application-to-windows-azure.aspx в части Solution Approach. Но это касательно Azure. Там явно указывается как можно деплоить рантайм.

На чистый сервер уже около полугода не ставлю явным вызовом веб деплоя. Собираю webdeploy пакеты и выкладываю в наш собственный WebPI источник и прописываю все зависимости. Попробую на чистой виртуалке как будет время, может чем и подскажу.
А какие проблемы возникли во время развертывания?
«Это не webdeploy»
Он интегрирован туда.
Цитата: «The tool also integrates with the Web Platform Installer»
www.iis.net/download/webdeploy
Этот способ используется к примеру если вы свои приложения публикуете через свой собственный источник в WebPI.

«Можно просто поставить Copy Local = True для Microsoft.IdentityModel»
Не работает.

В наших приложениях используем просто Copy Local для сборки. Проблем не наблюдается.
Так же явно указано что WIF Runtime можно поставлять с приложением не требуя явной установки.
social.technet.microsoft.com/wiki/contents/articles/1898.aspx#Q11

«можно скачать отдельно и поставить»
Через webdeploy?

Может я вас не полностью понимаю, но вопрос установки WIF и процесс WebDeploy не связаны между собой каким-то явным способом.

Опишите ваш сценарий развертывания, и можно будет это обсудить :)
Опять же это зависит от конкретного сценария. WIF Runtime доступен через Web Platform Installer и его можно указать в пререквизитах, если ваше приложение деплоится через WebPI. Можно просто поставить Copy Local = True для Microsoft.IdentityModel, можно скачать отдельно и поставить или, если вы используете .Net 4.5, вообще ничего не нужно делать. К самому WebDeploy это явного отношения не имеет. Повторюсь, зависит от сценария.
Сам процесс развертывания(обновления бинарников и тд.) ничем не отличается. Различия только в том, что после развертывания необходимо внести изменения в web.config(секция microsoft.identityModel). Если ваше приложение деплоится всегда на один хост, то можно использовать стандартные web.config transformations при сборке. Остальное зависит от того, как у вас устроен процесс аутентификации и авторизации, какие токены вы используете, какая политика в части X.509 сертификатов и тд. Все это тяжело уместить в одном посте :). Опишите сценарий, который вас интересует, чуточку поподробнее.
12 ...
88

Information

Rating
Does not participate
Date of birth
Registered
Activity