@proGO

Страница 1408 из 1674
Alexandr
28.04.2018
16:42:12
ну и тут имеется в виду если не хочется, но по-другому никак
Реально по другому никак? Или только валидировать параметры перед запросом?

Anton
28.04.2018
16:43:58
Roman
28.04.2018
16:46:16
На кури, https://www.techempower.com/benchmarks/. Если шибко умный - у тебя все шансы стать звездой. И я нигде не говорил, что Go плох. На данный момент, он решает нудные задачи, как когда-то php. Вот собственно и все. Но если нужно что-то серьезное - go будет в пролете, субъективное мнение
Дима, может хватит на личности постоянно переходить)) давай уж на более позитивной ноте чтоли беседовать в субботу то)) Я сам много работал на C++ и использовал бы его только тогда, когда нужно 100% performance. Как уже многократко и везде упоминалось: человекочасы зачастую дороже железа. Если я могу написать что-то на Go и поставить 2 машины, нежели писать всё на C++, то я возьму Go, C++ только в самом крайнем случае. а PHP... он и в африке PHP, убогий, старый, неуклюжий, медленный, и всё никак не вымрет потому-что простой до ужаса)

но споры по языкам они конечно чаще всего бессмысленны) лучше на кодинг время потратить)

Google
Roman
28.04.2018
16:53:28
я тоже так считаю, к сожалению в Германии 90% всех контор малого и среднего размера приоризируют "старый добрый и проверенный PHP", постепенненько увелчивается доля JavaScript. Более менее большие конторы (хотя их Германии не много, это не IT страна к сожалению) пишут на Java, который я тоже лично призераю. C++ часто можно встретить в авто индустрии, чаще во фронтэнде Go пока нигде здесь не встречал, пишу на нём лишь потому-что самостоятелен и сам-себе-менеджер

FRD Official - Dmitriy
28.04.2018
16:59:02
ладно, проехали, забили)
Согласен, постараюсь быть корректней

FRD Official - Dmitriy
28.04.2018
17:00:48
Их очень НУЖНО, использовать в той нише, для которой они изначально предназначены

FRD Official - Dmitriy
28.04.2018
17:01:26
Жабу то за что презирать
Ну приблизительно за 20 лет торможения

Olzhas
28.04.2018
17:01:51
FRD Official - Dmitriy
28.04.2018
17:01:56
Вебчик
Еще и по разные стороны

Roman
28.04.2018
17:02:27
Жабу то за что презирать
личная неприязнь, так сложились эмоцианальные ассоциации. Слишком прожорливый, слишком многословный, требует JVM..

FRD Official - Dmitriy
28.04.2018
17:03:18
Зато она принесла жвм
Которую? Их полуживых сейчас 4е штуки и все с косяками

Olzhas
28.04.2018
17:04:29
Ну приблизительно за 20 лет торможения
Ну и для того чтобы сделать приложение, которое будет отвечать довольно строгим бизнес требованиям и в адекватные сроки лучше жабы пока нет

Google
Roman
28.04.2018
17:05:06
Зато она принесла жвм
ох, уж лучше бы не приносила))) зачем Virtual Machine, если можно как Go компилить runtime в бинарь?

Olzhas
28.04.2018
17:05:06
Которую? Их полуживых сейчас 4е штуки и все с косяками
А разницы нет какую - многие довольно хорошие языки работают под жвм

FRD Official - Dmitriy
28.04.2018
17:07:30
Olzhas
28.04.2018
17:08:02
Хоть на пхп, хоть на жабе хоть на го

Постепенно проект превращается в монстра с миллионами строк

Olzhas
28.04.2018
17:08:52
И никто не знает в точности как он работает

микросервисы нам в помощь
Микросервисами все дырки не закрыть

FRD Official - Dmitriy
28.04.2018
17:10:09
А разницы нет какую - многие довольно хорошие языки работают под жвм
Интерпритатор "хорошего языка" можно написать на бейсике разлива 90х годов. И это ниразу не сделает бейсик хорошим языком

Roman
28.04.2018
17:10:16
Kirill
28.04.2018
17:10:30
а почему пхп медленный? в продакшене бегает сравнимо с дотнетом дотнетом конечно сам клей жует на завтрак в разы быстрее питона в режиме простоя не ест памяти, иногда полезно

