В общем ситуация такая, ищу работу на голенг разраба, но с учетом текущих реалий, работу за последние полгода я так и не нашел. Долго думая решил проверить утверждение вкат через проект. Последние 1,5 месяца усердно разрабатываю свою утилиту для нагрузочного тестирования SQL-ориентированных СУБД. Цель моих страданий:
1. Прокачаться в знаниях
2. Найти работу засчет проекта
3. В идеале получить респект от челиков которые скажут что проект крутой (цель похоже проебана даже не начавшись)
И сейчас мне нужен реалити чек от людей со стороны которые скажут где что норм а где говно. Потому дойдя до худо бедно работающего состояния я в друг понял что проект получился на уровне поделия студентоты, и чет в тильт ушел жесткий, сейчас же веду разработку просто потому что нужно уже хотя до какого-то уровня довести ну просто потому что я блять уже почти 2 месяца на эту поеботу потратил.
Скоро буду выпускать уже версию проекта v0.0.1 у которого будет следующий функционал:
1. Два СУБД на выбор (mysql, postgresql)
2. Параметризация значений SQL запроса через встроенные функции
3. Возможность выбирать между text query и prepared statement
4. Запись логов stdout и/или в файл
5. Запись отчета stdout и/или в файл
6. Из показателей помимо классических доступны перцентили (50, 90, 95) которые реализованы засчет структуры данных TDigest: github.com/caio/go-tdigest
7. Можно сделать плавный выход на указанную нагрузку
8. Можно писать метрики в influxdb
9. Скрипт пишется в toml файле
Что скажете насчет проекта?
> скидываешь на двач весь свой проект
> ради лулзов ебанули 10000000 пул реквестов
> 1000000 issues
> столько же форков
> насрали в почту с наитеплейшими пожеланиями моей родне
> причислили к лику святых на равне со сберкатей и пуковым в желтом свитере
> хорошооооо
> почти 2 месяца на эту поеботу потратил.
ну это считай что вообще нихуя
полноценный опенсорц сделать годы нужны
тем более что тема которую ты выбрал достаточно сложна и требует человеко лет для нормальной проработки. для заявленной тобой темы это не подходит и слишком сложно для новичка.
нужно было сделать простой проект, но хорошо и уделить очень много средств маркетингу.
то есть буквально пусть у тебя будет либа из трех функций делающая что-то одно и простое, но делающая это хорошо и:
1) имеющая вылизанную страницу на гитхабе с объемным ридми и огромной документацией удобной для копи-паста кода
2) имеющая много упоминаний на стаковерфлоу (посты в духе сам спросил - сам ответил иам как раз для такого пиара придуманы)
3) лежащая в открытых репозиториях (мавен централ, пип и т.д.)
4) включенная в какой-нибудь линукс-дистрибутив, например дебиан
код твоего опенсорц-проекта никто смотреть не будет, а вот на надпись что ты меинтенер дебиана, автор либы ХХХ из его дистрибутива внимание обратят
У тебя самооценка слишком завышенная. Никому твой говнокод не нужен. Вообще никому. Ничем от миллионов индусских репозиториев с десятком коммитов не отличается.
>Прокачаться в знаниях
Ок, скорее всего прокачаешься
>Найти работу засчет проекта
Не ок. Всем похуй на твой пет если он не является чем-то широкоиспользуемым
>получить респект от челиков которые скажут что проект крутой
Всем похуй
>Что скажете насчет проекта?
Чем он лучше уже существующих решений?
>Ок, скорее всего прокачаешься
Есть такое кстати, уже в голове много чего успел накопить за эти два месяца.
>Не ок. Всем похуй на твой пет если он не является чем-то широкоиспользуемым
Обидно
>Всем похуй
Обидно
>Чем он лучше уже существующих решений?
Есть расширение K6 для SQL-ориентированных СУБД:
https://sql.x.k6.io/
Только для того чтобы это говно завести надо:
1. Расширения в K6 собираются через пересборку самого K6, ну типа у тебя есть простой K6, и вот ты типа решил собрать xk6-sql, кое-как пересобрал, а как теперь возвращаться к обычной версии? В общем приходится поебаться.
2. Обязательно знать как писать на JS
3. Обязательно знать как устроены скрипты на K6, что такое executor, check, setup, options и тд.
4. K6 потребляет относительно большое кол-во памяти
Есть встроенный функционал у Jmeter для тестирования SQL-ориентированных СУБД через JDBC:
https://jmeter.apache.org/usermanual/build-db-test-plan.html
Но чтобы на Jmeter запустить тест тебе надо:
1. Установить jre-jdk
2. Потратить время чтобы научится работать с Jmeter (что такое sampler, как регулировать нагрузку, что такое thread group, что такое тест план)
3. Jmeter потребляет как минимум вдвое больше памяти чем K6
4. Для записи метрик в тот же InfluxDB нужно ставить плагин
Есть вот такая утилита:
https://github.com/sj14/dbbench
Но это больше про бенчмарк а не про нагрузочное тестирование, то есть свой конкретный запрос ты не протестируешь просто потому что нет возможности составить гибкий сценарий, нет возможности получить подробный отчет, тупо сколько запросов в сек было обработано.
Ну вот в чем тут блять я проигрываю? Даже если сделаю худо бедно работающий продукт ну он определенно свою нишу займет.
>Ок, скорее всего прокачаешься
Есть такое кстати, уже в голове много чего успел накопить за эти два месяца.
>Не ок. Всем похуй на твой пет если он не является чем-то широкоиспользуемым
Обидно
>Всем похуй
Обидно
>Чем он лучше уже существующих решений?
Есть расширение K6 для SQL-ориентированных СУБД:
https://sql.x.k6.io/
Только для того чтобы это говно завести надо:
1. Расширения в K6 собираются через пересборку самого K6, ну типа у тебя есть простой K6, и вот ты типа решил собрать xk6-sql, кое-как пересобрал, а как теперь возвращаться к обычной версии? В общем приходится поебаться.
2. Обязательно знать как писать на JS
3. Обязательно знать как устроены скрипты на K6, что такое executor, check, setup, options и тд.
4. K6 потребляет относительно большое кол-во памяти
Есть встроенный функционал у Jmeter для тестирования SQL-ориентированных СУБД через JDBC:
https://jmeter.apache.org/usermanual/build-db-test-plan.html
Но чтобы на Jmeter запустить тест тебе надо:
1. Установить jre-jdk
2. Потратить время чтобы научится работать с Jmeter (что такое sampler, как регулировать нагрузку, что такое thread group, что такое тест план)
3. Jmeter потребляет как минимум вдвое больше памяти чем K6
4. Для записи метрик в тот же InfluxDB нужно ставить плагин
Есть вот такая утилита:
https://github.com/sj14/dbbench
Но это больше про бенчмарк а не про нагрузочное тестирование, то есть свой конкретный запрос ты не протестируешь просто потому что нет возможности составить гибкий сценарий, нет возможности получить подробный отчет, тупо сколько запросов в сек было обработано.
Ну вот в чем тут блять я проигрываю? Даже если сделаю худо бедно работающий продукт ну он определенно свою нишу займет.
А тут простой toml, в котором можно практически сходу все запустить из коробки, максимум что надо это почитать про встроенные функции которые генерируют параметризированные значения и все, то есть ебаться и вникать во что-то я пытаюсь свести к минимуму. Максимум юзер френдли
Ну вот если тред не потонет и я успею к этому моменту выпустить версию v0.0.1 я молча тебя тегну и скину ссылку сюда, пока не готово, ещё пару дней
А как проверяющий поймёт, что твой проект не говно?
Он же сам не шарит в нагрузочном тестировании БД.
Должно быть что-то простое, что любой может проверить.
Либо что-то популярное, что уже проверено пользователями.
К тому же, а ты реально хочешь на работе заниматься нагрузочным тестированием? Сделай что-то более мейнстримное.
>А как проверяющий поймёт, что твой проект не говно?
А вот это вопрос кстати, как доказать что проект не говно?
>Ну вот в чем тут блять я проигрываю?
в том что ты не знаешь нихуя а взялся писать приложение уровня JMeter (30 лет активной разработки, овер 500к строк чистого кода, ориентировочная трудоемкость проекта 100 человеко-лет) ты бы еще свою ось писать начал
>тг ии бот для генерации 2д тянок с хуями?
я тебе выше >>390 дал рецепт
вот примеры
https://github.com/tldr-pages/tldr
500 строк кода
овер 50к звезд на гитхабе
суть: показывает только рабочие примеры вместо стен текста из man
https://github.com/nvbn/thefuck
1000 строк кода
78к звезд
суть: одна(!) консольная команда без параметров
Пишешь git push → получаешь ошибку → пишешь fuck → исправляется автоматически.
и таких примеров тысячи
ты же взялся за проект который под силу только очень скилованному инженеру с большим количеством времени и мотивации