Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Переход с PHP на C# как средства разработки сайтов
цитата
16/02/13 в 20:05
 kit
Разрабу 30 лет, имет значительный и успешный опыт разработки на PHP+[MySQL or PostgreeSQL]}.
На готовых фреймворках не работали, писали свои, но устали от изобретения велосипедов.
На C# писал что-то лично для себя.

В данный момент рассматривается вопрос переписки с нуля high-load проекта тизерной системы с количеством показов где-то примерно 60М в сутки. Реалтайм биллинг и RTB присутствуют. Переписка с нуля обсуждается из-за архитектуры, которая якобы (я не изучал этот вопрос подробно) устарела по причине перехода от системы "оплата за клик" к системе "оплата за показа по протоколу RTB".
цитата
16/02/13 в 21:13
 Дартаньян
kit: не знаю, сколько встречал C# и хайлоад проекты то там матерились что надо докупать мощность к облаку.
цитата
16/02/13 в 21:41
 INTELigent
kit писал:
Переписка с нуля обсуждается из-за архитектуры, которая якобы (я не изучал этот вопрос подробно) устарела по причине перехода от системы "оплата за клик" к системе "оплата за показа по протоколу RTB".


RTB сейчас очень модная штука в Рунете, проекты плодятся как мухи, переходят старые на эту схему работы, но "оплата за клик" нифига не устарела, да и не устареет никогда точно.
Я бы, честно говоря, еще подумал бы несколько раз, перед тем, как принимать решение о переводе уже работающего проекта с одной схемы на другую.
Может есть смысл запустить отдельно.

Если не секрет, о какой тизерной системе идет речь?
Можно в личку, есть нет желания палить урл.
цитата
16/02/13 в 21:46
 johndoe2
kit писал:
Разрабу 30 лет, имет значительный и успешный опыт разработки на PHP+[MySQL or PostgreeSQL]}.
На готовых фреймворках не работали, писали свои, но устали от изобретения велосипедов.
На C# писал что-то лично для себя.

В данный момент рассматривается вопрос переписки с нуля high-load проекта тизерной системы с количеством показов где-то примерно 60М в сутки. Реалтайм биллинг и RTB присутствуют. Переписка с нуля обсуждается из-за архитектуры, которая якобы (я не изучал этот вопрос подробно) устарела по причине перехода от системы "оплата за клик" к системе "оплата за показа по протоколу RTB".


А какая обещаемая выгода? Ну перепишет он с нуля и ... ?
цитата
16/02/13 в 21:51
 Дартаньян
johndoe2: многопоточность.
цитата
16/02/13 в 22:22
 idk2045
переписывать - это дело тонкое. стоит если проект столкнулся с фундаментальными ограничениями архитектуры, или если есть много денег чтоб попробовать что-то новое.

если есть много денег - тогда не вопрос почему бы и нет? хотя есть еще ресурс времени. такой тизерный проект это 8-12 месяцев работы, и в итоге получится то же самое что уже есть сейчас на пхп, только сырое.

если архитектурные сложности - тут уже надо смотреть конкретно... навскидку для начала можно примерно смоделировать нагрузку этих 60М на C#, или переписать какой-нибудь модуль, RTB например, взять под него серваки, настроить и вызывать его в реальной работе, посмотреть как оно запляшет.

может админы сбегут от вас сразу или ляжет все icon_smile.gif а может загрузка реально будет на 50% меньше чем аналог на пхп.

с места в карьер переписывать я бы не стал, сам берусь за такое только из-за денег, а так чтоб от души - никому бы не советовал smail101.gif ну разве что индусы писали до этого, но это не тот случай я так понял.

вообще если проблема решается добавлением серваков - лучше ее так и решать, а не "менять всю систему" icon_smile.gif
цитата
16/02/13 в 23:41
 RA Optimus
Ключевые вопросы:
Поставленная задача
Кадры
Опыт разработки
Скорость разработки

