Я не собираюсь долго болтать об этом вопросе о том, что я тестировал и число хрустел. Меня больше интересуют фактические современные практические выступления.Влияние RDBMS на Golang
Я читал тонны статей уже, а некоторые из них довольно скептически или очень про в одну библиотеку. В настоящее время я тестирую бит gorp
, но я не знаю, как сравнить характеристики такой библиотеки по отношению к другим.
Я знаю, что gorp
является дополнительным слоем, который пытается добавить ORM к базовому драйверу/реализации SQL, но, увидев чрезвычайно чистый код Go и находясь очень близко к кости во всем, что он делает. Это не похоже на PHP/Python/JAVA, что я тоже использую, когда вам приходится перемещаться по бесконечным уровням сложности, чтобы фактически увидеть, что делает пакет по существу.
Итак, мой вопрос в том, может ли кто-нибудь поделиться (тесты всегда приветствуются :)) их опыт и знания по этому вопросу.
Я не думаю, что решение NoSQL-типа является вариантом для моих проектов. Все мои проекты всегда сильно зависят от бизнес-логики и переплетенных отношений. Я также задаюсь вопросом, станет ли Postgres победой над MySQL. С Django (Python) я заметил значительное увеличение производительности с помощью Postgres, но я никогда не нашел доказательств в этом вопросе, если это было связано с реализацией ядра Postgres или просто использованием Django для использования обертки.
Небольшое обновление
После перечитывая вопрос, который я заметил, что я вроде пропустил реальную цель этого. Я на самом деле ищут наиболее подходящее решение SQL, которое будет в наименьшей степени замедлять сам Golang. Я знаю, что SQL работает параллельно, но также и относительно интенсивного трафика при запуске его в качестве веб-службы. Я не буду очень беспокоиться о том, чтобы снова сбросить часть ORM, если это сильно повлияет на производительность.
вы бы _very_ трудно заметить разницу в производительности между любым ОРМ и другим. То, что _can_ делает разницу, - это такие запросы, которые вы склонны использовать, и на которые может влиять стиль ORM. – Javier
@javier спасибо, это конечно звучит утешительный. Я очень рад видеть, насколько быстрее работает Go при создании веб-сервиса. Это то, что я чувствовал, когда перешел из CodeIgniter/DataMapper в Django для своих личных проектов. Go снова дает такое же чувство к Django, но все еще не теряя слишком большого контроля и простоты. Go было удивительно просто, с тем, к чему я привык, с классическими вариантами C. –
@Javier суммирует это хорошо. Ваши запросы окажут самое большое влияние на производительность: хорошее использование индексов, лимитов и т. Д. Обеспечит вам лучшую прибыль, чем выбор библиотеки. gorp довольно хорош для «ORM», но если вы хотите посмотреть на более простые альтернативы, рассмотрите также https: // github.com/jmoiron/sqlx и/или https://github.com/eaigner/jet – elithrar