{"id":21534778,"url":"https://github.com/zbitname/hola_nodejs_challenge","last_synced_at":"2025-03-17T20:15:33.574Z","repository":{"id":90177837,"uuid":"49329516","full_name":"zbitname/hola_nodejs_challenge","owner":"zbitname","description":null,"archived":false,"fork":false,"pushed_at":"2016-01-11T20:34:34.000Z","size":10392,"stargazers_count":1,"open_issues_count":2,"forks_count":2,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-01-24T07:11:55.455Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zbitname.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-01-09T15:29:09.000Z","updated_at":"2019-02-23T07:02:03.000Z","dependencies_parsed_at":"2023-03-17T16:30:40.337Z","dependency_job_id":null,"html_url":"https://github.com/zbitname/hola_nodejs_challenge","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zbitname%2Fhola_nodejs_challenge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zbitname%2Fhola_nodejs_challenge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zbitname%2Fhola_nodejs_challenge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zbitname%2Fhola_nodejs_challenge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zbitname","download_url":"https://codeload.github.com/zbitname/hola_nodejs_challenge/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244102855,"owners_count":20398386,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-24T03:12:41.171Z","updated_at":"2025-03-17T20:15:33.553Z","avatar_url":"https://github.com/zbitname.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Альтернативный результат конкурса от Hola\n\nЧат где мы планируем обсуждать несовершенство бенчмарка сделанного организатором конкурса https://gitter.im/zbitname/hola_nodejs_challenge_rus\n\n### Тест на корректность\nУ меня есть свои тесты на корректность. Часть из этих тестов были построены на том, что выдавала эталонная реализация, предоставленная организатором конкурса.\nfilter.spec.js - тестовые данные, которые берутся из файлов test1.json и test2.json проверяются по эквивалентному регулярному выражению.\nЯ запустил свои тесты (логи результатов в директории results)\n5 решений упали из-за нехватки ОЗУ, 3 из них в результатах организатора конкурса помечены как не прошедшие тест на корректность, мы же будем считать, что другие 2 имеют корректную реализацию.\nЕщё 19 решений не прошли мой тест.\nПотом я убрал из списка тех, кто не прошёл тест организатора конкурса.\nИ получилось 96 корректных решений (./results/ok_final.log).\n\n### Benchmark\nПоднял виртуалку на DigitalOcaen (1 GB Memory / 30 GB Disk / NYC3 / Ubuntu 14.04 x64 vmlinuz-3.13.0-71-generic), на ней и буду тестировать производительность.\n\nПодготовка сервера\n```\n$ curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -\n$ sudo apt-get install -y nodejs\n$ sudo apt-get install -y build-essential\n$ sudo npm i -g n\n$ sudo n 5.0.0\n$ node -v\nv5.0.0\n$ sudo apt-get install unzip\n$ wget http://54810.selcdn.com/public/hola.git.zip\n$ unzip hola.git.zip\n```\n\nТестирование производительности\n```\ncd hola.git\nsudo chmod +x run.bash\nsudo chmod +x runall.bash\n./runall.bash \u003e benchmark.log\n```\nДля каждого решения тест запускается 50 раз, вычисляется самый быстрый вариант и выводится на экран.\n\nРезультаты бенчмарка: results/benchmark.log\n\n### Итог\n\\# | time, seconds | Name | Comment\n--- | --- | --- | ---\n1 | 0,556551560 | Roman Pletnev |\n2 | 0,625574511 | Evgeny Zeyler |\n0 | 0,641852671 | Ecma Scripter | Cheater\n3 | 0,646645631 | Denis Bezrukov |\n4 | 0,686985655 | Yuri Kilochek |\n5 | 0,707077866 | Andrew Kashta |\n6 | 0,708169293 | Denis Kreshikhin |\n7 | 0,708502823 | Sergey Golub |\n8 | 0,710200874 | Black Knight |\n9 | 0,752503483 | Vitalii Petrychuk |\n10 | 0,752972259 | Max Brodin |\n11 | 0,756229334 | Alex Kheben |\n12 | 1,000482641 | Kobi |\n13 | 1,000867926 | Ionicman |\n14 | 1,001093758 | Vitaliy (vint) |\n15 | 1,001495467 | Sergey Mikhailovich |\n16 | 1,002432775 | Alexander Rusakov |\n17 | 1,002454202 | Nikolay Kuchumov |\n18 | 1,002692827 | R5t4nah6 |\n19 | 1,002770685 | Sergey Ivanov |\n20 | 1,004096219 | Andrey Pogoreltsev |\n21 | 1,004511987 | Alexey Kolpakov |\n22 | 1,004703591 | Vladimir Privalov |\n23 | 1,004940042 | Petr Shalkov |\n24 | 1,005723473 | Pavel Gruba |\n25 | 1,006257555 | yuri_c |\n26 | 1,006786541 | Andrey Kostakov |\n27 | 1,006977510 | Denis Kepeshchuk |\n28 | 1,011252032 | Ilya Makarov |\n29 | 1,013823362 | Evgenii Kazmiruk |\n30 | 1,016392779 | Maxim Khoruzhko |\n31 | 1,019416833 | Denys Skychko |\n32 | 1,026773845 | KingOfNothing |\n33 | 1,027153194 | Nikolay Karev |\n34 | 1,048490652 | Dmitry Rybin |\n35 | 1,055868290 | Andy5938 |\n36 | 1,088022426 | Maxim Drozdov |\n37 | 1,090929448 | Vasiliy Kostin |\n38 | 1,091832985 | Alexey Larkov |\n39 | 1,095452368 | Sergey Petkun |\n40 | 1,098684611 | Vladimir Barbarosh |\n41 | 1,113191387 | Aydar Mirzagitov |\n42 | 1,117028568 | Oleg Popov |\n43 | 1,133245058 | Stas Vasilyev |\n44 | 1,137272051 | Dmitry Podgorniy |\n45 | 1,163012874 | Alexey Sadovin |\n46 | 1,189087158 | Pavel Koltyshev |\n47 | 1,189241611 | Pavel Orlov |\n48 | 1,193201461 | Katerina Pavlenko |\n49 | 1,206007533 | Ruslan Koptev |\n50 | 1,233195318 | Alexander Ilyin |\n51 | 1,241094047 | Nadav Ivgi |\n52 | 1,291156510 | Igor Potapov |\n53 | 1,312492346 | Vladislav Nezhutin |\n54 | 1,338233458 | Ilya Mochalov |\n55 | 1,347951368 | Nickolay Savchenko |\n56 | 1,365919395 | Sergey Savelyev |\n57 | 1,375302428 | Vitali Falileev |\n58 | 1,380237899 | Alina Lozhkina |\n59 | 1,384497174 | Anton Podkuyko |\n60 | 1,397942819 | Daniil Onoshko |\n61 | 1,411481481 | Yuriy Khabarov |\n62 | 1,419403151 | Danila Sukhanov |\n63 | 1,424879645 | Alexandr |\n64 | 1,443476057 | Siroj Matchanov |\n65 | 1,469563447 | Arkadi Klepatch |\n66 | 1,505109047 | Vitali Koshtoev |\n67 | 1,553294565 | Vitaly Dyatlov |\n68 | 1,601511616 | Denis Protasov |\n69 | 1,728877575 | Serj Karasev |\n70 | 1,730841313 | Andrey Grankin |\n71 | 1,741695762 | Aleksey Sergey |\n72 | 1,965443007 | Georgy Chebanov |\n73 | 1,980881695 | Dmitry Egorov |\n74 | 2,030221749 | Ruslan Minukov |\n75 | 2,433728297 | Jarek Płocki |\n76 | 2,724860487 | Evgeny Lukianchikov |\n77 | 2,750176650 | Zibx |\n78 | 2,788571689 | Alexey Chemichev |\n79 | 2,791845315 | Sergey Lichack |\n80 | 2,818985592 | berrunder |\n81 | 3,008532060 | Alexey Pushnikov |\n82 | 3,254837269 | Slava Shklyaev |\n83 | 3,324868973 | Vyacheslav Bazhinov |\n84 | 3,429730086 | Alex Ku |\n85 | 3,590581308 | Kirill Bykov |\n86 | 3,719542128 | Aleksei Murashin |\n87 | 4,000530608 | Vyacheslav Ryabinin |\n88 | 4,499269336 | Alexander Savchuk |\n89 | 4,607167268 | Vladimir Osipov |\n90 | 6,042714439 | nerv |\n91 | 7,460250761 | Nikolay Shevlyakov |\n92 | 7,643600898 | Dan Revah |\n93 | 10,045456476 | Nikita Isaev |\n94 | 10,116121914 | Igor Vladimirovich |\n95 | 11,156795268 | Ilya Chervonov |","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzbitname%2Fhola_nodejs_challenge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzbitname%2Fhola_nodejs_challenge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzbitname%2Fhola_nodejs_challenge/lists"}