Вопрос неточный для того, чтобы дискутировать
Более того, этот вопрос (vs vs vs) не решаем.
В интернете на профессиональных форумах куча подобных вопросов на несколько тысяч страниц.
Однозначного ответа нет и никогда не будет.
Мне кажется подобный вопрос вообще бессмысленно решать на master-x.
Здесь просто нет людей, у которых бы был достаточный опыт в обоих технологиях.
Это все равно что, спросить сотрудников макдональдса: Какой гамбургер лучше наш или другого производителя?

По ответам:
Дартаньян писал:
kit: дядя кит, это плохой язык с#, прожорлив и т.д.?

Бенчмарки есть? или это вы у бабушек на лавочке услышали?

uname_ писал:
не надо поддаваться - сервера под виндами это пипец! Их тупо понадобиться больше из-за производительности.

Это ваш личный опыт? поделитесь им. Расскажите, что за сервер у вас был. Какая ОС. что за проект?

uname_ писал:
Я понимаю desktop

А в чем разница? или для себя можно и на гавне? а данные с десктопа не боитесь потерять? ключи от webmoney например

arma писал:
+ за Ruby.
Если уж переходить то на него, но никак не на C# и (!блять) Windows Server.


опять из той же области.

Stek писал:
Бред феерический. Единственный плюс - это для прогера, проект к нему охуенно сильно будет привязан, даже не перднуть без согласия.

Любой проект так или иначе привязан к его главному архитектору. Язык тут не при чем. а если он будет написан на php, а придет человек никогда на нем не писавший?

don Rumata писал:
Кит, в PHP можно обеспечить многопоточность.

Серверы очередей:


Вы бы не смешили людей. Где тут многопоточность? это выполнение отложенных процессов. Их можно и без доп. приложений реализовать форком, nginx+fcgi это позволяет делать. А форк чисто ОС фишка а не php. Предметную область изучите сперва: что такое поток?

don Rumata писал:

Все, что я видел на c#, было тугое, неповоротливое, тяжелое в обслуживании и дорогостоящее. PHP + Python или упомянутый тут Rubi - вполне подходят для решения большинства задач.

Вы не представляете сколько я видел тормозных неповоротливых скриптов на PHP способных загрузить любой самый мощный сервер. Значит ли это, что PHP гавно?
Что вы подразумеваете под rubY? ROR? потому, что на голом руби сложно что либо создать

grozny писал:
кстати да, неплохо бы озвучить возраст! icon_smile.gif
я давеча на новом проекте начал доработки и думаю что за хрень такая, юзаются все фичи новейшего пхп 5.4, куда ни плюнь тыща классов, до сути хрен докопаешься, и все это на весьма и весьма простом проектике.

пока случайно не прочитал в скайпе что прошлому разрабу 21 год icon_smile.gif все вопросы отпали, сами такими были)


мне кажется возраст вообще не имеет значения. не вижу никакой связи для сравнения. что касается классов. может просто вы плохо разбираетесь или застряли в 90-х и пишите по старинке без ООП? сложных проектов на таком коде не построить. Хотя не берусь критиковать, т.к. не видел проекта.

grozny писал:
переписывать - это дело тонкое.

Иногда лучше и дешевле заменить лодку, чем плыть в дырявой и постоянно черпать воду ковшом.
Это глубокое заблуждение - боятся, что-то переписать готовое.

PS: Кстати, в плане кадрового вопроса, для php и asp.net людей найти проще, чем на ruby

Последний раз редактировалось: RA Optimus (17/02/13 в 00:51), всего редактировалось 2 раз(а)
цитата
17/02/13 в 00:00
 Stek
Цитата:
Любой проект так или иначе привязан к его главному архитектору. Язык тут не при чем. а если он будет написан на php, а придет человек никогда на нем не писавший?


На пхп все таки гораздо легче найти человека, чем ковырять код на C# под вэб сервис с высокой нагрузкой.
цитата
17/02/13 в 00:04
 RA Optimus
