Программист на... - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD63508.6847
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 12.10.2011, 15:33
Start Post: Программист на... 
  #11
Dumpty
Senior Member
 
Аватар для Dumpty
 
Регистрация: 08.05.2008
Сообщений: 834
Бабло: $258860
Отправить сообщение для Dumpty с помощью ICQ
По умолчанию

Всем привет.
Нужен программист написать многопоточный серверный софт.
Работа будет с АПИ по СОАП протоколу (http://ru.wikipedia.org/wiki/SOAP).
Крайне важна стабильность работы и максимальная скорость.

Написать нужно чтобы работало на сервере фрибзд. Однако мне отсоветовали ПХП ввиду отсутсвия нормальной многопоточности.
Поэтому тут теперь цена вопроса стоит
Нужно либо функция на ПХП реализованная, которая примет массив данных и будет с ними работать в многопоточном режиме пока они не закончаться. Либо же полностью софт на более быстром серверном языке типа руби или чего-то такого

Естественно функция пхп будет стоить дешевле, чем софт на руби

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

П.С. да забыл, так же важно развитие и поддержка софта на будущее. Будут добавлятся новые моменты и т.д.
Dumpty вне форума  
Старый 14.10.2011, 06:46   #12
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Цитата:
Сообщение от rushter Посмотреть сообщение
кстати, на фотке с ребенком - это Лев Валкин, один из тех перво... авторитетов в функциональном программировании, да и в программировании вообще

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

Эрланг создавался компанией ericsson для обслуживания самой(?) мощной серийной(?) цифровой АТС. А это значит, что в язык фундаментально заложено: 1) надежность/стабильность 2) хорошая работа с сетевыми потоками
Все языки, про которые слышали типичные представители сео индустрии или им сочувствующие - это семейства иперативных языков: php, c, python, javascript, java и тд. Модель этих языков подразумевает последовательное исполнение операторов шаг за шагом.
erlang/ocaml/haskell - функциональные языки - в них нет указаний что за чем выполнять, зато описывается как решать задачу. Это важное свойство таких языков, называется декларативностью. Ну короче, читайте википедию кому интересно. Я сам не особо приобщен к этому.
Функциональные и императивные языки могут сочетать в себе свойства друг друга.

конкретно Лев с командой использует эрланг для проекта в realtime web - управление информационными потоками веба в реальном времени. Их продуктом в том числе пользуются крупнейшие мировые сми.
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 14.10.2011, 07:26   #13
medar
кодер-энтузиаст
 
Аватар для medar
 
Регистрация: 04.04.2007
Адрес: Джамайка
Сообщений: 3,381
Бабло: $447150
По умолчанию

Цитата:
Сообщение от chesser Посмотреть сообщение
кстати, на фотке с ребенком - это Лев Валкин, один из тех перво... авторитетов в функциональном программировании, да и в программировании вообще
Да, вот он - http://lionet.livejournal.com/
Не сказал бы, что он какой-то гуру, но его aboutecho.com хорошо живет и приносит прибыль, у Еминема система комментов на его движке.

Цитата:
Эрланг создавался компанией ericsson для обслуживания самой(?) мощной серийной(?) цифровой АТС. А это значит, что в язык фундаментально заложено: 1) надежность/стабильность 2) хорошая работа с сетевыми потоками
Вот, кстати, еще интересное:

Цитата:
Сегодня получилось пообщаться с Робертом Вирдингом, сотрудником Erlang Solutions и одним из, фактически, соавторов Erlang.

Он сказал очень интересную вещь: оказывается те проблемы производительности, с которыми мы сталкиваемся на краевых случаях при реализации системы на Erlang-е вообще не прогнозировались. В Эриксоновских станциях все данные протекают условно аппаратно, а на эрланге лишь контролирующий софт.

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

http://levgem.livejournal.com/369959.html
medar вне форума  
Старый 14.10.2011, 10:39   #14
medar
кодер-энтузиаст
 
Аватар для medar
 
Регистрация: 04.04.2007
Адрес: Джамайка
Сообщений: 3,381
Бабло: $447150
По умолчанию

Кстати говоря:

Цитата:
- Erlang действительно учится за две недели, это не миф
- Если у вас задача допускает или требует распаралеливания - выбор очевиден
- Когда есть реальная задача, требующая решения - изучение языка идет на порядок эффективнее, чем просто чтение книжек, даже с решением упражнений
http://grey-kristy.livejournal.com/87271.html
medar вне форума  
Старый 14.10.2011, 11:22   #15
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

а где-то в сети болтается видео-каст с Львом Валкиным, где он рассказывает в каких случаях есть смысл переходить с того же пхп на эрланг, рассказывает про их опыт в эхо. Попробую найти. Ну там, причем, именно больше для менеджеров, нежели для прогеров.

