|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
История такая. Взял у фирмы Ardas тестовое для выполнения: автор Есть таблица contacts в SQL базе. В ней миллионы строк. Поле Тип id 64 bit integer name varchar Написать REST сервис hello с ресурсом /hello/contacts?nameFilter=val Запрос к contacts должен возвращать контакты из таблицы БД contacts. Параметр nameFilter обязателен. В него передаётся регулярное выражение. В возвращаемых данных не должно быть записей, в которых contacts.name совпадает с регулярным выражением. Массив контактов возвращается в json формате авторcontacts: [ Contact, ... ] Contact { “id”: integer, “name”: string } Пример запросов /hello/contacts?nameFilter=^A.*$ - возвращает контакты, которые НЕ начинаются с A /hello/contacts?nameFilter=^.*[aei].*$ - возвращает контакты, которые НЕ содержат букв a, e, i Замечания и пожелания к реализации Фильтр обязательно применять в java коде, не использовать возможности SQL. В реализации обязательно учитывать огромное предполагаемое количество контактов и то, что легко написать фильтр, который возвращает их все. Учитывать, что сервис должен быть готов одновременно обрабатывать множество запросов. SQL БД можно использовать любую, предпочтительно PostgreSQL. Сервис хотелось бы увидеть на Spring Boot, но не обязательно. Коды ошибок HTTP использовать типичные для REST сервисов. Сборка maven Наличие тестов К результату приложить объяснение, как развернуть БД, запустить приложение. Было бы здорово, если бы окружение поднималось с помощью Vagrant, виртуализация VirtualBox. Собственно я выполнил задачу так https://github.com/Tsyklop/MillionContacts Но человек который смотрел высказал некие недочеты: авторТребует доработки: 1. Использование String.matches для каждого контакта - неэффективно. // Я переделал на Pattern/Matcher 2. Вычитывать все записи из базы на каждый запрос от каждого пользователя неэффективно 3. Захардкодженый pageSize // В условиях задания об этом ничего не говориться 4. Поиск в базе из миллионна записей занимает 5 минут 5. Отсутствуют тесты. // Тесты более менее написал. Хоть что-то. Ибо сути их все равно понять не могу И что именно тестить тоже. Тут есть опытные люди. подскажите что можно было сделать иначе? спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 16:50 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
автор4. Поиск в базе из миллионна записей занимает 5 минутпо скорости - поиск в mysql с использованием like в таблице из 3 000 000 записей -1.3сек. другие фильтры не применял - потому как смысла в этом нет. это к тому что дают в заданиях - фигня.... авторВычитывать все записи из базы на каждый запрос от каждого пользователя неэффективновычитывать даже для 1 - глупо авторИспользование String.matches для каждого контакта - неэффективно. // Я переделал на Pattern/Matcherдля этого существует инструмент самой субд авторОтсутствуют тесты. // Тесты более менее написал. Хоть что-то. Ибо сути их все равно понять не могу И что именно тестить тоже.+1 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:06 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Мне еще показалось странным возвращать ResponseEntity из Service ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:20 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
вадя, у него в задании написано: авторФильтр обязательно применять в java коде, не использовать возможности SQ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:22 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
метод create должен 201 код возвращать ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:28 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Трюк со страницами, как я понял, вы сделали для того, чтобы данные сразу все в память не выгружались. Но тут есть проблема с производительностью, операция offset/skip не бесплатна и чем дальше от начала датасета, тем хуже. Вам нужно было лучше использовать курсор. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:33 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Hettвадя, у него в задании написано: авторФильтр обязательно применять в java коде, не использовать возможности SQя это видел... моё мнение - это глупо.... даже для задания. оно конечно покажет знания java. но есть подозрение что и в дальнейшем будут на этом настаивать - без sql... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:34 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
да собстна учитывая замечание: авторВычитывать все записи из базы на каждый запрос от каждого пользователя неэффективно не понятно вообще нафига там субд. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:39 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettТрюк со страницами, как я понял, вы сделали для того, чтобы данные сразу все в память не выгружались. Кстати последнюю страниу вы не парсите. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 17:47 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Tsyklop, вот явные косяки ваши: lombok в проект включен, а вы продолжаете писать геттеры и сеттеры зависимости optional=true - они про отключение транзитивных зависимостей при использовании модулей - не про ваш проект в задании параметр nameFilter обязателен, а у вас - нет ORM - это очевидно не про производительность и ваш stream/parallel здесь не в кассу тестов фактически нет я так понял что основная претензия про производительность, но чет какая-то херня со стороны проверяющего: кешировать выхлоп нельзя - здесь пользовательский ввод, поэтому это будет DoS (вообще учитывая что матчинг регулярных выражений это NP задача, то само по себе ТЗ - это DoS) - получается нужно в памяти держать, а объемы не известны (или миллионы - значит меньше лярда?), есть ли уверенность что проблема не в ORM? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 18:01 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловTsyklop, вот явные косяки ваши: lombok в проект включен, а вы продолжаете писать геттеры и сеттеры зависимости optional=true - они про отключение транзитивных зависимостей при использовании модулей - не про ваш проект в задании параметр nameFilter обязателен, а у вас - нет ORM - это очевидно не про производительность и ваш stream/parallel здесь не в кассу тестов фактически нет я так понял что основная претензия про производительность, но чет какая-то херня со стороны проверяющего: кешировать выхлоп нельзя - здесь пользовательский ввод, поэтому это будет DoS (вообще учитывая что матчинг регулярных выражений это NP задача, то само по себе ТЗ - это DoS) - получается нужно в памяти держать, а объемы не известны (или миллионы - значит меньше лярда?), есть ли уверенность что проблема не в ORM? 1. Не настолько большой класс что бы юзать lombok. Не считаю это чем-то важным. Или то за что можно придраться. 2. спорить не буду. Но сомневаюсь что эта опция глобально что-то изменит. 4. ну стримом я обрабатываю результат. Так быстрее если без него. Что-то да быстрее. 5. а зачем над ними заморачиваться? я вообще понять не могу их сути. Тратишь кучу времени на написание этого. На счет тестов как-то не особо переживаю. В большинстве компаниях есть отдел тестеров которые тестят. ну я не понимаю претензию: автор2. Вычитывать все записи из базы на каждый запрос от каждого пользователя неэффективно А как иначе то? я уже к кеширование добавил. А вот я не знаю в чем именно проблема. В ответе сказали что эти пункты не выполнены, а что куда и как хз вообще. Ну просто реально если уже делать что бы клиент получал результат не ждя обработки всех записей то это надо юзать WebFlux (или что-то подобное), но условия об этом не говорят. Просто хочется понять может я тупой или что-то другое... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 18:35 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Tsyklopавтор2. Вычитывать все записи из базы на каждый запрос от каждого пользователя неэффективно это зачем стока памяти тратить? и время. достаточно один раз загрузить в память и с этим "массивом" работать ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 18:54 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Про то что кто-то другой должен за тебя тесты писать, поржал, спасибо. По задаче, КМК, задача на то чтобы пользовательские запросы объединять и за один проход по массиву данных отрабатывать несколько запросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 19:13 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Tsyklopя уже к кеширование добавил. Это вам показалось ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 19:14 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxerПро то что кто-то другой должен за тебя тесты писать, поржал, спасибо. По задаче, КМК, задача на то чтобы пользовательские запросы объединять и за один проход по массиву данных отрабатывать несколько запросов. Чем это особо поможет? Только усложнит прилично код. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 19:40 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopФильтр обязательно применять в java коде, не использовать возможности SQL. В spring data можно передать regex. Я бы так сделал (ибо это требование ТЗ - маразм). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:01 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettfixxerПо задаче, КМК, задача на то чтобы пользовательские запросы объединять и за один проход по массиву данных отрабатывать несколько запросов. Чем это особо поможет? Только усложнит прилично код. Повозиться придется, но ничего сверхъестественного писать не нужно. А выгода зависит от нагрузки, чем больше запросов попадает в окно обработки всех записей, тем эффективнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:05 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxer, За счет чего эффективность появится? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:11 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
с ходу что увидал в контроллере. Код: java 1. 2. 3. 4. 5. 6. 7.
ты можешь дефолтвэлью указать прям в аннотации и сэкономишь три строки кода. 1) далее, по сервису. ты как то странно создаешь инициальные тестовые данные )) это лишнее ) мог бы просто утиль написать или там скуэль скрипт какой. вообще это имхо лишнее в задании. ты еще и дто в конструктор сервиса передаешь (шта?) 2) ты файндолл делаешь с пагинацией по 200 )) а потом из полученной паги тащишь стримом переборку на совпадение. это лишнее от тебя ждали или там джейпиэй типа repository.findByNameLike("whateverString") - это вообще ОДНА строчка на ВЕСЬ МЕТОД вместо твоей требухи, либо же простым жпкл запросом типа "select entity e where e.name like :param" либо вообще простым скл нативным запросом (как Вадя любит). - всё-равно одна строка. 3) нейминг в целом. но это может я придираюсь. я бы сделал стандартную структуру папок контроллер, сервис, репозиторий, домейн. ну или как то так. 3.1) я не думаю что отдавать ентити как есть клиенту это хорошая идея - я бы заюзал маппер и перекатывал бы ее поля на дтоху которую бы и отдавал. но это наверное и не требовалось. в любом случае второй пункт явно указывает что ты скажем так, пока еще не имеешь того опыта который они видимо, ожидают. написание тестов к этому коду ну хз.. юниттестиков можно было бы написать с моканьем всех бинов да интеграционный. но тут на написание тестов уйдет времени больше чем на написание кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:11 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
сорян по первому пункту.. там оказывается дао а не дто. впрочем, я не сторонник подвязывать всё через конструкторы, я бы сделал с аннотацией автоваер но это холиварный топик. так что пофигу. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:14 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Hettfixxer, За счет чего эффективность появится? За счет того, что за один проход по данным отвечаешь на несколько запросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:16 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaT, Ты первое сообщение вообще читал? Фильтр обязательно применять в java коде, не использовать возможности SQL. Пример запросов /hello/contacts?nameFilter=^A.*$ - возвращает контакты, которые НЕ начинаются с A /hello/contacts?nameFilter=^.*[aei].*$ - возвращает контакты, которые НЕ содержат букв a, e, i Какой тут LIKE может быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:19 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxerЗа счет того, что за один проход по данным отвечаешь на несколько запросов. А можно увидеть пример такого решения, пожалуйста? уж очень интересно. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:25 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaT1) далее, по сервису. ты как то странно создаешь инициальные тестовые данные )) это лишнее ) мог бы просто утиль написать или там скуэль скрипт какой. вообще это имхо лишнее в задании. ты еще и дто в конструктор сервиса передаешь (шта?) пример? andreykaT2) ты файндолл делаешь с пагинацией по 200 )) а потом из полученной паги тащишь стримом переборку на совпадение. это лишнее от тебя ждали или там джейпиэй типа repository.findByNameLike("whateverString") - это вообще ОДНА строчка на ВЕСЬ МЕТОД вместо твоей требухи, либо же простым жпкл запросом типа "select entity e where e.name like :param" либо вообще простым скл нативным запросом (как Вадя любит). - всё-равно одна строка. 1. Я использую не Spring Data JPA, а Hibernate. У него нет repository.findByNameLike , тут все писать ручками надо. 2. Вы наверно не читали условия. Фильтровать только в Java, в SQL нельзя. andreykaT3) нейминг в целом. но это может я придираюсь. я бы сделал стандартную структуру папок контроллер, сервис, репозиторий, домейн. ну или как то так. а сейчас разве не так? controller, dao, service, entity. что не так? dao для хибера, для Spring Data JPA пишут repository. andreykaT3.1) я не думаю что отдавать ентити как есть клиенту это хорошая идея - я бы заюзал маппер и перекатывал бы ее поля на дтоху которую бы и отдавал. но это наверное и не требовалось. тут согласен, не учел. andreykaTв любом случае второй пункт явно указывает что ты скажем так, пока еще не имеешь того опыта который они видимо, ожидают. написание тестов к этому коду ну хз.. юниттестиков можно было бы написать с моканьем всех бинов да интеграционный. но тут на написание тестов уйдет времени больше чем на написание кода. Какого такого опыта? в чем именно опыта нет? пытаюсь понять это. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:31 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxerHettfixxer, За счет чего эффективность появится? За счет того, что за один проход по данным отвечаешь на несколько запросов. Если данные из СУБД каждый раз не загружать (а их можно закэшировать, например в том же сервисе), то проход по данным не такая уж дорогая операция будет (цикл по коллекции), ради которой стоит городить такие ужасные вещи. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:36 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Реализовать какой-то поиск с временной сложность о(1) тут наверное вообще не реально. Так что основное время будет тратиться на матчинг регуляркой. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:37 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
А можно увидеть саму вакансию? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:40 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettЕсли данные из СУБД каждый раз не загружать (а их можно закэшировать, например в том же сервисе), то проход по данным не такая уж дорогая операция будет (цикл по коллекции), ради которой стоит городить такие ужасные вещи. Если в качестве решения можно было бы один раз вычитать данные в память, то SQL не упоминался бы. Человека не способного сделать select name from table можно отсеять до тестового задания. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:45 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopandreykaT1) далее, по сервису. ты как то странно создаешь инициальные тестовые данные )) это лишнее ) мог бы просто утиль написать или там скуэль скрипт какой. вообще это имхо лишнее в задании. ты еще и дто в конструктор сервиса передаешь (шта?) пример? andreykaT2) ты файндолл делаешь с пагинацией по 200 )) а потом из полученной паги тащишь стримом переборку на совпадение. это лишнее от тебя ждали или там джейпиэй типа repository.findByNameLike("whateverString") - это вообще ОДНА строчка на ВЕСЬ МЕТОД вместо твоей требухи, либо же простым жпкл запросом типа "select entity e where e.name like :param" либо вообще простым скл нативным запросом (как Вадя любит). - всё-равно одна строка. 1. Я использую не Spring Data JPA, а Hibernate. У него нет repository.findByNameLike , тут все писать ручками надо. 2. Вы наверно не читали условия. Фильтровать только в Java, в SQL нельзя. andreykaT3) нейминг в целом. но это может я придираюсь. я бы сделал стандартную структуру папок контроллер, сервис, репозиторий, домейн. ну или как то так. а сейчас разве не так? controller, dao, service, entity. что не так? dao для хибера, для Spring Data JPA пишут repository. andreykaT3.1) я не думаю что отдавать ентити как есть клиенту это хорошая идея - я бы заюзал маппер и перекатывал бы ее поля на дтоху которую бы и отдавал. но это наверное и не требовалось. тут согласен, не учел. andreykaTв любом случае второй пункт явно указывает что ты скажем так, пока еще не имеешь того опыта который они видимо, ожидают. написание тестов к этому коду ну хз.. юниттестиков можно было бы написать с моканьем всех бинов да интеграционный. но тут на написание тестов уйдет времени больше чем на написание кода. Какого такого опыта? в чем именно опыта нет? пытаюсь понять это. хибер это такая же надстройка как и спринг дата тебе никто не запрещает пользвать и то и другое.. или запрещает? ты ж в любом случае в спринге сидишь и почему repo.findByNameLike -- это не джава аппроач? )) ни одной скл строки тут я не вижу. раз нет скл - значит не скл. я не знаю точно можно ли репозиторию скармливать регекспы.. народ вроде говорит можно. мне проверить не на чем. если можно то - одна строчка. но если нельзя скормить регексп репозиторию и нельзя юзать натив скл, то вариант один -- стримы перебором и ВСЁ. вот совсем всё. если этот олень оценщик в комменте к твоему коду говорит что это "неэффективно" то пусть скажет че он хочет вообще? ты или перебираешь это (окей можно на потоки разбить и перебирать в некоей условной параллели) -- или делаешь склом. других вариантов НЕТ. от слова совсем. а да.. можно еще написать на спарке приложеньку и выгружать датасет в спарк и пусть уже он там свои РДДхи раскидывает по нодам и перебирает. но для такой задачи это экзотика. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:53 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopandreykaT1) далее, по сервису. ты как то странно создаешь инициальные тестовые данные )) это лишнее ) мог бы просто утиль написать или там скуэль скрипт какой. вообще это имхо лишнее в задании. ты еще и дто в конструктор сервиса передаешь (шта?) пример? пример загрузки данных? ну например, написать еще один мейн метод в отдельном пакадже или модуле, который запускается из консоли строкой и "импортирует/генерирует" данные. ну... это я бы так сделал. или просто скл скрипт генерирующий тоже некий датасет. делать отдельный ендпоинт который надо дернуть чтоб он запустил какой-то процесс - имхо так себе ) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:55 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettРеализовать какой-то поиск с временной сложность о(1) тут наверное вообще не реально. Так что основное время будет тратиться на матчинг регуляркой. лол. тут поиск будет если несортированные данные - N, если сортированные то логарифм, о да, я кэп. чудес не бывает. и да... оценщик не умеет писать -тся -ться. за такое надо из рогатки убивать еще в детском саду. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 20:57 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
...ща посмотрел оказывается можно запилить критерий с регуляркой правда, по факту оно вызывает скл функцию. типа такого. Код: java 1.
в кавычках название процедуры. это скл? (ну в смысле в понимании тестирующего). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 21:02 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
авторТребует доработки: 1. Использование String.matches для каждого контакта - неэффективно. // Я переделал на Pattern/Matcher 2. Вычитывать все записи из базы на каждый запрос от каждого пользователя неэффективно 3. Захардкодженый pageSize // В условиях задания об этом ничего не говориться 4. Поиск в базе из миллионна записей занимает 5 минут 5. Отсутствуют тесты. // Тесты более менее написал. Хоть что-то. Ибо сути их все равно понять не могу И что именно тестить тоже. 1. интересно, обосновать сможет в устной беседе? 2. почему? а если у нас от запроса к запросу данные могут меняться? или не могут? 3. художник так видит. ну и чо? впрочем, я бы вообще пейджсайз не мутил. хотят джаву - на тебе стрим без скип тейков и наслаждайся 4. лолшто? а че он хотел то? 5. ну тут да.. тесты тестируют что 500 не приходит можно было бы добавить там разные поиски паттерны и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 21:09 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
автор1. интересно, обосновать сможет в устной беседе? Регулярка будет поятоянно компилироваться, или нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 21:26 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettА можно увидеть саму вакансию? Нашел ее тут https://rabota.ua/company0/vacancy7366784?utm_source=emailing&utm_medium=email не знаю насколько она актуальна. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 21:27 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettРегулярка будет поятоянно компилироваться, или нет? Я тоже задался этим вопросом. И оказалось что метод String.matches каждый раз делает такое Pattern.matches(regex, this); . То тут да, проще один создать и все. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 21:29 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Hettавтор1. интересно, обосновать сможет в устной беседе? Регулярка будет поятоянно компилироваться, или нет? да. ну там паттерн просто тоже надо правильно написать чтоб он регулярно не компилился )) у тса все верно. )) так просто вопрос на уверенность знаний. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 21:31 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Да не парься, все нормально написано. Напиши то не знаю что. Решает задачу? Решает, пнх. Правильно формулируйте условие. Единственное что смущает это readme, ну какое Open project in Intellij IDEA and run it Go to /hello/contacts/create for filling contacts table Ну а если у меня нет идеи? Сказали же что мавен(да я знаю что pom.xm естьl) ну так и пиши инструкцию также. Про TDD - это в принципе хорошая штука и не стоит ее недооценивать, но ни в коем случае нельзя ловить tdd головного мозга, в данном случае интеграционного теста вполне достаточно. Ну пусть себе ищут брата по разуму, удачи в их недолгом бизнесе ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 23:06 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
А теперь, дети, прослушайте список слов, которые нельзя говорить: авторЕсть таблица contacts в SQL базе. В ней миллионы строк. Запрос к contacts должен возвращать контакты из таблицы БД contacts. Параметр nameFilter обязателен. В него передаётся регулярное выражение. В возвращаемых данных не должно быть записей, в которых contacts.name совпадает с регулярным выражением. Фильтр обязательно применять в java коде, не использовать возможности SQL. В реализации обязательно учитывать огромное предполагаемое количество контактов и то, что легко написать фильтр, который возвращает их все. ;-) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2018, 23:30 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
ну да по стилистике тз писал человек какой-то не технический, с навыками литератора.. "огромное предполагаемое количество контактов" )) што? ) фильтр обязательно применять в java коде не использовать возможности SQL -- снова што?? ну точно литератор. у меня на прошлом проекте девочки-писилявки и то лучше тз излагали на бумаге. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 01:09 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTлол. тут поиск будет если несортированные данные - N, если сортированные то логарифм, о да, я кэп. чудес не бывает. Поиск типа "строка не содержит букву 'а'" - причем тут сортировка? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 05:42 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaT, Это не ТЗ, это тестовое задание, оно по определению должно быть позаковыристее или нечетко сформулированное, потому что заодно проверяет, как вы работаете с информацией и какие дополнительные вопросы задаете. Задание, кстати, неплохое, отлично отсеивает тех, кто за пределы букваря по спрингу, хиберу и SQL никогда не выходят. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 09:46 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
забыл никДа не парься, все нормально написано. Напиши то не знаю что. Решает задачу? Решает, пнх. - то, что у него данные с последней "страницы" теряются это нормально? - слой репозиториев возвращает http response - тоже? - create возвращает код 200 только этого достаточно, чтобы отсеять кандидата ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:00 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
авторслой репозиториев сервисный т.е. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:01 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Hett- create возвращает код 200на create контракта в ТЗ нет, поэтому 200 там вполне себе, более того, там никаким PUT и не пахнет, поэтому про 201 не может быть и речи. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:11 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Hett, а чего теряются то? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:12 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopHett, а чего теряются то? Код: java 1. 2.
5 разделить на 2 сколько будет? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:16 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловTsyklopHett, а чего теряются то? Код: java 1. 2.
5 разделить на 2 сколько будет? еще и переполнение i может случиться (не в этом случае конечно, но вообще выглядит не очень) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:36 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxerandreykaT, Это не ТЗ, это тестовое задание, оно по определению должно быть позаковыристее или нечетко сформулированное, потому что заодно проверяет, как вы работаете с информацией и какие дополнительные вопросы задаете. Задание, кстати, неплохое, отлично отсеивает тех, кто за пределы букваря по спрингу, хиберу и SQL никогда не выходят. это формальные требования к законченному продукту. они должны быть сформулированы ясно, однозначно и непротиворечиво. это как минимум, указывает на качество тех кто поставляет требования. тут мало того, что требования написаны каким-то потомком пушкина, так еще и с ошибками. и да, у меня было бы некоторое количество вопросов по такому "заданию". а если потом такой гражданин тебе задания будет выставлять каждый день то может и не стоило туда бы идти? )) чел просит искать стримами миллион записей а потом говорит ой чот медленно работает... эээ, слыш, ты чо больной чтоле? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:36 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловandreykaTлол. тут поиск будет если несортированные данные - N, если сортированные то логарифм, о да, я кэп. чудес не бывает. Поиск типа "строка не содержит букву 'а'" - причем тут сортировка? а какая разница бинарному поиску между искать есть ли строка или искать нет ли строки? это ж одно и то же ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:40 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловHett- create возвращает код 200на create контракта в ТЗ нет, поэтому 200 там вполне себе, более того, там никаким PUT и не пахнет, поэтому про 201 не может быть и речи. А задание и ставится с недоговорками, чтобы человек не пошел и не нагуглил (например там не слова про регулярки, а они есть). В задании сказано вообще про стандартные коды ошибок http (не понятно только как это с заданием связано), могу предположить что это опечатка, и не "коды ошибок" а "коды ответов" имелось в виду. Если разработчик работал с rest сервисами, то уже "по привычке" сделает все с более подходящими под случай кодами ответа и даже не задумается. При неверном запросе же будет ответ 404, а не 200, почему тогда при создании 200, а не 201? Я даже не говорю про restful, где для создания и получения сущности должен быть один эндпоинт. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:42 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловHett- create возвращает код 200на create контракта в ТЗ нет, поэтому 200 там вполне себе, более того, там никаким PUT и не пахнет, поэтому про 201 не может быть и речи. не хотелось бы придираться, но создание - это POST все таки, PUT - изменение. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:46 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
HettАндрей Панфиловпропущено... на create контракта в ТЗ нет, поэтому 200 там вполне себе, более того, там никаким PUT и не пахнет, поэтому про 201 не может быть и речи. А задание и ставится с недоговорками, чтобы человек не пошел и не нагуглил (например там не слова про регулярки, а они есть). В задании сказано вообще про стандартные коды ошибок http (не понятно только как это с заданием связано), могу предположить что это опечатка, и не "коды ошибок" а "коды ответов" имелось в виду. Если разработчик работал с rest сервисами, то уже "по привычке" сделает все с более подходящими под случай кодами ответа и даже не задумается. При неверном запросе же будет ответ 404, а не 200, почему тогда при создании 200, а не 201? Я даже не говорю про restful, где для создания и получения сущности должен быть один эндпоинт. ну 404 это не при неправильном запросе.. запрос как раз таки правильный.. а при запросе сущности которой нет у сервера )) при этом вебдевелоперы тебя за такой ответ скорее всего из рогатки будут расстреливать пока ты спишь. кстати, еще одна придирка - у него в ендпоинтах не указано каким методом. т.е. вместо гета можно делетом с параметрнами получить ответ список клиентов )) да и структура не очень. имхо, хелло там лишнее. надо только один явный гет\контактс на весь контроллер и всё. если конечно мы хоть как то хотим держать архитектуру реста. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:51 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTда и структура не очень. имхо, хелло там лишнее. надо только один явный гет\контактс на весь контроллер и всё. если конечно мы хоть как то хотим держать архитектуру реста. так сказано в условии. я хз зачем так сделали. Я бы сделал иначе ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:55 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTа какая разница бинарному поиску между искать есть ли строка или искать нет ли строки? это ж одно и то же Вы что там курите вообще? Отсортируйте список {"a", "b", "c", } по "во фразе нет буквы 'x'" и сравните сколько будет каждый раз стоить эта сортировка с обычным проходом по списку и выдачей результата ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 10:56 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
и? какие проблемы. у нас последняя буква это с, х идет после с. список то сортированный -- всё вин. икса нету. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:00 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловandreykaTа какая разница бинарному поиску между искать есть ли строка или искать нет ли строки? это ж одно и то же Вы что там курите вообще? Отсортируйте список {"a", "b", "c", } по "во фразе нет буквы 'x'" и сравните сколько будет каждый раз стоить эта сортировка с обычным проходом по списку и выдачей результата я изначально сказал поиск либо по сортированному списку либо нет. сортировать перед поиском каждый раз не обязательно. можно например, сразу хранить набор данных сортированными. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:02 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTя изначально сказал поиск либо по сортированному списку либо нет. сортировать перед поиском каждый раз не обязательно. можно например, сразу хранить набор данных сортированными. первый запрос: в названии нет 'x' второй запрос: в названии нет 'a' в каком месте здесь поможет сортировка? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:06 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopandreykaTда и структура не очень. имхо, хелло там лишнее. надо только один явный гет\контактс на весь контроллер и всё. если конечно мы хоть как то хотим держать архитектуру реста. так сказано в условии. я хз зачем так сделали. Я бы сделал иначе неее...тут понятно что тз составлял урюк. помимо этого, мне кажется у тебя методом делет можно получить список контактов )) это не очень правильно с точки зрения рест. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:07 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловandreykaTя изначально сказал поиск либо по сортированному списку либо нет. сортировать перед поиском каждый раз не обязательно. можно например, сразу хранить набор данных сортированными. первый запрос: в названии нет 'x' второй запрос: в названии нет 'a' в каком месте здесь поможет сортировка? во всех. ну слушайте. погуглите наконец, в ютубе например, ключевую фразу binary search там в форме мультиков описывается как работает этот элементарный алгоритм. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:08 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTво всех. ну слушайте. погуглите наконец, в ютубе например, ключевую фразу binary search там в форме мультиков описывается как работает этот элементарный алгоритм.Ну так давайте ссылку, где бинарный поиск будет вообще применим к подобного рода задачам ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:13 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
а.... Андрей.. я ваш ход мыслей понял )) вы хотите сравнивать каждую строку влоб. ну да.. вы правы, так тоже можно, но ваш алгоритм поиска, если перебирать каждую строку, будет эн. но в случае сортированного списка вам не обязательно перебирать весь список чтоб сформировать выдачу ))) и тогда сложность будет ниже. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:13 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTнеее...тут понятно что тз составлял урюк. помимо этого, мне кажется у тебя методом делет можно получить список контактов )) это не очень правильно с точки зрения рест. Не хотел заморачиваться еще пилить страницу для AJAX и т.д. (Хотя можно было сделать через Postman к примеру). Так то согласен что не очень. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:17 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTа.... Андрей.. я ваш ход мыслей понял )) вы хотите сравнивать каждую строку влоб. ну да.. вы правы, так тоже можно, но ваш алгоритм поиска, если перебирать каждую строку, будет эн. но в случае сортированного списка вам не обязательно перебирать весь список чтоб сформировать выдачу ))) и тогда сложность будет ниже.Не будет ниже, бинарный поиск основан на том, что если мы в сортированном списке взяли значение в середине, и оно нам не подходит, то значит значения слева (или справа) тоже нам не подходят. Вот вы отсортировали список по "значения не содержат букву 'а'", как этот список нам поможет в дальнейшем чтобы найти значения не содержащие букву 'x'? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:24 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловandreykaTво всех. ну слушайте. погуглите наконец, в ютубе например, ключевую фразу binary search там в форме мультиков описывается как работает этот элементарный алгоритм.Ну так давайте ссылку, где бинарный поиск будет вообще применим к подобного рода задачам давайте так. у нас есть сортированный список: 1 а 2 аа 3 аааа 4 аааааа 5 аааааааааа 6 ааааааааааааааааааа 7 аааааааааааааааааааааааааа 8 ааааааааааааааааааааааааааааааааб 9 ааб 10 абб 11 аввв 12 авввв 13 бвв мы ищем строки где есть (или нет) буквы "б" вы тыкаете в индекс 7 -- как вы думаете, по индексу 6 (шесть) может находиться строка где будет буква "б"? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:29 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
andreykaTвы тыкаете в индекс 7 -- как вы думаете, по индексу 6 (шесть) может находиться строка где будет буква "б"?У вас магия данных, добавьте между 'а' и 'б' еще букв и увидите что сортировка здесь никак не помогает, ну или возьмите к примеру проверку на четность вхождений подряд: (aa)+ и скажите как здесь поможет сортировка. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:47 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Андрей ПанфиловandreykaTвы тыкаете в индекс 7 -- как вы думаете, по индексу 6 (шесть) может находиться строка где будет буква "б"?У вас магия данных, добавьте между 'а' и 'б' еще букв и увидите что сортировка здесь никак не помогает, ну или возьмите к примеру проверку на четность вхождений подряд: (aa)+ и скажите как здесь поможет сортировка. да но тогда порядок поменяется. впрочем, я с вами пожалуй, соглашусь, что в данном случае поиск по маскам будет в любом случае тяжелым процессом с замороченной логикой и один фиг сложностью эн в ворст кейсе. проще уж перебором и баста. тем более для тса этого и не требовалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 12:54 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
смотрю народ шибко на "не использовать sql" возбудился. Это ж тестовое задание, любой (или почти любой) пункт в нем - желание посмотреть на ход мыслей кандидата. Т.е. в данном случае составитель (вероятно) хотел увидеть использование jdbc fetch size (кстати в условиях нигде нет ORM или я слепой :) ) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 14:52 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
если заказчик что то хочет увидеть то он явно об этом должен сказать. типа хочу это это и это. не хочу то то и то. а тут же я помню шел в какую то контору там вообще ТЗ было из одной ска строки! одной! "напишите двухуровневый конфигурируемый кэш". книжное издание "вилей" емнип а дальше "мы типа больше не пишем т.к. хотим посмотреть ход вашей мысли". когда я им написал тз мне ответ был весьма краток - "нам не нравится" что почему зачем где как? козлы. тут хоть оценщик что-то да выдавил из себя. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 15:06 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
chpashaсмотрю народ шибко на "не использовать sql" возбудился. Это ж тестовое задание, любой (или почти любой) пункт в нем - желание посмотреть на ход мыслей кандидата. Т.е. в данном случае составитель (вероятно) хотел увидеть использование jdbc fetch size (кстати в условиях нигде нет ORM или я слепой :) ) ну как бы. Смысл юзать Spring Boot без ORM? зачем тогда нужен бут не понятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 15:18 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
chpasha, давайте тогда уже юзать простые сервлеты и JDBC и будет прекрасно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 15:19 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Tsyklop, Комментарнии к коммитам странные init/u/update. С уважением, Валентин ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 15:26 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Valentin KolesnikovTsyklop, Комментарнии к коммитам странные init/u/update. С уважением, Валентин это для себя. Я бы их не делал ибо свой проект. Но GitHyb Desktop требует. Пишу что нибудь... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 15:44 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Tsyklopну как бы. Смысл юзать Spring Boot без ORM? смысл есть бананы без мороженного? spring boot это целая трахомудина, состоящая, если что, из разных модулей. как ты думаешь, зачем ее разделяли на модули? Tsyklopдавайте тогда уже юзать простые сервлеты и JDBC и будет прекрасно мог и простые сервлеты юзать, заказчик не зря написал про boot "опционально" - возможно его не сильно интересует твое владение конкретным инструментом . смысл не в том, что ты юзаешь, а как ты это юзаешь. Если ты взял ОРМ и завернул в него миллион объектов из БД и затащил в память - ну извини. Возможно заказчик именно на это и хотел посмотреть, как ты себя поведешь - он же не зря уточнил что записей много. Tsyklopэто для себя. Я бы их не делал ибо свой проект возможно он и на это хотел посмотреть. Внятные комментарии к коммитам тоже не каждый в состоянии написать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 16:35 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Чел хочет перебрать миллион строк в памяти. Какие ещё варианты могут быть? Спарк чтоле подключать? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 17:00 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
chpashaТ.е. в данном случае составитель (вероятно) хотел увидеть использование jdbc fetch size (кстати в условиях нигде нет ORM или я слепой :) )Обитатели этого форума отвергают связь между размером фетча, "шириной" данных и производительностью, а вообще у ТС mysql - там, если не изменяет память, в поведении по-умолчанию оно сразу все данные в память засасывает без всяких фетчей ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 17:30 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopValentin KolesnikovTsyklop, Комментарнии к коммитам странные init/u/update. С уважением, Валентин это для себя. Я бы их не делал ибо свой проект. Но GitHyb Desktop требует. Пишу что нибудь... Пункт #4 в замечаниях настолько объемный что его надо обсуждать отдельным топиком. И если там есть mysql и textsearch то их надо бенчмаркать и подбирать параметры персонально под задачу. Универсального решения скорее всего не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 18:48 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
maytonПункт #4 в замечаниях настолько объемный что его надо обсуждать отдельным топиком. Отличный кандидат на пятничный топик. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 19:08 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxermaytonПункт #4 в замечаниях настолько объемный что его надо обсуждать отдельным топиком. Отличный кандидат на пятничный топик. а что в нем такого? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 19:24 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
fixxermaytonПункт #4 в замечаниях настолько объемный что его надо обсуждать отдельным топиком. Отличный кандидат на пятничный топик. Я не против. Но пускай автор сам инициативу проявит. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 19:48 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
maytonЯ не против. Но пускай автор сам инициативу проявит. Инициативу в чем? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 21:32 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopИнициативу в чем?создать топик по 4 пункту. сократить твои 5 минут ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 05:51 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
вадяTsyklopИнициативу в чем?создать топик по 4 пункту. сократить твои 5 минут Зачем ты такой дерзкий? Тебе помогают бесплатно. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 07:59 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
вадясоздать топик по 4 пункту. сократить твои 5 минут Ну у меня один вариант: юзать WebFlux подобные штуки. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 09:36 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
maytonвадяпропущено... создать топик по 4 пункту. сократить твои 5 минут Зачем ты такой дерзкий? Тебе помогают бесплатно. Сорян Вадя.Не узнал тебя в маскировке. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 09:43 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
TsyklopНу у меня один вариант: юзать WebFlux подобные штуки.я вообще поддержу тему по исследованию поиска у меня есть вариант на mysql, когда вся таблица помещается в памяти (кэш) и хочется сравнить с чем-то. насколько можно улучшить.. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 10:36 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
maytonИ если там есть mysql и textsearch то их надо бенчмаркать и подбирать параметры персонально под задачу. Универсального решения скорее всего не будет. Вопрос в том, что в том виде, как сформулирована задача там не нужен ни SQL, ни СУБД вообще. Поэтому ихнее "предпочтительнее PostgreSQL" - это на самом деле "хотим трахаться в гамаке стоя". Аргумент, что задача учебная и хотят посмотреть как работают с СУБД не катит, т.к. смотреть там не на что. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 11:46 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Сразу стартовать с elastic search. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 12:18 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
mayton, и даже будет соответствовать требованию pattern match на Java ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 12:30 |
|
Правильность выполнения задания. что не так?
|
|||
---|---|---|---|
#18+
Создатели тестовых заданий - это очень подлые люди. Я убежден что эта задача не имеет эталонного решения. Фактически соискатель бесплатно делает investigation. Доказывает что оно работает. А потенциальный работодатель под любым предлогом может отклонить решение но свое никогда не даст. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 12:41 |
|
|
start [/forum/topic.php?all=1&fid=59&tid=2121726]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
96ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
132ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 286ms |
0 / 0 |