Stek писал:
На пхп все таки гораздо легче найти человека, чем ковырять код на C# под вэб сервис с высокой нагрузкой.


ну ней знай не знай. согласен, что на php программистов больше.
но то, что проще найти хорошего спеца - хз.
сейчас вообще с кадрами неочень.

опять же, чтобы давать такую оценку нужно изучить рынок труда
ваш ответ на чем основан? на личных ощущениях?
цитата
17/02/13 в 00:20
 idk2045
RA Optimus писал:
мне кажется возраст вообще не имеет значения. не вижу никакой связи для сравнения. что касается классов. может просто вы плохо разбираетесь или застряли в 90-х и пишите по старинке без ООП? сложных проектов на таком коде не построить. Хотя не берусь критиковать, т.к. не видел проекта.

ну как сказать... это не необходимый, но иногда на 90% достаточный критерий для оценки smail101.gif
тут уже выяснили, что челу 30 лет, так что да возраст вычеркиваем. а вот если б было 20 - то этот критерий огого как бы возрос! это еще пора юношеского максимализма. ибо к 20 годам программисту ну чисто физически сложно набрать большой опыт именно в реально рабочих проектах. не так что сделал и забыл, т.к. это тока процентов 30% от всей сложности, а поддержка в течение нескольких лет, стойкость кода к форс-мажорам, сложность поддержки кода другими программистами, срок "пассивной" работы без всякого вмешательства и т.д. и т.п. хороший код проверяется годами, как и все в принципе.

и да, ты лучче посоветуй что-нибудь, а то критиковать критиков легко smail101.gif иногда в трепе кто-то бросает и дельные новые мысли, ради этого стоит и кучу страниц пролистать.

насчет классов - мне нравится фраза кого-то там из известных, что все надо делать настолько просто насколько это возможно, но не проще icon_wink.gif иногда бывает явный перебор со сложностью исполнения.
цитата
17/02/13 в 00:42
 RA Optimus
grozny писал:

насчет классов - мне нравится фраза кого-то там из известных, что все надо делать настолько просто насколько это возможно, но не проще icon_wink.gif иногда бывает явный перебор со сложностью исполнения.

+1
цитата
17/02/13 в 02:55
 Дартаньян
RA Optimus: trollface.png это я говорю как бывший саппорт в из EA геймс, С# гавно и клон Java, уж я то думаю игровой сервак при апдейте который падал на 3-6 часов и подлагивал, уж лучше Java.

Из смысла серваков, если программер еще и админить будет то уверен что сервак хакнут через время.

Про Асп это другой разговор, все мои знакомы синьоры Аспа, тупо ушли на другие ЯП.

kit:
Ну если решите писать на C# =) хотелось бы узнать об успехах или фейлах в реализации =).

grozny:
Патерно мания или перфекционизм, мне всегда помогает "бритва Окамы".
цитата
17/02/13 в 03:00
 Stek
Цитата:
ваш ответ на чем основан? на личных ощущениях?

фактически да, ощущение на основе личного опыта, когда сталкивался и продолжаю сталкиваться с ситуациям "сменим язык и все будет круто". А на выходе те же яйца, но вид сбоку.

Вообще имхо странно, что для трафика в 60кк выбирается винда с C# . В одно время очень интересовался технологией раздачи больших объемов трафика. Как правило везде предполагался вариант, что вэб сервер занимается только отдачей, а вся нагрузка разчетов и построения очередей, лежит на отдельно работающем демоне.

Т.е. просто переписывание с php на с# ничего не даст, надо полностью архитектуру продумывать. И имхо *nix в этом плане гораздо гибче будет.
цитата
17/02/13 в 03:22
 Yacc
grozny писал:
насчет классов - мне нравится фраза кого-то там из известных, что все надо делать настолько просто насколько это возможно, но не проще

Кто-то там из известных это Альберт Эйнштейн. icon_smile.gif