http://lionet.livejournal.com/96189.html - а вот его свежий пост
Offtopic
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 14.10.2011, 16:13   #16
WebNinja
grablab.org
 
Аватар для WebNinja
 
Регистрация: 18.09.2007
Адрес: Thailand
Сообщений: 4,893
Бабло: $322264
Отправить сообщение для WebNinja с помощью ICQ Отправить сообщение для WebNinja с помощью Skype™
По умолчанию

Цитата:
Фейсбук на php и вроде держится )
ага, у них там ХипХоп который делает преобразование php->c++

https://github.com/facebook/hiphop-php

Цитата:
Отличительной особенностью языка является модель легковесных процессов (аналогично нитям в OpenMP). Вот почему язык стимулирует создание большого количества параллельных процессов. Они изолированы друг от друга и не имеют общего состояния. Между процессами можно установить связь и получить сообщение об их состоянии. Для взаимодействия процессов используется асинхронный обмен сообщениями. Процесс имеет свою очередь сообщений, а при ее обработке используется сопоставление с образцом.

Отсутствие необходимости блокировки доступа к состоянию процесса для синхронизации их взаимодействия упрощает разработку. Для работы с ресурсами, как правило, создаётся процесс-монитор.

По мнению разработчиков, важным преимуществом языка является принцип работы процесса «let it crash» («пускай падает»). Вместо перехвата ошибок и попытки продолжения работы, часть программы, содержащая рискованный код, выделяется в отдельный «процесс-смертник», который система завершает в случае возникновения ошибки, а процесс-родитель получает соответствующие сообщения и обрабатывает их. Это позволяет избавиться от многочисленных проверок.
нехуйски канешно.
__________________
www.imscraping.ninja
grablab.org | blog

Последний раз редактировалось WebNinja; 14.10.2011 в 16:19.
WebNinja вне форума  
Старый 14.10.2011, 16:59   #17
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Цитата:
Сообщение от WebNinja Посмотреть сообщение
ага, у них там ХипХоп который делает преобразование php->c++

https://github.com/facebook/hiphop-php
так я знаю поэтому и упоминул про акселирацию пхп
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 14.10.2011, 17:06   #18
WebNinja
grablab.org
 
Аватар для WebNinja
 
Регистрация: 18.09.2007
Адрес: Thailand
Сообщений: 4,893
Бабло: $322264
Отправить сообщение для WebNinja с помощью ICQ Отправить сообщение для WebNinja с помощью Skype™
По умолчанию

пхп для них тяжелое наследие если приходится идти на такие свершения как написание ХипХопа.
__________________
www.imscraping.ninja
grablab.org | blog
WebNinja вне форума  
Старый 14.10.2011, 17:13   #19
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Надо Dubstep еще написать - php->asm
Drunk Monk вне форума  
Старый 16.10.2011, 17:53   #20
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Цитата:
Сообщение от WebNinja Посмотреть сообщение
По мнению разработчиков, важным преимуществом языка является принцип работы процесса «let it crash» («пускай падает»).

нехуйски канешно.
там Лев, доказывая несостоятельность node.js, вот что сказал про эрланг:
Цитата:
Вот что поставили во главу угла в Эрланге при его проектировании, давайте сравним:
1. Система должна работать 24/7 и никогда не останавливаться, даже для апгрейда кода.
2. Ошибки всегда бывают, и ошибок избежать нельзя. Нельзя рассчитывать на то, что весь код, который релизится на продакшн, будет идеально и кооперативно себя вести. Для этого существует несколько ортогональных механизмов борьбы с ошибками в рантайме:
3. Связанные процессы: процесс, случайно умирая, посылает убивающий сигнал всем другим процессам, которые от него зависят (его родителям, детям, etc).
4. На основании #3 построены деревья супервизоров, рестартующие сбоящие компоненты, если наступает внутри компонентов фатальные ошибки.
5. Компоненты общаются между собой атомарными асинхронными сообщениями, передающимися по значению: меньше coupling между компонентами.
6. Процессы не имеют общую друг с другом память. Единственная возможность испортить память другому процессу — послать ему сообщение с просьбой на него прореагировать.
это к слову о том, что лучше: не давать ошибкам появляться, или же всегда быть хорошо готовым к их возникновению
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 16.10.2011, 18:26   #21
WebNinja
grablab.org
 
Аватар для WebNinja
 
Регистрация: 18.09.2007
Адрес: Thailand
Сообщений: 4,893
Бабло: $322264
Отправить сообщение для WebNinja с помощью ICQ Отправить сообщение для WebNinja с помощью Skype™
По умолчанию

да на кой хуй нужен этот node.js - использовать джаваскрипт на стороне сервера можно разве что от безысходност ну или следуя каким-то новым трендам моды.
__________________
www.imscraping.ninja
grablab.org | blog
WebNinja вне форума  
Закрытая тема