Низкоуровневая реализация префиксного дерева trie на PHP

Предисловие

Описанная здесь реализация trie на PHP делает пока слишком жирный словарь, который соответственно довольно долго загружается в память, что нивелирует довольно неплохую скорость её работы. Скорость поиска составляет ~80 тыс. слов в секунду. Словарь сделан из списка лемм словаря opencorpora.org и включает в себя 389844 слова. В несжатом виде словарь весит ~150мб, а сжатый gzip ~6мб. Однако довольно неплохие результаты быстродействия доказывают, что на чистом PHP можно сделать вполне работоспособное префиксное дерево trie.
Читать дальше →
Низкоуровневая реализация префиксного дерева trie на PHP
Source: geektimes

Пост №3561225

Автор: ddych

по мотивам http://joyreactor.cc/post/3559561Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»http://marvel.reactor.cc/post/3561225″ }, «headline»: «по мотивам http://joyreactor. / Black Panther (Черная пантера, Т'Чалла) :: Deadpool (Дэдпул, Уэйд Уилсон) :: Wolverine (Росомаха, Логан, Джеймс Хоулетт) :: Marvel (Вселенная Марвел) :: фэндомы :: котэ (прикольные картинки с кошками)», «image»: { «@type»: «ImageObject», «url»: «http://img1.joyreactor.cc/pics/post/full/%D0%BA%D0%BE%D1%82%D1%8D-Deadpool-Marvel-%D1%84%D1%8D%D0%BD%D0%B4%D0%BE%D0%BC%D1%8B-4569745.jpeg», «height»: 700, «width»: 700 }, «datePublished»: «2018-07-04T18:28:40+03:00», «dateModified»: «2018-07-04T18:28:40+03:00», «author»: { «@type»: «Person», «name»: «ddych» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «cc/post/3559561» }
Комментировать 
Пост №3561225
Source: Joyreactor

Пост №3561220

Автор: Robotron3000

Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»/post/3561220″ }, «headline»: «милота :: кролики :: фото :: живность», «image»: { «@type»: «ImageObject», «url»: «http://img1.joyreactor.cc/pics/post/full/%D0%BA%D1%80%D0%BE%D0%BB%D0%B8%D0%BA%D0%B8-%D1%84%D0%BE%D1%82%D0%BE-%D0%BC%D0%B8%D0%BB%D0%BE%D1%82%D0%B0-%D0%B6%D0%B8%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D1%8C-4569739.jpeg», «height»: 685, «width»: 1024 }, «datePublished»: «2018-07-04T18:24:58+03:00», «dateModified»: «2018-07-04T18:24:58+03:00», «author»: { «@type»: «Person», «name»: «Robotron3000» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №3561220
Source: Joyreactor

Пост №3561210

Автор: IvanDolgunA

Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»/post/3561210″ }, «headline»: «Cat's song / песня :: coub :: девушка :: котэ (прикольные картинки с кошками)», «image»: { «@type»: «ImageObject», «url»: «http://img1.joyreactor.cc/pics/post/full/coub-%D0%BA%D0%BE%D1%82%D1%8D-%D0%B4%D0%B5%D0%B2%D1%83%D1%88%D0%BA%D0%B0-%D0%BF%D0%B5%D1%81%D0%BD%D1%8F-4569729.jpeg», «height»: 1280, «width»: 1002 }, «datePublished»: «2018-07-04T18:16:28+03:00», «dateModified»: «2018-07-04T18:16:28+03:00», «author»: { «@type»: «Person», «name»: «IvanDolgunA» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №3561210
Source: Joyreactor

[Перевод] Рефакторинг программы на Go: ускорение в 23 раза

Привет! Меня зовут Марко, я работаю в Badoo в отделе «Платформы». У нас довольно много всего написано на Go, и зачастую это критичные к производительности системы. Именно поэтому сегодня я предлагаю вашему вниманию перевод статьи, которая мне очень понравилась и, я уверен, будет вам очень полезна. Автор пошагово показывает, как он подходил к проблемам производительности и как их решал. В том числе вы познакомитесь с богатым инструментарием, доступным в Go для такой работы. Приятного чтения!