Kirill
28.04.2018
17:11:28
Он не медленный, он очень узко специализированный
ну веб технологии это не самая узкая ниша)00

Olzhas
28.04.2018
17:12:13
поясни плиз
В некоторых случаях необходима скорость разработки

FRD Official - Dmitriy
28.04.2018
17:12:17
Сейчас быстрее пхп из интерпретируемых языков только жс и луа
Внезапно perl, хоть и аксакал, но все еще быстрее

Olzhas
28.04.2018
17:12:29
Если делать монолитом, то код быстрее пишется

К примеру у нас есть приложение на спринге, монолит

Google
FRD Official - Dmitriy
28.04.2018
17:13:23
Olzhas
28.04.2018
17:13:33
Работает и ладно, кода много, но лично я хз как делить его на микросервисы и не вижу в этом смысла

Просто куча форм

Den
28.04.2018
17:14:03
вы минимальный пример сделайте
Александр, я сейчас проверил, проблема у меня возникает при чтении данных из файла, если я переменную задаю в коде то все ок, помогите, может кодировка не та.

Olzhas
28.04.2018
17:15:16
Просто куча форм
Нет хайлоада, особо ничего такого нет

Кроме криптографии

FRD Official - Dmitriy
28.04.2018
17:15:33
Работает и ладно, кода много, но лично я хз как делить его на микросервисы и не вижу в этом смысла
А попробуй оаспределить задачи... все окажется гораздо более миикросервисней (вот ввернул-то)

Roman
28.04.2018
17:16:17
Если делать монолитом, то код быстрее пишется
думаю всегда легче с монолита начинать, особенно если команда небольшая. Главное изначально не превращать всё в спагетти и придерживаться какой-то архитектуре

Olzhas
28.04.2018
17:16:32
Микросервисы нужны когда не просто монолит большой

А когда приложение можно разделить на несколько частей, которые мало влияют друг на друга

Roman
28.04.2018
17:19:28
модульный монолит можно запросто превратить в микросервисы. Сейчас мы например работаем по тому принципу, что у нас GraphQL API, которая резолвится абстрактным интерфейсом движка, функции которого можно имплементировать в разных конкретных движках. на данный момент у нас 2 движка, mock_engine движок который в ОЗУ работает и neo_engine на Neo4j бэкэнде.. по сути этот API представляет собой Gateway в микросервисной архитектуре. По мере роста проекта определённые части графа и функции движка можно распределять на отдельные микросервисы

Olzhas
28.04.2018
17:20:34
Теоретически мы можем разделить нынешнее приложение на микросервисы

Довольно просто

Roman
28.04.2018
17:20:49
делить до тех пор, пока монолит не превратится в gateway

Olzhas
28.04.2018
17:21:00
Но проблема в том что оно нужно было вчера

И монолит в этом отношении было быстрее сделать

Так то я вижу что можно разделить приложение в данный момент минимум на 6 частей

Но мы уже не получим денег за него, так как проебали все сроки

Google
Roman
28.04.2018
17:23:08
начинать с микросервисов, я считаю - ошибка. лишний overhead коммуникации, лишняя сложность в деплойменте имеет смысл начинать с микросервисов если команда большая и разнообразная, а не стартап на ранних стадиях развития или микроконтора)

FRD Official - Dmitriy
28.04.2018
17:26:23
И монолит в этом отношении было быстрее сделать
А потом уныло ныть про "оперативки побольше поставьте"... из всех моделей масштабирования пока что выжила только горизонтальная, и жвм и монолиты тут, мимо кассы

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

Anton
28.04.2018
17:29:59
далеко не всем нужно горизонтальное масштабирование

Den
28.04.2018
17:31:10
Помогите, даю гошке через стринговую переменную JSON DUMP, анквотится, гружу через файл не анквотится. В какой кодировке нужно кормить файлом

Admin
ERROR: S client not available

Anton
28.04.2018
17:32:34
примеров не приведу но по моим наблюдениям >90% веб-сайтов не вырастают до состояния когда одного современного сервера (с базой вынесенной на соседний серврер) не хватает и нужно распиливать приложение на кластер микросервисов.

Den
28.04.2018
17:43:38
Не знаете?

FRD Official - Dmitriy
28.04.2018
17:44:57
Не знаете?
Вроде го все вкуривает в юникоде. Может в play?