По-поводу классов. Конечно когда у тебя сто строк кода можно и без классов обойтись или использовать статические просто как контейнеры методов. Но любой хоть сколько-нибудь сложный проект всенепременно потребует объектной и функциональной декомпозиции, а это классы по-определению. Сами по себе классы вовсе не страшные и не сложные, более того в таких языках как C# или ява ты без класса даже хеллоу мир не напишешь. Другое дело что их бездумное использование приносит больше вреда чем пользы, но тут уж кто на что учился. icon_smile.gif

По сабжу. На мой взгляд у C# в сравнении с php есть один большой плюс - VS, и один большой минус - MS. Если программист в совершенстве владеет первым, а заказчик не боится второго, то можно смело переходить на C#. Ах, да, ещё надо, чтобы и первый и второй любили секс, ибо наебётесь вы с ним, мама не горюй. smail101.gif
цитата
17/02/13 в 03:51
 Дартаньян
Yacc: trollface.png может все таки Окама?
цитата
17/02/13 в 04:12
 Yacc
"Окама" - удел дилетантов. icon_smile.gif
цитата
17/02/13 в 04:47
 Дартаньян
Yacc: trollface.png Вашего Энтшейна знает любой шариков из тентаклей, а старика Окамыча все позабыли.
цитата
17/02/13 в 10:15
 FXIX
немедленно прекратите спорить! smail101.gif

да короче. найдите нормального пхп-хайлоадщика. дайте ему сроку два месяца. пусть он допилит проект.

1. посмотрит что там с базой. оптимизирует. ключи-индексы-хеши.
2. код. профилирование. где-то частичное переписывание. оптимизация всех тонких мест.
3. кеширование всего.
4. настройка всего(апача мускуля нигса) под проект.

вот и все. это будет дешево-сердито по срокам-деньгам. это реально. это реализуемо.
цитата
17/02/13 в 10:20
 RA Optimus
Дартаньян писал:
RA Optimus: trollface.png это я говорю как бывший саппорт в из EA геймс, С# гавно и клон Java, уж я то думаю игровой сервак при апдейте который падал на 3-6 часов и подлагивал, уж лучше Java.


насколько хорошо вы были посвящены в технические аспекты, если являлись саппортом? насколько вы могли оценить проблему падений? я уверен, что дело не в языке программирования или ОС. и что в итоге, переписали все на java и все заработало и все счастливы? или просто услышали, что java рулит поэтому надо все на java делать?

Stek писал:
фактически да, ощущение на основе личного опыта, когда сталкивался и продолжаю сталкиваться с ситуациям "сменим язык и все будет круто". А на выходе те же яйца, но вид сбоку.


судя по трафику там и так все уже круто. смена языка никак не способствует для решения всех проблем. язык разработки и проблемы проекта никак не могут быть связаны. только если не решили писать web на каком-нибудь delphi ;)

Stek писал:

Т.е. просто переписывание с php на с# ничего не даст, надо полностью архитектуру продумывать. И имхо *nix в этом плане гораздо гибче будет.


Об этом кит не написал, что и как там продумано и что внутри и почему переписывать решили.

FXIX писал:
да короче. найдите нормального пхп-хайлоадщика. дайте ему сроку два месяца. пусть он допилит проект.


рассмешил ответ icon_smile.gif) а лучше запереть его в 4 стенах и за 3 дня перепилить весь проект.

PS: Склонен верить, что все проблемы от людей, а не от технологий ;) ИМХО
цитата
17/02/13 в 12:36
 RA Optimus
предлагаю киту пойти на вот этот форум задать этот вопрос http://www.gotdotnet.ru/forums/ icon_smile.gif
цитата
17/02/13 в 12:40
 Yacc
Да, не надо никуда ходить. Надо брать и делать, ибо только собственный опыт, а никак не посты на форуме, поможет составить представление о правильности принятых решений. Можно подумать, если ему здесь или где-то ещё скажут не делай, то он не станет или наоборот. icon_smile.gif
цитата
17/02/13 в 13:39
 DF™
