|
|
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
А C++ когда "юзер начинает борзеть" не подохнет? Точно так же недетерменированно уйдет в своп и недетерменированно будет тормозить Известны требования. примерно известны возможности/требования софта. Можно прикинуть сайзинг (плюс минус километр). Любая защита от "не борзеть" - возможна только организационная (балансир нагрузки, мониторинг, авто-убивание оборзевших/зависших пользователей/задач). От ЯП тут ничего не зависит. IMHO & AFAIK ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 19:12 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevА C++ когда "юзер начинает борзеть" не подохнет? Точно так же недетерменированно уйдет в своп и недетерменированно будет тормозить Известны требования. примерно известны возможности/требования софта. Можно прикинуть сайзинг (плюс минус километр). Любая защита от "не борзеть" - возможна только организационная (балансир нагрузки, мониторинг, авто-убивание оборзевших/зависших пользователей/задач). От ЯП тут ничего не зависит. IMHO & AFAIK В СПП ты можешь до байта сказать сколько твой софт потребил памяти и в зависимости от этого организовать грамотную обработку событий Например сбросить очередь на диск Или отправить пользователю отказ в обслуживании При этом никто не зависнет и не отожрет процессорное время под безсполезный ГЦ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 19:15 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
semen.s.semenkealon(Ruslan)норма это среднее, ну грубо говоря как везде, а "как везде" у нас да и в других местах к сожалению ровно так как вы описали :-( А я не у вас, я уже давно работаю со штатами И вот у них подхода "перегрузи хули" я не встречал - по кр мере где работал.не вы один, и вам дико везло и живёте вы всё же "у нас", а не там, как я понимаю "Нафигачим и спродакчим" всё же общий тренд, диаметры в круги пересчитывать не мешки ворочать. Платить как прогеру крупного города в штатах вам всё равно врят ли будут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 19:58 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)semen.s.semenпропущено... А я не у вас, я уже давно работаю со штатами И вот у них подхода "перегрузи хули" я не встречал - по кр мере где работал.не вы один, и вам дико везло и живёте вы всё же "у нас", а не там, как я понимаю "Нафигачим и спродакчим" всё же общий тренд, диаметры в круги пересчитывать не мешки ворочать. Платить как прогеру крупного города в штатах вам всё равно врят ли будут. Пусть так значит дело не в штатах - а в проектах Тем лучше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 20:00 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskyполудухэто типа, заходим в детский сад, ставим задачу максимально полно и... хаваем PROFIT!? опыт программиста у него не играет в написании CRM, ишь ты, архитектор-медиум 100го лвла Если в результате плохого ТЗ даже мегапрофессионал пишет несколько лет, а надо было за полгода, то это и есть независимость от опыта. Понятно что программеры что-то должны уметь. Не надо тут на детсад ссылаться. Но уровень при плохом ТЗ не имеет значения. вообще-то имеет заказчик сам не знает, чего хочет я лучше своих заказчиков знаю, что им в бизнесе пригодится за исключением конечно супер-узкоспециализированных деталей бизнеса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 21:37 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
semen.s.semenФэйтл Эрапропущено... <...> в данном конкретном случае означает "и т.д. и т.п.", т.е. - "много раз уже говорено". Все равно не понял что имеется ввиду. delete[] buffer вообще нехорошо Лучше std::unique_ptr<char[]> либо же на стеке Это я так для примера указал и малька накосячил может всё-таки на векторах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 21:38 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
полудухя лучше своих заказчиков знаю, что им в бизнесе пригодится А никто не сомневается что вы в это верите )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 22:16 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskyполудухя лучше своих заказчиков знаю, что им в бизнесе пригодится А никто не сомневается что вы в это верите )) верят в церкви, а я это практикую и совсем не первый год заказчик понятия не имеет, что всё уже 100 раз разработано до него и своими внезапными хотелками заведёт проект в дебри, которые потом рефакторить в 3 раза дольше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 22:54 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
полудухsemen.s.semenпропущено... Все равно не понял что имеется ввиду. delete[] buffer вообще нехорошо Лучше std::unique_ptr<char[]> либо же на стеке Это я так для примера указал и малька накосячил может всё-таки на векторах? https://www.cs.bham.ac.uk/~hxt/2015/c-plus-plus/stack.pdf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2018, 23:27 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
semen.s.semen, самое смешное в том, что мало кто из современных плюсовиков умеет работать со стеком понимает когда и как вписать цепочку "создать-удалить объект" бояца... :-) вы будете белой вороной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 00:16 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)semen.s.semen, самое смешное в том, что мало кто из современных плюсовиков умеет работать со стеком понимает когда и как вписать цепочку "создать-удалить объект" бояца... :-) вы будете белой вороной Возможно Однако если проект таки решили делать на плюсах - это определенный уровень интеллекта сразу по сравнению с явой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 00:29 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
semen.s.semenполудухпропущено... может всё-таки на векторах? https://www.cs.bham.ac.uk/~hxt/2015/c-plus-plus/stack.pdf это C (несмотря на название "c-plus-plus") в C++ так не пишут: автор Код: plaintext 1. 2. 3. 4. 5. 6. и там используются scanf()/printf(), когда в C++ это cin/cout. в C++ есть std::string и он сделан на векторах юзать массивы - моветон (цитирую Страуса) std::vector + STL стэк это НЕ контейнер, он юзает контейнеры и ему можно скормить как вектор, так и deque тесты vector VS deque ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 07:52 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
полудух, это по мотивам гугла как я понимаю "don't use cout. it's very slow ..." стек, правильно, это не контейнер, это просто участок памяти, который выделяется потоку для хранения временных переменных, адресов возврата и пр. фигни именно в таком смысле semen.s.semen и использует это название И Страус в определённом смысле прав, нету времени на тот ширпотреб что приходит (а это больше 90%). Объяснять им основы, которые проходят школьники необосновано дорого, если они до этого не допетрили. Главное что бы хоть как-то работало и не так страшно выглядело, типичный #фигачимпродакчим. semen.s.semen, вот так оно, попадёшь в такой уровень и будешь потом каждую строчку своего кода, не по инструкции, как для особо одарённых расписывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 10:19 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
semen.s.semen, слово alloca из рук новичка вызывает обоснованный страх у седого лида ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 10:29 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
azsxВы в таких условиях просто не напишете на С++ учётную систему. А на java возьмутся и напишут. Плохо, с тормозами, с переизбытком требований к серверу. Но будет работать. А если узкое место БД или канал, так и производительность также значения иметь не будет. По поводу производительности. Современный энтерпрайз разрабатывается с учетом того что его положат в облако где он будет наращивать мощности по мере нагрузки. Добавляя вычислительные сущности. В этих условиях если не брать во внимание детерминизм отклика а только пропускную способность то С++ или Ассемблер не будут иметь особого преимущества перех PHP или прочего. Эпоха доткомов закончилась а следовательно и закончилась парадигма 1 сервер - одна задача. Сегодня приложение - это сеть взаимодействующих друг с другом модулей. Вспоминаем также движение по пути от IAAS -> SAAS-> .... FAAS. Последнее означает Function As Service. Вы не разрабатываете сервер или задачу. Вы делаете бизнес-функцию. Она масштабируется автоматически в облаке в зависимости от потребностей. Поэтому главная задача - реализовать бизнс-логику правильно. Просто без ошибок. Требования по latency/throughput - это NFR. Non-Functonal-Requirement и их обсуждают не сразу а потом. По мере необходимости. Данный топик начинался с высоконагруженных систем но тем не менее мы уже в топике уклонились достаточно далеко и поэтому я позволю себе обсуждать не только такие системы (коих очень мало. Менее 1%) а все информационные системы в принципе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 10:58 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
полудухsemen.s.semenпропущено... https://www.cs.bham.ac.uk/~hxt/2015/c-plus-plus/stack.pdf это C (несмотря на название "c-plus-plus") в C++ так не пишут: автор Код: plaintext 1. 2. 3. 4. 5. 6. и там используются scanf()/printf(), когда в C++ это cin/cout. в C++ есть std::string и он сделан на векторах юзать массивы - моветон (цитирую Страуса) std::vector + STL стэк это НЕ контейнер, он юзает контейнеры и ему можно скормить как вектор, так и deque тесты vector VS deque В С++ может так и не пишут - но в С++ используется стек и весьма активно Если Вы не понимаете в чем разница между char buffer[12]; и char * buffer = new char[12] То как бы ээээ .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 11:10 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)от так оно, попадёшь в такой уровень и будешь потом каждую строчку своего кода, не по инструкции, как для особо одарённых расписывать. Не нужно мен агетировать У меня большой опыт работы с идиотами не очень компетентными коллегами из явы И тут справлюсь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 11:11 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
полудухи там используются scanf()/printf(), когда в C++ это cin/cout. Остается только удивлятся как мир С++ разработчиков воспринял cin/cout. Да и вообще в С++ много балласта который иммет чисто машинное назначение. Но не человеческое. Я вспоминаю цитаты классиков. Программы пишуться людьми для прочтения людей. И лишь в некоторых редких случаях - для прочтения машиной. Лучшие программы пишуться на бумажке. Закодировать их в исходнике - второстепенная вещь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 11:24 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
semen.s.semenkealon(Ruslan)от так оно, попадёшь в такой уровень и будешь потом каждую строчку своего кода, не по инструкции, как для особо одарённых расписывать. Не нужно мен агетировать У меня большой опыт работы с идиотами не очень компетентными коллегами из явы И тут справлюсь Семен. Я почитал вопросы которые вы задавали в форуме. У меня сложилось впечатление что это вопросы С++ junior developer-а. Это не выпад. Я просто прошу вас быть чуточку скромнее в форуме. И не стоит отвечать мультиками. Это оффтоп не несущий смысла и я его буду удалять просто на основе модераторских положений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 11:28 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
maytonsemen.s.semenпропущено... Не нужно мен агетировать У меня большой опыт работы с идиотами не очень компетентными коллегами из явы И тут справлюсь Семен. Я почитал вопросы которые вы задавали в форуме. У меня сложилось впечатление что это вопросы С++ junior developer-а. Это не выпад. Я просто прошу вас быть чуточку скромнее в форуме. И не стоит отвечать мультиками. Это оффтоп не несущий смысла и я его буду удалять просто на основе модераторских положений. Ну я как бы и не скрывал особо что С++ только начал изучать ))) А оффтоп поступил от Вас Мы тут обсуждаем серьезную тему - а вы какой то маркетинговый вброс сделали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 11:41 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
maytonЭто не выпад. Я просто прошу вас быть чуточку скромнее в форуме. Да как бы я весьма тут скромен Вы почитайте контекст обсуждения с Русланом Он мне мягко намекает что смысла в С++ идти нет - так как уровень будущих коллег мягко говоря ожидается невысоким Как мы выяснили ряд людей не понимает что такое стек и думает что это STL коллекция в контексте нашего обсуждения Я его успокоил и сказал что у меня большой опыт работы с идиотами При это я не называл идиотами никого из присутствующих. Я Вас тоже призываю не быть столь мнительными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 11:48 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)И Страус в определённом смысле прав, нету времени на тот ширпотреб что приходит (а это больше 90%). Объяснять им основы, которые проходят школьники необосновано дорого, если они до этого не допетрили. Главное что бы хоть как-то работало и не так страшно выглядело, типичный #фигачимпродакчим. а вас хлебом не корми, дай на асме продактить нахера все эти абстракции и оптимизации, давайте писать каждый раз по-новому свой собственный стринг и ходить мимо кэша! semen.s.semenВ С++ может так и не пишут - но в С++ используется стек и весьма активно Если Вы не понимаете в чем разница между char buffer[12]; и char *buffer = new char[12] То как бы ээээ .... в первом случае инициализация массива (это old-way строка в C, а в C++ для этого есть std::string) во втором указатель на массив (c инициализацией) стэк используется везде . и весьма активно. что дало повод вам думать, что я не знаю, что такое стэк или указатель ( я конечно сам джун в начале пути, но кое-что уже узнал. авторКак мы выяснили ряд людей не понимает что такое стек и думает что это STL коллекция в контексте нашего обсуждения чушь, не было такого. вы изначально изобразили C-way в контексте C++ semen.s.semenВ С++: char buffer[] = new char[12] delete[] buffer; так делали в C а в C++ есть std::string, который работает на векторах Потом вы предложили чистить память стэком... вместо delete[]... хотя там просто string удалить надо... но по итогу в стэках не разбираюсь Я ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 12:34 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
maytonполудухи там используются scanf()/printf(), когда в C++ это cin/cout. Остается только удивлятся как мир С++ разработчиков воспринял cin/cout. Да и вообще в С++ много балласта который иммет чисто машинное назначение. Но не человеческое. Я вспоминаю цитаты классиков. Программы пишуться людьми для прочтения людей. И лишь в некоторых редких случаях - для прочтения машиной. Лучшие программы пишуться на бумажке. Закодировать их в исходнике - второстепенная вещь. так это нормально (с) целый ООП придумали для нас, обезьян ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 12:35 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
полудуха в C++ для этого есть std::string) Я икренне настаиваю и призываю Вас идти в Яву Там Вы реально будете чувствовать себя комфортно и найдете единомышленников ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 12:38 |
|
||
|
Высоконагруженные системы
|
|||
|---|---|---|---|
|
#18+
maytonВ этих условиях если не брать во внимание детерминизм отклика а только пропускную способность то С++ или Ассемблер не будут иметь особого преимущества перех PHP или прочего. кстати, касательно откликов, там ради только отклика уже стоит смотреть в ту сторону ) если имели удовольствие кликать по сайту, написанному на C++, там примерно как в комп-игре отклик, а не как обычно в браузере клиенты обязательно заметят эту особенность именно вашего бренда конечно, если сам контент говно они не оценят, но если всё на уровне, это будет жирный плюс когда сайт работает мгновенно, это всегда ценится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2018, 12:40 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39752640&tid=2017694]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
180ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 545ms |

| 0 / 0 |
