Тёмный

«Опыт перехода проекта „Авито.Доставка“ с Java на Go» / Илья Лапин, Сергей Поляков​ (Avito) 

VK Team
Подписаться 165 тыс.
Просмотров 13 тыс.
50% 1

Докладчики рассказали, как переписывали микросервисный проект с языка Java на Go, с какими трудностями столкнулись, какие плюсы смогли разглядеть и что с ними стало после этого.
VK Team - это миллион возможностей проявить себя. Мы делаем современные и быстрые интернет-сервисы, доступные каждому. На этом канале делимся опытом компании VK, рассказываем о технологиях, наших образовательных проектах и жизни команды.
😎 Сообщество ВКонтакте: vkteam
👨‍🎓 VK Образование: education.vk.c...
🏆 Чемпионаты: cups.online/
👨‍💻 Карьера в VK: team.vk.company/

Опубликовано:

 

11 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 38   
@НикитаСергеич-о8ю
Авторы доклада, если вы читаете это вот совет: Когда работаете со временем, то в маске милисекунды надо указывать не ".999", а ".000". Тогда не придется костылить преобразование, а у строки после стандартного формата всегда будут нулевые милисекунды в конце.
@Taluksya
@Taluksya 5 лет назад
выглядит так что вместо того чтобы научится поддерживать приложение на java они начали писать велосипеды и костыли на go
@pavela.5245
@pavela.5245 4 года назад
Специалисты на go намного дешевле обходятся. Вот и весь секрет...
@jackdanyal4329
@jackdanyal4329 4 года назад
@@pavela.5245 с чего вдруг, если платить надо столько же сколько и джаваистам, если не больше. учитывая, что джаваистов намного больше на рынке
@dmitryd1572
@dmitryd1572 5 лет назад
Большое спасибо за доклад. На самом деле Golang для реализации бизнес логики во многих случаях решение весьма сомнительное. Надо серьезно считать, а стоит ли. В среднем, довольно часто выходит, что если потратить половину усилий, которую вбросили на Go, на переделку решения без кардинального изменения технологии - результат будет не хуже.
@drVatman
@drVatman 5 лет назад
Го не изучал, по внешнему виду такое ощущение что это где-то между питоном и си. Код на джава читать намного легче, из того что показывали. То что ест меньше памяти я думаю это виртуальная машина просто легче. Джавовская сильно замороченная. + много зависимостей от фреймворков кода в джаве наверняка тоже занимает память.
@TheKovalAndrey
@TheKovalAndrey 5 лет назад
Там в go концепция без виртуальной машины, напрямую в машинный код
@buginsystem8925
@buginsystem8925 2 месяца назад
​@@TheKovalAndreyне, есть рантайм - тот же планировщик горутин, сборщик мусора и т.д.
@yarbersheer8559
@yarbersheer8559 3 года назад
Я учу Go 2 недели... И даже мне видно, что Гоферы в 2018 знали меньше новичков Го сейчас... Передача по ссылке или копии.. А заглавные буквы для кого придумали? Сортировку слайсов тоже есть... Ощущение, что костылили ради костылей...
@МихаилШевелев-м4я
Что посоветуешь для эффективного изучения Go? Я джава джун+, хочу на го перейти
@yarbersheer8559
@yarbersheer8559 Год назад
@@МихаилШевелев-м4я я уже мидл )) Кроме практики, мало что можно посоветовать) Главное не тащить в Go подходы из джавы) Самое важное - понимание архитектуры и построения high cohesion low coupling между сервисами приложения. Со временем покопаться в многопоточности) Главное гореть языком и знаниями)
@Rusiaev
@Rusiaev 4 месяца назад
@@yarbersheer8559 привет, посоветуешь новичку входить в go? Или лучше с java
@obehobeh9984
@obehobeh9984 5 лет назад
Не увидел ничего, кроме того, что можно что-то сделать еще и на Go. Это похоже на курсовую работу по Go, где функционал переведен на другой язык. Ждем курсовую, что это-же самое можно сделать на Python.
@sfera888
@sfera888 9 месяцев назад
Так если переход с Java на Go имеет смысл - то на Python нет - тк это в десятки раз медленнее.
@obehobeh9984
@obehobeh9984 9 месяцев назад
@@sfera888 В следующий раз, когда нормальных аргументов нет, для большей убедительности, надо писать "это в сотни-тысячи раз медленнее"
@sfera888
@sfera888 9 месяцев назад
@@obehobeh9984 ну посмотри бенчмарки go vs Python. Это и есть самый убедительный аргумент
@Денис-ц8п5м
@Денис-ц8п5м 9 месяцев назад
@@sfera888 обычно питон в 1.5-2 раза медленнее с учетом всей логики, а часто и вообще примерно так же
@sfera888
@sfera888 9 месяцев назад
@@Денис-ц8п5м "обычно" подразумевает что у тебя уже много лет опыта с питоном и го одновременно?
@TaranovskiAlex
@TaranovskiAlex 5 лет назад
переписать на GO, чтобы не нанимать Java разработчиков... так а почему не на тот же Python или PHP, раз уж есть експертиза в компании?
@Олег-ю3щ4ъ
@Олег-ю3щ4ъ 5 лет назад
Потому что код должен дешевым, java, php, python не могут этого обеспечить.
@obehobeh9984
@obehobeh9984 5 лет назад
@@Олег-ю3щ4ъ , в чем заключается эта самая "дешевость" у GO по сравнению, например, с Python? Программеры на GO работают за похлебку супа?
@hash8121
@hash8121 5 лет назад
​@@obehobeh9984 Python медленный и ненадёжный. PHP такой же, только ещё ненадёжнее. У Явы очень дорогие в плане памяти потоки. Имеет ли смысл вообще говорить про потоки в Python \ PHP? (в PHP нет потоков, только процессы, они ещё дороже) *upd:* У Go есть довольно емкий по памяти аналог потоков - корутины.
@12zxqwas1
@12zxqwas1 4 года назад
@@hash8121 Для jvm есть Котлин - там корутины. У GO одна но большая проблема - тулинг слабоват. Теже библиотеки для написания ЮТ каменный век по сравнению с java инфраструктурой.
@yarbersheer8559
@yarbersheer8559 3 года назад
потому что питон и пхп - интерпретируемые языки, а го - компилируемый. Ему не надо тратить время на интерпретацию кода при исполнении.
@tvoyaeot6624
@tvoyaeot6624 Год назад
Я думаю, почему Джиленхола нигде не видно, а он гофер теперь оказывается
@mikhailepatko6610
@mikhailepatko6610 5 лет назад
На 8:10 java-код какой-то странный...
@artgentumk
@artgentumk 4 года назад
6:59 есть sort.Slice(), который принимает функцию less, будет по количеству написания столько же как и джавае
@askhat1654
@askhat1654 10 месяцев назад
В Java все переменные, кроме примитивных типов данных, действительно передаются по значению, но это значение является ссылкой на объект.
@Chedmit
@Chedmit 5 лет назад
Сергей Поляков, раскрыл тему, все четко рассказал. Спасибо таким парням! Лайк + Подписка. Больше видосов с ним
@jackdanyal4329
@jackdanyal4329 4 года назад
чуваки решили внести современные технологии по улучшению сервисов и поэтому решили использовать Go. но при этом они используют Spring, который по сути своей медленный и SOAP. полный трэш. про gRPC не слышали вообще или как? и что им мешало тот же спринг поменять на micronaut с использованием Rx и скорость получили бы такую же.
@ascar66
@ascar66 10 месяцев назад
Они же сказали что по джаве нет экспертизы. Решили джаву не учить
@talgat1764
@talgat1764 9 месяцев назад
Ваш комментарий о том что вы не внимательно слушали и не работали в рабочих проектах. Соап древнее дерьмо, но у партнёра соап. Что пойдешь к партнеру убеждать его использовать что то другое?
@tweektorf12
@tweektorf12 5 лет назад
в клетчатой рубашке нормально рассказывает. Наконец-то в рунете что-то интересное появилось.
@Ivan54r
@Ivan54r 5 лет назад
soap - серьезно?
@talgat1764
@talgat1764 9 месяцев назад
Ваш комментарий о том что вы не внимательно слушали и не работали в рабочих проектах. Соап древнее дерьмо, но у партнёра соап. Что пойдешь к партнеру убеждать его использовать что то другое?
@pawsdev
@pawsdev Год назад
JAVA умрет через пару лет
@MrKELESET
@MrKELESET Год назад
Ага, все языки умрут через пару лет тогда
Далее
Уезжаю в лагерь
17:57
Просмотров 286 тыс.