Не вижу конкретных аргументов в пользу C# для данной задачи!
Куча модных слов - "фреймворк", "фундаментальные ограничения архитектуры", "многопоточность", "быстродействие" и тп.
На PHP пишется больше сайтов чем на С#, фреймворков и различных наработок, примеров, различных API для PHP больше чем для C#. PHP - простой язык, много программистов, любой хостинг, любая ОС.
C# мутная архитектура - компилируемая, но также и декомпилируемая, насколько я знаю. Соответственно не стоит сильно уповать на большое быстродействие, оптимизацию и сохранность кода.

Вы же наверняка будете использовать SQL базу, на неё будут ложиться почти все расчеты и основная нагрузка, интерфейсы сейчас все больше перекладываются на JavaScript (тенденции, что скоро браузер будет сам напрямую общаться с SQL базой сервера).
Грубо говоря, остается прослойка между SQL-базой на сервере и JavaScript в браузере, на которую ложиться на так много задач и вы спорите на чем её писать, крича о быстродействии, многопоточности и прочем. Думаете для этих задач C# чем-то круче PHP?! Настолько, чтоб переписывать с нуля софт, который уже неплохо работает - я не уверен в такой необходимости, это обмен "шила на мыло"!
Если вам действительно где-то нужно быстродействие, многопоточность и прочее, то пишите эти модули на С++.
IMHO
цитата
17/02/13 в 14:20
 RA Optimus
DF™ писал:
Не вижу конкретных аргументов в пользу C# для данной задачи!

потому что их нет. так же как нет прямолинейных аргументов в сторону PHP

DF™ писал:

На PHP пишется больше сайтов чем на С#, фреймворков и различных наработок, примеров, различных API для PHP больше чем для C#


Так ли важно количество? на андроид тоже очень много говно-приложений. значит ли это что он лучше iOs?

DF™ писал:
любой хостинг, любая ОС.

+1 в сторону PHP/ тут не поспоришь

DF™ писал:

C# мутная архитектура


мутная для кого? для вас, для меня? так же нельзя катигорично.

DF™ писал:
будете использовать SQL базу, на неё будут ложиться почти все расчеты и основная нагрузка


Есть еще модное слово - nosql.

DF™ писал:
тенденции, что скоро браузер будет сам напрямую общаться с SQL базой сервера


И в чем тут сахар? Что поменяется? нагрузка снизится на сервер? Это все рюшечки.

DF™ писал:

Если вам действительно где-то нужно быстродействие, многопоточность и прочее, то пишите эти модули на С++.
IMHO


И так у нас в студии появился еще один язык. Итого: С++, Java, PHP, C#, Ruby (видимо ROR).

Про C++ не могу не согласится за одним лишь исключением - разрабатывать дольше

PS: Интересно и справедливо услышать мнение гуру в asp.net. Для полноты картины
цитата
17/02/13 в 14:55
 Дартаньян
RA Optimus: trollface.png в треде был еще и Питон. Моя компетентность в этом вопросе более чем нужна, это форум саппорта и разработчиков. Могу вас уверить в том что ПМ который толкнувший тему с СиРешоткой был уволен.

trollface.png Итого насколько я понял с ваших слов, а вы как папа тролль парируете прямых ответов и путаете этим больше обсуждение, что проект будет не целиком переписан на C#,если так и система гибридна что в ЯПе что в ОС то проблем с Сесурити и прочими можно избежать, главное завернуть Окоши за Линукс.

А если все таки все на С#, тогда Облако-Облако-Облако.
цитата
17/02/13 в 16:02
 RA Optimus
Понравился постер.
Видимо я заведомо выбрал не популярное мнение. боюсь, что рейтинг упадет ниже плинтуса icon_lol.gif

Стр. « первая   <  1, 2, 3, 4, 5  >  последняя »


Эта страница в полной версии