Den
28.04.2018
17:45:45
Anton
28.04.2018
17:47:59
ну и горизонтальное масштабирование возможно без микросервисов. Если все данные вынесены в базу/redis/memcached e.t.c. то просто запускаем параллельно N копий монолита и балансируем пользователей.

FRD Official - Dmitriy
28.04.2018
17:48:15
сам монолит при этом становится gateway'ем
Не всегда. Простой пример, размащывание RBAC,.по нескольким инстансам BD, в корне меняет архитектуру

Anton
28.04.2018
17:54:09
точка отказа тут база данных и решается эта проблема похоже что для монолита, что для микросервисов

Google
Человек
28.04.2018
17:55:59
Как записывать файл не перезаписывая его?

Anton
28.04.2018
17:58:18
Как записывать файл не перезаписывая его?
открыть в режиме append? В доке есть пример: https://golang.org/pkg/os/#OpenFile

FRD Official - Dmitriy
28.04.2018
17:58:42
точка отказа тут база данных и решается эта проблема похоже что для монолита, что для микросервисов
Ты только что привел список bd, оперирующих (в основном) в памяти, ты как их масштабировать собираешься? Переписывать менеджер памяти в ОС? ? Торвальдс, ты когда русский выучил?

Anton
28.04.2018
17:59:25
шардинг - точно так же как в случае баз которые не в памяти (но опять таки это ортогонально с микросервисами)

Den
28.04.2018
18:02:28
Ты только что привел список bd, оперирующих (в основном) в памяти, ты как их масштабировать собираешься? Переписывать менеджер памяти в ОС? ? Торвальдс, ты когда русский выучил?
Normal: {\"channel\":\"buu\",\"name\":\"john\", \"msg\":\"doe\"} Quoted: "{\\\"channel\\\":\\\"buu\\\",\\\"name\\\":\\\"john\\\", \\\"msg\\\":\\\"doe\\\"}" Unquoted: {\"channel\":\"buu\",\"name\":\"john\", \"msg\":\"doe\"} Unmarshalling Normal... | Errors: invalid character '\\' looking for beginning of object key string | main.Msg{Channel:"", Name:"", Msg:""} Unmarshalling Quoted... | Errors: json: cannot unmarshal string into Go value of type main.Msg | main.Msg{Channel:"", Name:"", Msg:""} Unmarshalling Unquoted... | Errors: invalid character '\\' looking for beginning of object key string | main.Msg{Channel:"", Name:"", Msg:""}

Вот вывод если делать через файл

Normal: {"channel":"buu","name":"john", "msg":"doe"} Quoted: "{\"channel\":\"buu\",\"name\":\"john\", \"msg\":\"doe\"}" Unquoted: {"channel":"buu","name":"john", "msg":"doe"} Unmarshalling Normal... | main.Msg{Channel:"buu", Name:"john", Msg:"doe"} Unmarshalling Quoted... | Errors: json: cannot unmarshal string into Go value of type main.Msg | main.Msg{Channel:"", Name:"", Msg:""} Unmarshalling Unquoted... | main.Msg{Channel:"buu", Name:"john", Msg:"doe"}

вот через стринговую переменную

FRD Official - Dmitriy
28.04.2018
18:07:32
хмм, честно гря не понял
Допустим, у тебя в монолите есть табличка с пользователями, табличка с их ролями и куча остальных таблиц. В случае монолита, такие вещи решаются на уровне запросов к db, а как ты отрулишь это на нескольких сервисах и нескольких db? Единственный правильный ответ - поднимешь бизнес-логику с уровня db, на уровень обработчиков. Теперь представь себе объем работ

Человек
28.04.2018
18:17:41
открыть в режиме append? В доке есть пример: https://golang.org/pkg/os/#OpenFile
Я неправильно выразился, мне как раз таки append не нужен, мне ничего не нужно, я просто создаю файл и записываю в него информацию 1 раз больше он не изменяется.

Или просто добавлять в него ""

Anton
28.04.2018
18:19:06
ну тогда просто проверять что файл есть и не трогать (если нет - записать)

Человек
28.04.2018
18:23:24
Можно же просто ничего не добавлять, че я так затупил. делать append("")

Den
28.04.2018
18:40:44








Страница 1408 из 1674