Несколько недель назад я прочитал статью «Хороший код против плохого кода в Go», где автор шаг за шагом демонстрирует рефакторинг реального приложения, решающего реальные бизнес-задачи. Она сфокусирована на превращении «плохого кода» в «хороший код»: более идиоматичный, более понятный, полноценно использующий специфику языка Go. Но автор также заявлял о важности производительности рассматриваемого приложения. Во мне взыграло любопытство: давайте попробуем её ускорить!
Читать дальше →
[Перевод] Рефакторинг программы на Go: ускорение в 23 раза
Source: geektimes

Ulefone S9 Pro — новинка за $100 со сканером отпечатков пальцев и Android 8.1

В рядах недорогих полноэкранных смартфонов пополнение — Ulefone S9 Pro. Он получил 5,5-дюймовый дисплей с соотношением сторон 18:9, двойную основную камеру с разрешением 13 Мп и разблокировку с помощью […]
Ulefone S9 Pro — новинка за 0 со сканером отпечатков пальцев и Android 8.1
Source: 4pda

10 причин [не] использовать k8s

Сегодня мы поговорим про Kubernetes, про грабли, которые можно собрать при его практическом использовании, и про наработки, которые помогли автору и которые должны помочь и вам. Постараемся доказать, что без k8s в современном мире никуда. Противникам k8s также предоставим отличные причины, почему не стоит на него переходить. То есть в рассказе мы будем не только защищать Kubernetes, но и ругать его. Отсюда в названии появилось это [не].

Эта статья основана на докладе Ивана Глушкова на конференции DevOops 2017. Последние два места работы Ивана так или иначе были связаны с Kubernetes: и в Postmates, и в Machine Zone он работал в инфракомандах, и Kubernetes они затрагивают очень плотно. Плюс, Иван ведет подкаст DevZen. Дальнейшее изложение будет вестись от лица Ивана.

Читать дальше →
10 причин [не] использовать k8s
Source: geektimes

Пост №3561160

Автор: Darksoulz

Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»http://anime.reactor.cc/post/3561160″ }, «headline»: «Prinz Eugen (Azur Lane) (Prinz Eugen (Bilan Hangxian)) :: Anime Ero Swim :: Anime Ero (Взрослые Няшки) :: Azur Lane (Bilan Hangxian, 碧蓝航线, アズールレーン) :: rikoma :: Anime (Аниме)», «image»: { «@type»: «ImageObject», «url»: «http://img0.joyreactor.cc/pics/post/full/Prinz-Eugen-%28Azur-Lane%29-Azur-Lane-Anime-Anime-Ero-Swim-4569656.jpeg», «height»: 3400, «width»: 2100 }, «datePublished»: «2018-07-04T17:32:30+03:00», «dateModified»: «2018-07-04T17:32:30+03:00», «author»: { «@type»: «Person», «name»: «Darksoulz» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №3561160
Source: Joyreactor

Как использовать soy, requirejs, backbone js в плагинах для Atlassian Jira

В этой статье разработаем плагин, который будет сохранять настройки плагина в Jira. Мы будем использовать библиотеки soy, requirejs, backbone js для отображения пользовательского интерфейса. Soy, requirejs, backbone js это встроенные в Jira библиотеки.
Читать дальше →
Как использовать soy, requirejs, backbone js в плагинах для Atlassian Jira
Source: geektimes

Устарел ли твой смартфон в 2018-м? Чем «хвастаются» новинки этого года

Авторитетный портал GSMArena подвёл итоги первой половины 2018 года на рынке смартфонов. В статистике учли 140 самых популярных моделей — этого оказалось достаточно, чтобы составить представление […]
Устарел ли твой смартфон в 2018-м? Чем «хвастаются» новинки этого года
Source: 4pda